From: Gabor Drescher Date: Tue, 5 Jul 2016 07:51:50 +0000 (+0200) Subject: Fix assertion in GC_mark_from for non-heap regions X-Git-Tag: v7.4.6~267 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=1ce9b81f7715c8d489d6be14dadb97011fe344b2;p=gc Fix assertion in GC_mark_from for non-heap regions * mark.c (GC_mark_from): Relax assertion condition for descr and GC_least/greatest_plausible_heap_addr values. --- diff --git a/mark.c b/mark.c index 94919327..f7498570 100644 --- a/mark.c +++ b/mark.c @@ -645,7 +645,10 @@ GC_INNER mse * GC_mark_from(mse *mark_stack_top, mse *mark_stack, /* Process part of the range to avoid pushing too much on the */ /* stack. */ GC_ASSERT(descr < (word)GC_greatest_plausible_heap_addr - - (word)GC_least_plausible_heap_addr); + - (word)GC_least_plausible_heap_addr + || (word)(current_p + descr) + <= (word)GC_least_plausible_heap_addr + || (word)current_p >= (word)GC_greatest_plausible_heap_addr); # ifdef ENABLE_TRACE if ((word)GC_trace_addr >= (word)current_p && (word)GC_trace_addr < (word)(current_p + descr)) {