
I'm trying to debug a memory error and this is among the suspicious bits that valgrind is turning up: ==23982== Invalid read of size 1 ==23982== at 0x583DAFA: boost::detail::interruption_checker::interruption_checker(pthread_cond_t*) (thread_data.hpp:94) ==23982== by 0x583DC35: boost::condition_variable::wait(boost::unique_lock<boost::mutex>&) (condition_variable.hpp:19) ==23982== by 0x583DECE: boost::shared_mutex::lock_shared() (shared_mutex.hpp:64) ==23982== by 0x5849E63: boost::shared_lock<boost::shared_mutex>::lock() (locks.hpp:575) ==23982== by 0x583E988: boost::shared_lock<boost::shared_mutex>::shared_lock(boost::shared_mutex&) (locks.hpp:458) I am pretty confident that the shared_mutex is fully constructed when this happens. Also, this is coming from the main thread. I'm just not sure what's going on here. As I continue to explore this, I thought I'd try my luck here: perhaps someone's seen something like this before? -- Braden McDaniel <braden@endoframe.com>