FIX crash on exit with biographical profiling
authorSimon Marlow <simonmar@microsoft.com>
Tue, 8 May 2007 10:09:08 +0000 (10:09 +0000)
committerSimon Marlow <simonmar@microsoft.com>
Tue, 8 May 2007 10:09:08 +0000 (10:09 +0000)
Seems to be a bug introduced by code to free the memory allocated by
the heap profiler.

rts/ProfHeap.c

index 76a6b33..19abac7 100644 (file)
@@ -523,11 +523,13 @@ endHeapProfiling(void)
     }
 #endif
 
-    {
+    if (doingLDVProfiling()) {
         nat t;
-        for (t = 0; t <= era; t++) {
+        for (t = 1; t <= era; t++) {
             freeEra( &censuses[t] );
         }
+    } else {
+        freeEra( &censuses[0] );
     }
     stgFree(censuses);