mirror of https://github.com/OpenTTD/OpenTTD
(svn r26353) -Fix (r26349) [FS#5917]: Win32 and OS/2 ThreadMutex::WaitForSignal always asserted.
parent
3e78c4dc7b
commit
ac2cd315ef
|
@ -128,12 +128,9 @@ public:
|
|||
/* virtual */ void WaitForSignal()
|
||||
{
|
||||
assert(this->recursive_count == 1); // Do we need to call Begin/EndCritical multiple times otherwise?
|
||||
uint old_recursive_count = this->recursive_count;
|
||||
this->recursive_count = 0;
|
||||
this->EndCritical();
|
||||
DosWaitEventSem(event, SEM_INDEFINITE_WAIT);
|
||||
this->BeginCritical();
|
||||
this->recursive_count = old_recursive_count;
|
||||
}
|
||||
|
||||
/* virtual */ void SendSignal()
|
||||
|
|
|
@ -141,12 +141,9 @@ public:
|
|||
/* virtual */ void WaitForSignal()
|
||||
{
|
||||
assert(this->recursive_count == 1); // Do we need to call Begin/EndCritical multiple times otherwise?
|
||||
uint old_recursive_count = this->recursive_count;
|
||||
this->recursive_count = 0;
|
||||
this->EndCritical();
|
||||
WaitForSingleObject(this->event, INFINITE);
|
||||
this->BeginCritical();
|
||||
this->recursive_count = old_recursive_count;
|
||||
}
|
||||
|
||||
/* virtual */ void SendSignal()
|
||||
|
|
Loading…
Reference in New Issue