summaryrefslogtreecommitdiff
path: root/rts/sm/Storage.c
diff options
context:
space:
mode:
authorSimon Marlow <marlowsd@gmail.com>2010-06-28 09:05:36 +0000
committerSimon Marlow <marlowsd@gmail.com>2010-06-28 09:05:36 +0000
commitae03da75d16d5d6e00c6f12102846509060a1138 (patch)
tree4a7dffcf02d7180581adab365e6cc57ae2909414 /rts/sm/Storage.c
parent9cf9522864e8110f5c033d58d9d5d867c371a4b6 (diff)
downloadhaskell-ae03da75d16d5d6e00c6f12102846509060a1138.tar.gz
during shutdown, only free the heap if we waited for foreign calls to exit
Diffstat (limited to 'rts/sm/Storage.c')
-rw-r--r--rts/sm/Storage.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/rts/sm/Storage.c b/rts/sm/Storage.c
index c9422e60b7..10a0a38d95 100644
--- a/rts/sm/Storage.c
+++ b/rts/sm/Storage.c
@@ -213,10 +213,10 @@ exitStorage (void)
}
void
-freeStorage (void)
+freeStorage (rtsBool free_heap)
{
stgFree(generations);
- freeAllMBlocks();
+ if (free_heap) freeAllMBlocks();
#if defined(THREADED_RTS)
closeMutex(&sm_mutex);
#endif