diff --git a/include/transport/networkplugin.h b/include/transport/networkplugin.h index bba9c013..9a0dfb9b 100644 --- a/include/transport/networkplugin.h +++ b/include/transport/networkplugin.h @@ -211,6 +211,8 @@ class NetworkPlugin { virtual void handleFTPauseRequest(unsigned long ftID) {} virtual void handleFTContinueRequest(unsigned long ftID) {} + virtual void handleMemoryUsage(double &res, double &shared) {res = 0; shared = 0;} + virtual void handleExitRequest() { exit(1); } void handleDataRead(std::string &data); virtual void sendData(const std::string &string) {} diff --git a/plugin/cpp/networkplugin.cpp b/plugin/cpp/networkplugin.cpp index df4a6a38..c17adb7f 100644 --- a/plugin/cpp/networkplugin.cpp +++ b/plugin/cpp/networkplugin.cpp @@ -587,13 +587,18 @@ void NetworkPlugin::sendMemoryUsage() { pbnetwork::Stats stats; stats.set_init_res(m_init_res); - double res; - double shared; + double res = 0; + double shared = 0; #ifndef WIN32 process_mem_usage(shared, res); #endif - stats.set_res(res); - stats.set_shared(shared); + + double e_res; + double e_shared; + handleMemoryUsage(e_res, e_shared); + + stats.set_res(res + e_res); + stats.set_shared(shared + e_shared); std::string message; stats.SerializeToString(&message);