diff --git a/ChangeLog b/ChangeLog index 6001102c70..e999c2b22b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +Sat Jun 28 12:28:46 2003 Nobuyoshi Nakada + + * gc.c (rb_gc_mark_locations): remove margin. [ruby-dev:20462] + + * gc.c (Init_stack): add safety margin. + Fri May 30 11:25:58 2003 WATANABE Hirofumi * lib/irb/xmp.rb: sync with 1.8 ("irb/irb" -> "irb"). diff --git a/gc.c b/gc.c index 12f210445a..3b3a3e3950 100644 --- a/gc.c +++ b/gc.c @@ -434,7 +434,7 @@ rb_gc_mark_locations(start, end) start = end; end = tmp; } - n = end - start + 1; + n = end - start; mark_locations_array(start,n); } @@ -1106,11 +1106,11 @@ Init_stack(addr) if (!addr) addr = (VALUE *)&addr; if (rb_gc_stack_start) { if (stack_growup_p(addr)) { - if (rb_gc_stack_start > addr) + if (rb_gc_stack_start > --addr) rb_gc_stack_start = addr; } else { - if (rb_gc_stack_start < addr) + if (rb_gc_stack_start < ++addr) rb_gc_stack_start = addr; } return;