[MLton-commit] r4572
Matthew Fluet
MLton@mlton.org
Tue, 23 May 2006 19:18:56 -0700
Calling translateHeap with s->heap.oldGenSize is incorrect, because
when heapRemap fails and heapCreate succeeds, s->heap is updated with
an newly initialized heap with oldGenSize == 0. Instead, call
translateHeap with size, which has the original oldGenSize.
----------------------------------------------------------------------
U mlton/trunk/runtime/gc.c
----------------------------------------------------------------------
Modified: mlton/trunk/runtime/gc.c
===================================================================
--- mlton/trunk/runtime/gc.c 2006-05-24 02:17:01 UTC (rev 4571)
+++ mlton/trunk/runtime/gc.c 2006-05-24 02:18:53 UTC (rev 4572)
@@ -2887,7 +2887,7 @@
}
done:
unless (old == s->heap.start) {
- translateHeap (s, old, s->heap.start, s->oldGenSize);
+ translateHeap (s, old, s->heap.start, size);
setCardMapForMutator (s);
}
}