diff --git a/ChangeLog b/ChangeLog index 591bafa7d2..9ea3a2ca63 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +Sat May 10 11:36:20 2008 Tanaka Akira + + * vm.c (env_mark): mark env->block.self. prevent SEGV when GC occur + in prepare_iseq_build with gcc version 3.4.6 [FreeBSD] 20060305 on + FreeBSD/amd64. + Fri May 9 19:16:00 2008 Yukihiro Matsumoto * thread.c (timeofday): use monotonic clock. based on a patch diff --git a/vm.c b/vm.c index e3ad6260c1..58eabf37ac 100644 --- a/vm.c +++ b/vm.c @@ -122,6 +122,7 @@ env_mark(void *ptr) RUBY_GC_INFO("env->prev_envval\n"); RUBY_MARK_UNLESS_NULL(env->prev_envval); + RUBY_MARK_UNLESS_NULL(env->block.self); RUBY_MARK_UNLESS_NULL(env->block.proc); if (env->block.iseq) {