ruby-changes:4578
From: ko1@a...
Date: Fri, 18 Apr 2008 17:38:07 +0900 (JST)
Subject: [ruby-changes:4578] nobu - Ruby:r16072 (trunk): * gc.c (rb_gc_mark_locations): get rid of underflow.
nobu 2008-04-18 17:37:50 +0900 (Fri, 18 Apr 2008) New Revision: 16072 Modified files: trunk/ChangeLog trunk/gc.c Log: * gc.c (rb_gc_mark_locations): get rid of underflow. * gc.c (mark_current_machine_context): check if the main thread stack position may shink under the intialized position. [ruby-core:16436] http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/ChangeLog?r1=16072&r2=16071&diff_format=u http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/gc.c?r1=16072&r2=16071&diff_format=u Index: ChangeLog =================================================================== --- ChangeLog (revision 16071) +++ ChangeLog (revision 16072) @@ -1,3 +1,10 @@ +Fri Apr 18 17:37:48 2008 Nobuyoshi Nakada <nobu@r...> + + * gc.c (rb_gc_mark_locations): get rid of underflow. + + * gc.c (mark_current_machine_context): check if the main thread stack + position may shink under the intialized position. [ruby-core:16436] + Thu Apr 17 22:20:52 2008 Yusuke Endoh <mame@t...> * enc/trans/utf_16_32.c (fun_so_to_utf_16be, fun_so_to_utf_16le): add Index: gc.c =================================================================== --- gc.c (revision 16071) +++ gc.c (revision 16072) @@ -794,6 +794,7 @@ { long n; + if (end <= start) return; n = end - start; mark_locations_array(start,n); } @@ -1491,10 +1492,9 @@ mark_locations_array((VALUE*)save_regs_gc_mark, sizeof(save_regs_gc_mark) / sizeof(VALUE)); - mark_locations_array(stack_start, stack_end - stack_start); + rb_gc_mark_locations(stack_start, stack_end); #ifdef __ia64 - mark_locations_array(th->machine_register_stack_start, - th->machine_register_stack_end - th->machine_register_stack_start); + rb_gc_mark_locations(th->machine_register_stack_start, th->machine_register_stack_end); #endif #if defined(__human68k__) || defined(__mc68000__) mark_locations_array((VALUE*)((char*)STACK_END + 2), -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/