diff --git a/src/gc.c b/src/gc.c index aa3ede1ed31fd6d78633155f30c41adcc41b40ed..1789b43d6c909256c4b18e711a13a2ab35e2aeeb 100644 --- a/src/gc.c +++ b/src/gc.c @@ -29,7 +29,7 @@ struct callback *gc_evaluator_callback=0; #include "block_alloc.h" -RCSID("$Id: gc.c,v 1.87 2000/06/10 19:20:40 mast Exp $"); +RCSID("$Id: gc.c,v 1.88 2000/06/10 23:20:47 mast Exp $"); /* Run garbage collect approximately every time * 20 percent of all arrays, objects and programs is @@ -1177,16 +1177,13 @@ int gc_cycle_push(void *x, struct marker *m, int weak) #ifdef PIKE_DEBUG if (!gc_rec_last) fatal("Expected a gc_set_rec_last entry in gc_mark_queue.\n"); - gc_rec_last->link = (struct marker *) -1; #endif } while (gc_rec_last->flags & GC_LIVE_RECURSE); - if (!dequeue_lifo(&gc_mark_queue, - (queue_call) gc_cycle_pop_object)) { + if (!dequeue_lifo(&gc_mark_queue, (queue_call) gc_cycle_pop_object)) { #ifdef PIKE_DEBUG fatal("Expected a gc_cycle_pop_object entry in gc_mark_queue.\n"); #endif } - gc_rec_last->link = 0; } return 0;