зеркало из https://github.com/github/ruby.git
* 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
This commit is contained in:
Родитель
64c81e40d4
Коммит
88722e6a5d
|
@ -1,3 +1,10 @@
|
|||
Wed Jul 16 18:03:50 2014 Koichi Sasada <ko1@atdot.net>
|
||||
|
||||
* gc.c (gc_mark_roots): call rb_vm_mark directly.
|
||||
|
||||
* vm.c: remove mark function for RubyVM object because
|
||||
RubyVM object marked manually.
|
||||
|
||||
Wed Jul 16 12:25:39 2014 NARUSE, Yui <naruse@ruby-lang.org>
|
||||
|
||||
* regcomp.c: Merge Onigmo 5.14.1 25a8a69fc05ae3b56a09.
|
||||
|
|
3
gc.c
3
gc.c
|
@ -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);
|
||||
|
|
4
vm.c
4
vm.c
|
@ -1790,8 +1790,6 @@ rb_vm_add_root_module(ID id, VALUE module)
|
|||
return TRUE;
|
||||
}
|
||||
|
||||
#define vm_free 0
|
||||
|
||||
int
|
||||
ruby_vm_destruct(rb_vm_t *vm)
|
||||
{
|
||||
|
@ -1844,7 +1842,7 @@ vm_memsize(const void *ptr)
|
|||
|
||||
static const rb_data_type_t vm_data_type = {
|
||||
"VM",
|
||||
{rb_vm_mark, vm_free, vm_memsize,},
|
||||
{NULL, NULL, vm_memsize,},
|
||||
NULL, NULL, RUBY_TYPED_FREE_IMMEDIATELY
|
||||
};
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче