blob: 2bbb5fe40ad4c0b5b87f1e7f2aadd9948ca2112e (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
|
diff -ru ruby-1.8.6-p111/gc.c ruby-1.8.6-p111+iPhone/gc.c
--- ruby-1.8.6-p111/gc.c 2007-03-03 07:30:46.000000000 +0000
+++ ruby-1.8.6-p111+iPhone/gc.c 2008-01-14 10:08:59.000000000 +0000
@@ -1365,7 +1367,7 @@
setjmp(save_regs_gc_mark);
mark_locations_array((VALUE*)save_regs_gc_mark, sizeof(save_regs_gc_mark) / sizeof(VALUE *));
#if STACK_GROW_DIRECTION < 0
- rb_gc_mark_locations((VALUE*)STACK_END, rb_gc_stack_start);
+ rb_gc_mark_locations((VALUE*)((uintptr_t)STACK_END & ~0xf), rb_gc_stack_start);
#elif STACK_GROW_DIRECTION > 0
rb_gc_mark_locations(rb_gc_stack_start, (VALUE*)STACK_END + 1);
#else
|