summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--rts/ProfHeap.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/rts/ProfHeap.c b/rts/ProfHeap.c
index ed5dc36009..f1a3b05ce4 100644
--- a/rts/ProfHeap.c
+++ b/rts/ProfHeap.c
@@ -343,8 +343,12 @@ initEra(Census *census)
STATIC_INLINE void
freeEra(Census *census)
{
- arenaFree(census->arena);
- freeHashTable(census->hash, NULL);
+ if (RtsFlags.ProfFlags.bioSelector != NULL)
+ // when bioSelector==NULL, these are freed in heapCensus()
+ {
+ arenaFree(census->arena);
+ freeHashTable(census->hash, NULL);
+ }
}
/* --------------------------------------------------------------------------