summaryrefslogtreecommitdiff
path: root/vm.c
diff options
context:
space:
mode:
authorakr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-05-10 03:00:56 +0000
committerakr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-05-10 03:00:56 +0000
commit332529d45ac100ffaa1e31ec4c498a70dc5bf143 (patch)
tree167d596857792de16e2bd26f0c80152e4ef18036 /vm.c
parent7d82d98d56250b27f586e4ad12f895e1e098333b (diff)
* 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. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16343 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'vm.c')
-rw-r--r--vm.c1
1 files changed, 1 insertions, 0 deletions
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) {