From: Francis Dupont Date: Sat, 21 Sep 2019 12:55:05 +0000 (+0200) Subject: [907-remove-kea-thread-library] Finished netconf X-Git-Tag: tmark-pre-35~7 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=366f36eceaff688019e183e0c974433bcc61063a;p=thirdparty%2Fkea.git [907-remove-kea-thread-library] Finished netconf --- diff --git a/src/bin/netconf/netconf_process.cc b/src/bin/netconf/netconf_process.cc index 769efebb99..228450e6b2 100644 --- a/src/bin/netconf/netconf_process.cc +++ b/src/bin/netconf/netconf_process.cc @@ -47,6 +47,7 @@ NetconfProcess::run() { try { // Initialize netconf agent in a thread. std::thread th([this]() { + try { if (shouldShutdown()) { return; } @@ -66,8 +67,18 @@ NetconfProcess::run() { // Call init. agent_.init(cfg_mgr); + } catch (...) { + // Should not happen but in case... + std::exception_ptr eptr = std::current_exception(); + getIoService()->post([eptr] () { + if (eptr) { + std::rethrow_exception(eptr); + } + }); + } }); + // Detach the thread. th.detach(); // Let's process incoming data or expiring timers in a loop until