rtsBool
signalCondition ( Condition* pCond )
{
- SetEvent(*pCond);
- return rtsTrue;
+ if (SetEvent(*pCond) == 0) {
+ barf("SetEvent: %d", GetLastError());
+ }
+ return rtsTrue;
}
rtsBool
waitCondition ( Condition* pCond, Mutex* pMut )
{
- ReleaseMutex(*pMut);
+ RELEASE_LOCK(pMut);
WaitForSingleObject(*pCond, INFINITE);
/* Hmm..use WaitForMultipleObjects() ? */
- WaitForSingleObject(*pMut, INFINITE);
+ ACQUIRE_LOCK(pMut);
return rtsTrue;
}