during shutdown, only free the heap if we waited for foreign calls to exit
[ghc-hetmet.git] / rts / sm / Storage.c
index c9422e6..10a0a38 100644 (file)
@@ -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