Index: boost/thread/win32/condition_variable.hpp =================================================================== --- boost/thread/win32/condition_variable.hpp (revision 44580) +++ boost/thread/win32/condition_variable.hpp (working copy) @@ -231,9 +231,9 @@ void notify_one() { + boost::mutex::scoped_lock internal_lock(internal_mutex); if(detail::interlocked_read_acquire(&total_count)) { - boost::mutex::scoped_lock internal_lock(internal_mutex); if(!total_count) { return; @@ -271,9 +271,9 @@ void notify_all() { + boost::mutex::scoped_lock internal_lock(internal_mutex); if(detail::interlocked_read_acquire(&total_count)) { - boost::mutex::scoped_lock internal_lock(internal_mutex); long waiting_count=total_count; wake_waiters(total_count);