mirror of
https://github.com/debauchee/barrier.git
synced 2026-05-22 06:05:29 -06:00
an strange deadlock seen on OSX. The CSocketMultiplexer deadlocks with two threads, one waiting for m_polling to become false and the other waiting for m_pollable to become true. The weird part is that they're both false so the first thread should proceed. It either didn't receive the broadcast when m_polling went to false or it's not really checking the actual value of that flag. I can't see how the former is possible and this change fixes the latter. |
||
|---|---|---|
| .. | ||
| CCondVar.cpp | ||
| CCondVar.h | ||
| CLock.cpp | ||
| CLock.h | ||
| CMutex.cpp | ||
| CMutex.h | ||
| CThread.cpp | ||
| CThread.h | ||
| Makefile.am | ||
| mt.dsp | ||
| XMT.cpp | ||
| XMT.h | ||
| XThread.h | ||