summaryrefslogtreecommitdiff
path: root/rts/HeapStackCheck.cmm
diff options
context:
space:
mode:
Diffstat (limited to 'rts/HeapStackCheck.cmm')
-rw-r--r--rts/HeapStackCheck.cmm5
1 files changed, 5 insertions, 0 deletions
diff --git a/rts/HeapStackCheck.cmm b/rts/HeapStackCheck.cmm
index a1fb5d446d..a1e18ca0f0 100644
--- a/rts/HeapStackCheck.cmm
+++ b/rts/HeapStackCheck.cmm
@@ -97,7 +97,12 @@ stg_gc_noregs
&& bdescr_link(CurrentNursery) != NULL) {
HpAlloc = 0;
CLOSE_NURSERY();
+ Capability_total_allocated(MyCapability()) =
+ Capability_total_allocated(MyCapability()) +
+ BYTES_TO_WDS(bdescr_free(CurrentNursery) -
+ bdescr_start(CurrentNursery));
CurrentNursery = bdescr_link(CurrentNursery);
+ bdescr_free(CurrentNursery) = bdescr_start(CurrentNursery);
OPEN_NURSERY();
if (Capability_context_switch(MyCapability()) != 0 :: CInt ||
Capability_interrupt(MyCapability()) != 0 :: CInt ||