Skip to content

Commit 918dbd3

Browse files
authored
Merge pull request #72 from sjanuary/winfix
Fix Semaphore bug on Windows (no CPU/mem/env data on Node 10)
2 parents d94245a + 398c6aa commit 918dbd3

File tree

1 file changed

+13
-3
lines changed

1 file changed

+13
-3
lines changed

src/ibmras/common/port/windows/Thread.cpp

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -85,9 +85,19 @@ bool Semaphore::wait(uint32 timeout) {
8585

8686
IBMRAS_DEBUG(finest, "Semaphore::wait");
8787
DWORD retVal = WaitForSingleObject(handle, timeout * 1000);
88-
if ( !GetLastError()) {
89-
return (retVal == WAIT_OBJECT_0);
90-
}
88+
switch (retVal)
89+
{
90+
case WAIT_OBJECT_0:
91+
IBMRAS_DEBUG(finest, "Semaphore::wait SUCCESS");
92+
return true;
93+
94+
case WAIT_TIMEOUT:
95+
IBMRAS_DEBUG(finest, "Semaphore::wait WAIT_TIMEOUT");
96+
break;
97+
98+
case WAIT_FAILED:
99+
IBMRAS_DEBUG(finest, "Semaphore::wait WAIT_FAILED");
100+
}
91101
return false;
92102

93103
}

0 commit comments

Comments
 (0)