diff options
Diffstat (limited to 'tests/logic_.cpp')
-rw-r--r-- | tests/logic_.cpp | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/tests/logic_.cpp b/tests/logic_.cpp index 17dc0bb..0259bd6 100644 --- a/tests/logic_.cpp +++ b/tests/logic_.cpp @@ -44,8 +44,23 @@ Logic_::~Logic_(void) { clean(); } - -// For tests only +void Logic_::clean(void) +{ + LogDebug("Cert-checker cleaning."); + + // wait and join processing thread + if (m_thread.joinable()) { + LogDebug("Waiting for join processing thread"); + { + std::lock_guard < std::mutex > lock(m_mutex_cv); + set_should_exit(); + m_to_process.notify_one(); + } + m_thread.join(); + LogDebug("Processing thread joined"); + } else + LogDebug("No thread to join"); +} void Logic_::connman_callback_manual_(bool state) { |