From 3aa14dd83b4fdb99e68f428616c2a9207286b275 Mon Sep 17 00:00:00 2001 From: sof Date: Sat, 12 Jul 2003 00:08:28 +0000 Subject: [PATCH] [project @ 2003-07-12 00:08:28 by sof] [win32]delay#: set why_blocked to BlockedOnDoProc since we're appending the thread to blocked_queue --- ghc/rts/PrimOps.hc | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/ghc/rts/PrimOps.hc b/ghc/rts/PrimOps.hc index ea57f05..f39768c 100644 --- a/ghc/rts/PrimOps.hc +++ b/ghc/rts/PrimOps.hc @@ -1,5 +1,5 @@ /* ----------------------------------------------------------------------------- - * $Id: PrimOps.hc,v 1.108 2003/07/03 15:14:58 sof Exp $ + * $Id: PrimOps.hc,v 1.109 2003/07/12 00:08:28 sof Exp $ * * (c) The GHC Team, 1998-2002 * @@ -1640,6 +1640,10 @@ FN_(delayzh_fast) ares->len = 0; ares->errCode = 0; CurrentTSO->block_info.async_result = ares; + /* Having all async-blocked threads reside on the blocked_queue simplifies matters, so + * change the status to OnDoProc & put the delayed thread on the blocked_queue. + */ + CurrentTSO->why_blocked = BlockedOnDoProc; APPEND_TO_BLOCKED_QUEUE(CurrentTSO); #else target = (R1.i / (TICK_MILLISECS*1000)) + getourtimeofday(); -- 1.7.10.4