forkProcess: startTimer() in the child, because the timer will be reset
authorSimon Marlow <simonmar@microsoft.com>
Mon, 5 Mar 2007 14:45:50 +0000 (14:45 +0000)
committerSimon Marlow <simonmar@microsoft.com>
Mon, 5 Mar 2007 14:45:50 +0000 (14:45 +0000)
rts/Schedule.c

index b405759..e328b5b 100644 (file)
@@ -2195,6 +2195,10 @@ forkProcess(HsStablePtr *entry
        cap->returning_tasks_tl = NULL;
 #endif
 
+        // On Unix, all timers are reset in the child, so we need to start
+        // the timer again.
+        startTimer();
+
        cap = rts_evalStableIO(cap, entry, NULL);  // run the action
        rts_checkSchedStatus("forkProcess",cap);