diff options
author | Conlain Kelly <conlain.k@gmail.com> | 2018-07-18 15:14:34 -0400 |
---|---|---|
committer | Conlain Kelly <conlain.k@gmail.com> | 2018-07-18 15:14:34 -0400 |
commit | c96b488f0a5c6f114016ab9c013a347b5257d7d9 (patch) | |
tree | 88e74380b46f4c3bf782053e717ece1a644ae186 /src/components | |
parent | adba01da38c865370d378eb2f0d237543a5b12d4 (diff) | |
download | sdl_core-c96b488f0a5c6f114016ab9c013a347b5257d7d9.tar.gz |
maybe final cleanup
Diffstat (limited to 'src/components')
-rw-r--r-- | src/components/utils/src/conditional_variable_boost.cc | 51 |
1 files changed, 25 insertions, 26 deletions
diff --git a/src/components/utils/src/conditional_variable_boost.cc b/src/components/utils/src/conditional_variable_boost.cc index 109e2bac9b..f1c23c13a4 100644 --- a/src/components/utils/src/conditional_variable_boost.cc +++ b/src/components/utils/src/conditional_variable_boost.cc @@ -64,30 +64,30 @@ bool ConditionalVariable::Wait(BaseLock& lock) { // superclass lock.AssertTakenAndMarkFree(); - // try { - // What kind of lock are we ? - if (Lock* test_lock = dynamic_cast<Lock*>(&lock)) { - // Regular lock - cond_var_.wait<boost::mutex>(test_lock->mutex_); - } else if (RecursiveLock* test_rec_lock = - dynamic_cast<RecursiveLock*>(&lock)) { - // Recursive lock - cond_var_.wait<boost::recursive_mutex>(test_rec_lock->mutex_); - } else { - // unknown + try { + // What kind of lock are we ? + if (Lock* test_lock = dynamic_cast<Lock*>(&lock)) { + // Regular lock + cond_var_.wait<boost::mutex>(test_lock->mutex_); + } else if (RecursiveLock* test_rec_lock = + dynamic_cast<RecursiveLock*>(&lock)) { + // Recursive lock + cond_var_.wait<boost::recursive_mutex>(test_rec_lock->mutex_); + } else { + // unknown + lock.AssertFreeAndMarkTaken(); + + LOG4CXX_ERROR(logger_, "Unknown lock type!"); + return false; + } + } catch (std::exception err) { lock.AssertFreeAndMarkTaken(); - LOG4CXX_ERROR(logger_, "Unknown lock type!"); + LOG4CXX_ERROR( + logger_, + "Failed to wait for conditional variable, exception:" << err.what()); return false; } - // } catch (std::exception err) { - // lock.AssertFreeAndMarkTaken(); - // - // LOG4CXX_ERROR( - // logger_, - // "Failed to wait for conditional variable, exception:" << err.what()); - // return false; - // } lock.AssertFreeAndMarkTaken(); return true; @@ -129,13 +129,12 @@ ConditionalVariable::WaitStatus ConditionalVariable::WaitFor( } } catch (boost::thread_interrupted inter) { wait_status = kNoTimeout; + } catch (std::exception err) { + LOG4CXX_ERROR( + logger_, + "Failed to timewait for conditional variable timedwait_status: " + << err.what()); } - // catch (std::exception err) { - // LOG4CXX_ERROR( - // logger_, - // "Failed to timewait for conditional variable timedwait_status: " - // << err.what()); - // } lock.AssertFreeAndMarkTaken(); return wait_status; |