From e13b1f967395bd2889c3d9b4116f0c0e3a8f2e00 Mon Sep 17 00:00:00 2001 From: Henning Baldersheim Date: Fri, 28 Sep 2018 12:29:02 +0200 Subject: Use std::unique_ptr --- slobrok/src/vespa/slobrok/server/rpc_server_manager.cpp | 9 +++------ slobrok/src/vespa/slobrok/server/rpc_server_manager.h | 3 ++- 2 files changed, 5 insertions(+), 7 deletions(-) (limited to 'slobrok') diff --git a/slobrok/src/vespa/slobrok/server/rpc_server_manager.cpp b/slobrok/src/vespa/slobrok/server/rpc_server_manager.cpp index ba7d94e3885..6c337d54f03 100644 --- a/slobrok/src/vespa/slobrok/server/rpc_server_manager.cpp +++ b/slobrok/src/vespa/slobrok/server/rpc_server_manager.cpp @@ -283,11 +283,8 @@ RpcServerManager::~RpcServerManager() void RpcServerManager::PerformTask() { - std::vector dl; - std::swap(dl, _deleteList); - for (uint32_t i = 0; i < dl.size(); ++i) { - delete dl[i]; - } + std::vector> deleteAfterSwap; + std::swap(deleteAfterSwap, _deleteList); } @@ -319,7 +316,7 @@ RpcServerManager::notifyFailedRpcSrv(ManagedRpcServer *rpcsrv, std::string errms LOG(warning, "unmanaged server %s at %s failed: %s", rpcsrv->getName().c_str(), rpcsrv->getSpec().c_str(), errmsg.c_str()); } - _deleteList.push_back(rpcsrv); + _deleteList.push_back(std::unique_ptr(rpcsrv)); ScheduleNow(); } diff --git a/slobrok/src/vespa/slobrok/server/rpc_server_manager.h b/slobrok/src/vespa/slobrok/server/rpc_server_manager.h index 9d3ba3c573e..ccee7691f55 100644 --- a/slobrok/src/vespa/slobrok/server/rpc_server_manager.h +++ b/slobrok/src/vespa/slobrok/server/rpc_server_manager.h @@ -7,6 +7,7 @@ #include "named_service.h" #include #include +#include namespace slobrok { @@ -55,7 +56,7 @@ private: } }; std::vector _addManageds; - std::vector _deleteList; + std::vector> _deleteList; public: OkState checkPartner(const std::string & remslobrok); -- cgit v1.2.3