--- ray/src/common/malloc.c 1991/11/12 16:54:29 2.1 +++ ray/src/common/malloc.c 1991/12/13 10:28:42 2.2 @@ -379,12 +379,14 @@ char *p; register M_HEAD *mp; register int bucket; - if (p == NULL || p == DUMMYLOC) + if (p == NULL | p == DUMMYLOC) return(1); mp = (M_HEAD *)p - 1; if (mp->a.magic != MAGIC) /* sanity check */ return(0); bucket = mp->a.bucket; + if (bucket < FIRSTBUCKET | bucket >= NBUCKETS) + return(0); mp->next = free_list[bucket]; free_list[bucket] = mp; #ifdef MSTATS