projects
/
ghc-hetmet.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Free more things that we allocate
[ghc-hetmet.git]
/
rts
/
win32
/
OSThreads.c
diff --git
a/rts/win32/OSThreads.c
b/rts/win32/OSThreads.c
index
00effda
..
32800e7
100644
(file)
--- a/
rts/win32/OSThreads.c
+++ b/
rts/win32/OSThreads.c
@@
-38,7
+38,8
@@
initCondition( Condition* pCond )
NULL); /* unnamed => process-local. */
if ( h == NULL ) {
NULL); /* unnamed => process-local. */
if ( h == NULL ) {
- errorBelch("initCondition: unable to create");
+ sysErrorBelch("initCondition: unable to create");
+ stg_exit(EXIT_FAILURE);
}
*pCond = h;
return;
}
*pCond = h;
return;
@@
-48,7
+49,7
@@
void
closeCondition( Condition* pCond )
{
if ( CloseHandle(*pCond) == 0 ) {
closeCondition( Condition* pCond )
{
if ( CloseHandle(*pCond) == 0 ) {
- errorBelch("closeCondition: failed to close");
+ sysErrorBelch("closeCondition: failed to close");
}
return;
}
}
return;
}
@@
-64,7
+65,8
@@
rtsBool
signalCondition ( Condition* pCond )
{
if (SetEvent(*pCond) == 0) {
signalCondition ( Condition* pCond )
{
if (SetEvent(*pCond) == 0) {
- barf("SetEvent: %d", GetLastError());
+ sysErrorBelch("SetEvent");
+ stg_exit(EXIT_FAILURE);
}
return rtsTrue;
}
}
return rtsTrue;
}