From 8b68dee2aad81dc2594bb769f736226a597c822f Mon Sep 17 00:00:00 2001 From: nobu Date: Fri, 27 Feb 2009 09:01:21 +0000 Subject: * gc.c (ruby_get_stack_grow_direction): no needs to use thread here, and not initialized yet. [ruby-core:22439] git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@22659 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 5 +++++ gc.c | 6 +++--- thread_pthread.c | 2 +- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/ChangeLog b/ChangeLog index 77ea2dfd7..6b41742c9 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Fri Feb 27 18:01:20 2009 Nobuyoshi Nakada + + * gc.c (ruby_get_stack_grow_direction): no needs to use thread + here, and not initialized yet. [ruby-core:22439] + Fri Feb 27 17:45:25 2009 Nobuyoshi Nakada * file.c (file_load_ok): checks if regular file, except for the diff --git a/gc.c b/gc.c index ca24f8247..80cd62ee2 100644 --- a/gc.c +++ b/gc.c @@ -1102,10 +1102,10 @@ int ruby_stack_grow_direction; int ruby_get_stack_grow_direction(VALUE *addr) { - rb_thread_t *th = GET_THREAD(); - SET_STACK_END; + VALUE *end; + SET_MACHINE_STACK_END(&end); - if (STACK_END > addr) return ruby_stack_grow_direction = 1; + if (end > addr) return ruby_stack_grow_direction = 1; return ruby_stack_grow_direction = -1; } #endif diff --git a/thread_pthread.c b/thread_pthread.c index cb9511e00..91c5b42d6 100644 --- a/thread_pthread.c +++ b/thread_pthread.c @@ -275,7 +275,7 @@ ruby_init_stack(VALUE *addr native_main_thread.stack_start = STACK_END_ADDRESS; #else if (!native_main_thread.stack_start || - STACK_UPPER(&addr, + STACK_UPPER((VALUE *)(void *)&addr, native_main_thread.stack_start > addr, native_main_thread.stack_start < addr)) { native_main_thread.stack_start = addr; -- cgit