From b174cc7d07b1f04f596c673675505ae00cf3558a Mon Sep 17 00:00:00 2001 From: "Guillermo J. Rozas" Date: Sun, 24 Mar 1991 03:01:13 +0000 Subject: [PATCH] Fix a problem with allocate_closure: All words must be initialized in order to make the heap parseable. This is needed by relocate_block after disk-restore. --- v7/src/microcode/cmpintmd/mc68k.h | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/v7/src/microcode/cmpintmd/mc68k.h b/v7/src/microcode/cmpintmd/mc68k.h index c80a4b49b..5b2ba6126 100644 --- a/v7/src/microcode/cmpintmd/mc68k.h +++ b/v7/src/microcode/cmpintmd/mc68k.h @@ -1,6 +1,6 @@ /* -*-C-*- -$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/microcode/cmpintmd/mc68k.h,v 1.21 1991/03/24 00:46:41 jinx Exp $ +$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/microcode/cmpintmd/mc68k.h,v 1.22 1991/03/24 03:01:13 jinx Exp $ Copyright (c) 1989-1991 Massachusetts Institute of Technology @@ -581,6 +581,9 @@ DEFUN (allocate_closure, last_chunk_size = space; /* To be used next time, maybe. */ result = (start + 3); space = (eptr - result); + unsigned short *wptr; + for (ptr = result; ptr < eptr; ptr++) + *ptr = SHARP_F; /* Allow forward scanning of heap. */ for (ptr = result; ptr < eptr; ptr += CLOSURE_ENTRY_WORDS) wptr = ((unsigned short *) ptr); -- 2.25.1