diff options
| -rw-r--r-- | ghc/rts/Sanity.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/ghc/rts/Sanity.c b/ghc/rts/Sanity.c index c0a602a9f6..a5d61268af 100644 --- a/ghc/rts/Sanity.c +++ b/ghc/rts/Sanity.c @@ -1,5 +1,5 @@ /* ----------------------------------------------------------------------------- - * $Id: Sanity.c,v 1.15 2000/01/13 14:34:04 hwloidl Exp $ + * $Id: Sanity.c,v 1.16 2000/01/30 10:16:09 simonmar Exp $ * * (c) The GHC Team, 1998-1999 * @@ -471,7 +471,12 @@ checkTSO(StgTSO *tso) StgOffset stack_size = tso->stack_size; StgPtr stack_end = stack + stack_size; - if (tso->whatNext == ThreadComplete || tso->whatNext == ThreadKilled) { + if (tso->whatNext == ThreadRelocated) { + checkTSO(tso->link); + return; + } + + if (tso->whatNext == ThreadComplete || tso->whatNext == ThreadKilled) { /* The garbage collector doesn't bother following any pointers * from dead threads, so don't check sanity here. */ |
