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.h | |
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.h')
-rw-r--r-- | rts/Task.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/rts/Task.h b/rts/Task.h index 2e0a4b83fa..17a443ad6b 100644 --- a/rts/Task.h +++ b/rts/Task.h @@ -83,6 +83,9 @@ typedef struct InCall_ { // without owning a Capability in the // first place. + SchedulerStatus stat; // return status + StgClosure ** ret; // return value + struct Task_ *task; // When a Haskell thread makes a foreign call that re-enters @@ -137,9 +140,6 @@ typedef struct Task_ { // So that we can detect when a finalizer illegally calls back into Haskell rtsBool running_finalizers; - SchedulerStatus stat; // return status - StgClosure ** ret; // return value - // Stats that we collect about this task // ToDo: we probably want to put this in a separate TaskStats // structure, so we can share it between multiple Tasks. We don't |