From d56a483abea2e7803ef47cbcb48a86a45e605410 Mon Sep 17 00:00:00 2001 From: moneromooo-monero Date: Sat, 26 Oct 2019 08:12:49 +0000 Subject: [PATCH] rpc: do not propagate exceptions out of a dtor Coverity 205415 --- src/rpc/core_rpc_server.cpp | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/rpc/core_rpc_server.cpp b/src/rpc/core_rpc_server.cpp index dbacd489d..858b35df2 100644 --- a/src/rpc/core_rpc_server.cpp +++ b/src/rpc/core_rpc_server.cpp @@ -86,10 +86,14 @@ namespace RPCTracker(const char *rpc, tools::LoggingPerformanceTimer &timer): rpc(rpc), timer(timer) { } ~RPCTracker() { - boost::unique_lock lock(mutex); - auto &e = tracker[rpc]; - ++e.count; - e.time += timer.value(); + try + { + boost::unique_lock lock(mutex); + auto &e = tracker[rpc]; + ++e.count; + e.time += timer.value(); + } + catch (...) { /* ignore */ } } void pay(uint64_t amount) { boost::unique_lock lock(mutex);