diff options
author | Simon Marlow <marlowsd@gmail.com> | 2010-05-07 09:32:22 +0000 |
---|---|---|
committer | Simon Marlow <marlowsd@gmail.com> | 2010-05-07 09:32:22 +0000 |
commit | 2007d2138cf17efe6a1701510dbafdfc30e8926c (patch) | |
tree | bbee43dbaa8f3061ddbd6b6a8a27d0bb791654fd /rts/Task.c | |
parent | 3c6190b0beb551f7637e7edbd1bbff803af3a79e (diff) | |
download | haskell-2007d2138cf17efe6a1701510dbafdfc30e8926c.tar.gz |
Fix crash in nested callbacks (#4038)
Broken by "Split part of the Task struct into a separate struct
InCall".
Diffstat (limited to 'rts/Task.c')
-rw-r--r-- | rts/Task.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/rts/Task.c b/rts/Task.c index 98f083c112..a9461c9527 100644 --- a/rts/Task.c +++ b/rts/Task.c @@ -154,8 +154,6 @@ newTask (rtsBool worker) task->worker = worker; task->stopped = rtsFalse; task->running_finalizers = rtsFalse; - task->stat = NoStatus; - task->ret = NULL; task->n_spare_incalls = 0; task->spare_incalls = NULL; task->incall = NULL; @@ -211,6 +209,8 @@ newInCall (Task *task) incall->task = task; incall->suspended_tso = NULL; incall->suspended_cap = NULL; + incall->stat = NoStatus; + incall->ret = NULL; incall->next = NULL; incall->prev = NULL; incall->prev_stack = task->incall; |