diff --git a/third-party/realdds/src/dds-network-adapter-watcher.cpp b/third-party/realdds/src/dds-network-adapter-watcher.cpp index 5a6ba90e72..8f62b25043 100644 --- a/third-party/realdds/src/dds-network-adapter-watcher.cpp +++ b/third-party/realdds/src/dds-network-adapter-watcher.cpp @@ -60,7 +60,6 @@ class network_adapter_watcher_singleton if( new_ips.size() || old_ips.size() ) callbacks.raise( new_ips, old_ips ); } - _th.detach(); // so it's not joinable LOG_DEBUG( "done waiting for IP changes" ); } ); } @@ -72,15 +71,8 @@ class network_adapter_watcher_singleton ~network_adapter_watcher_singleton() { _adapter_watcher.reset(); // signal the thread to finish - try - { - if (_th.joinable()) - _th.join(); - } - catch (std::system_error& e) - { - LOG_ERROR("Network adapter watcher termination failed: " << e.what()); - } + if (_th.joinable()) + _th.join(); } void update_ips( ip_set * p_new_ips = nullptr, ip_set * p_old_ips = nullptr )