summaryrefslogtreecommitdiffstats
path: root/byterun/compact.c
diff options
context:
space:
mode:
Diffstat (limited to 'byterun/compact.c')
-rw-r--r--byterun/compact.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/byterun/compact.c b/byterun/compact.c
index 5115fc77a..be49ceb65 100644
--- a/byterun/compact.c
+++ b/byterun/compact.c
@@ -381,10 +381,8 @@ void compact_heap (void)
fl_reset ();
while (ch != NULL){
if (Chunk_size (ch) > Chunk_alloc (ch)){
- header_t *p = (header_t *) (ch + Chunk_alloc (ch));
- *p = Make_header (Wosize_bhsize (Chunk_size (ch) - Chunk_alloc (ch)),
- 0, Caml_white);
- fl_merge_block (Bp_hp (p));
+ make_free_blocks ((value *) (ch + Chunk_alloc (ch)),
+ Wsize_bsize (Chunk_size (ch) - Chunk_alloc (ch)), 1);
}
ch = Chunk_next (ch);
}