From a1c265c42befdf2991dd2f8e613ab43f78348732 Mon Sep 17 00:00:00 2001 From: Simon Marlow Date: Wed, 11 Mar 2009 09:39:38 +0000 Subject: [PATCH] avoid a space leak building up in the "prodding" IORef (part of #2992) --- GHC/Conc.lhs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/GHC/Conc.lhs b/GHC/Conc.lhs index 1351125..8ed61fe 100644 --- a/GHC/Conc.lhs +++ b/GHC/Conc.lhs @@ -955,7 +955,8 @@ service_loop wakeup old_delays = do service_cont :: HANDLE -> [DelayReq] -> IO () service_cont wakeup delays = do - atomicModifyIORef prodding (\_ -> (False,False)) + r <- atomicModifyIORef prodding (\_ -> (False,False)) + r `seq` return () -- avoid space leak service_loop wakeup delays -- must agree with rts/win32/ThrIOManager.c -- 1.7.10.4