summaryrefslogtreecommitdiff
path: root/vm.c
diff options
context:
space:
mode:
authorko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2014-07-16 10:16:34 (GMT)
committerko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2014-07-16 10:16:34 (GMT)
commit239c98553dfe22ed77bb89e3b2c744eb279d9116 (patch)
treed405c50b1c7da8e33969ff1b88881c32e8d48f91 /vm.c
parent01dc0a7104d09f59e5c94e286adcac7c04574eab (diff)
revert r46834 because it does not pass tests
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46835 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'vm.c')
-rw-r--r--vm.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/vm.c b/vm.c
index 3c17a78..5e9204b 100644
--- a/vm.c
+++ b/vm.c
@@ -1737,6 +1737,8 @@ void rb_vm_trace_mark_event_hooks(rb_hook_list_t *hooks);
void
rb_vm_mark(void *ptr)
{
+ int i;
+
RUBY_MARK_ENTER("vm");
RUBY_GC_INFO("-------------------------------------------------\n");
if (ptr) {
@@ -1764,6 +1766,11 @@ rb_vm_mark(void *ptr)
}
rb_vm_trace_mark_event_hooks(&vm->event_hooks);
+
+ for (i = 0; i < RUBY_NSIG; i++) {
+ if (vm->trap_list[i].cmd)
+ rb_gc_mark(vm->trap_list[i].cmd);
+ }
}
RUBY_MARK_LEAVE("vm");