|
From: Matthew F. <fl...@ml...> - 2006-05-24 05:28:02
|
In r4572:
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.
However, it seems that leaving the newly initialized heap with
oldGenSize == 0 is incorrect, at it makes the heap appear to have no
data.
----------------------------------------------------------------------
U mlton/trunk/runtime/gc.c
----------------------------------------------------------------------
Modified: mlton/trunk/runtime/gc.c
===================================================================
--- mlton/trunk/runtime/gc.c 2006-05-24 12:23:53 UTC (rev 4574)
+++ mlton/trunk/runtime/gc.c 2006-05-24 12:28:01 UTC (rev 4575)
@@ -2826,6 +2826,7 @@
uint remaining;
pointer to;
+ h2.oldGenSize = size;
from = old + size;
to = h2.start + size;
remaining = size;
|