projects
/
ghc-hetmet.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
[project @ 2005-04-05 09:30:11 by simonmar]
[ghc-hetmet.git]
/
ghc
/
rts
/
Exception.h
diff --git
a/ghc/rts/Exception.h
b/ghc/rts/Exception.h
index
68bd499
..
890c516
100644
(file)
--- a/
ghc/rts/Exception.h
+++ b/
ghc/rts/Exception.h
@@
-1,5
+1,4
@@
/* -----------------------------------------------------------------------------
/* -----------------------------------------------------------------------------
- * $Id: Exception.h,v 1.5 2002/12/11 15:36:42 simonmar Exp $
*
* (c) The GHC Team, 1998-2000
*
*
* (c) The GHC Team, 1998-2000
*
@@
-14,7
+13,7
@@
extern const StgRetInfoTable stg_unblockAsyncExceptionszh_ret_info;
* indefinitely). Interruptible threads can be sent an exception with
* killThread# even if they have async exceptions blocked.
*/
* indefinitely). Interruptible threads can be sent an exception with
* killThread# even if they have async exceptions blocked.
*/
-static __inline__ int
+INLINE_HEADER int
interruptible(StgTSO *t)
{
switch (t->why_blocked) {
interruptible(StgTSO *t)
{
switch (t->why_blocked) {
@@
-22,9
+21,15
@@
interruptible(StgTSO *t)
case BlockedOnException:
case BlockedOnRead:
case BlockedOnWrite:
case BlockedOnException:
case BlockedOnRead:
case BlockedOnWrite:
+#if defined(mingw32_HOST_OS)
+ case BlockedOnDoProc:
+#endif
case BlockedOnDelay:
return 1;
case BlockedOnDelay:
return 1;
+ // NB. Threaded blocked on foreign calls (BlockedOnCCall) are
+ // *not* interruptible. We can't send these threads an exception.
default:
return 0;
}
}
default:
return 0;
}
}
+