diff options
author | ko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2014-07-16 09:06:52 +0000 |
---|---|---|
committer | ko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2014-07-16 09:06:52 +0000 |
commit | 88722e6a5dc9881e7d4a54e4cd90f5b4ebbb609c (patch) | |
tree | 6e962f4ac412c1c1c34ca4fec1badbf505b10a99 /gc.c | |
parent | 64c81e40d4706d3685d540febb06e28609641aa4 (diff) | |
download | ruby-88722e6a5dc9881e7d4a54e4cd90f5b4ebbb609c.tar.gz |
* gc.c (gc_mark_roots): call rb_vm_mark directly.
* vm.c: remove mark function for RubyVM object because
RubyVM object marked manually.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46832 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'gc.c')
-rw-r--r-- | gc.c | 3 |
1 files changed, 2 insertions, 1 deletions
@@ -4222,7 +4222,8 @@ gc_mark_roots(rb_objspace_t *objspace, int full_mark, const char **categoryp) MARK_CHECKPOINT("vm"); SET_STACK_END; - th->vm->self ? rb_gc_mark(th->vm->self) : rb_vm_mark(th->vm); + rb_vm_mark(th->vm); + if (th->vm->self) gc_mark_ptr(objspace, th->vm->self); MARK_CHECKPOINT("finalizers"); mark_tbl(objspace, finalizer_table); |