summaryrefslogtreecommitdiff
path: root/rts/sm
diff options
context:
space:
mode:
authorSimon Marlow <marlowsd@gmail.com>2011-12-13 13:03:23 +0000
committerSimon Marlow <marlowsd@gmail.com>2011-12-13 15:02:11 +0000
commit011d6f96b6bbaf1aa651c96ccbee0d21d16c2146 (patch)
treed7a36f8cd505c7fe7826fb4d30541a92c2732ec3 /rts/sm
parent6a8bdf37fd70de1a46b4cf122e837c47e66eb18c (diff)
downloadhaskell-011d6f96b6bbaf1aa651c96ccbee0d21d16c2146.tar.gz
Fix for a bug in +RTS -qi (crash in zero_static_object_list)
Diffstat (limited to 'rts/sm')
-rw-r--r--rts/sm/GC.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/rts/sm/GC.c b/rts/sm/GC.c
index 993de51bf8..aeadf6f42f 100644
--- a/rts/sm/GC.c
+++ b/rts/sm/GC.c
@@ -651,7 +651,9 @@ GarbageCollect (rtsBool force_major_gc,
zero_static_object_list(gct->scavenged_static_objects);
} else {
for (i = 0; i < n_gc_threads; i++) {
- zero_static_object_list(gc_threads[i]->scavenged_static_objects);
+ if (!gc_threads[i]->idle) {
+ zero_static_object_list(gc_threads[i]->scavenged_static_objects);
+ }
}
}
}