summaryrefslogtreecommitdiff
path: root/vm.c
diff options
context:
space:
mode:
authorser <ser@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-09-22 12:40:45 +0000
committerser <ser@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-09-22 12:40:45 +0000
commit8b53e39a2e6110cf13827c88673a3ef2667991cf (patch)
treeeb1fa37c2a675b75c295285b5c313ba05801c2b8 /vm.c
parentf36a3f0ea57aa05a72cb58937c7a737455a98a38 (diff)
downloadruby-rexml_adds_tests.tar.gz
Second merge from trunk.rexml_adds_tests
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/rexml_adds_tests@19455 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'vm.c')
-rw-r--r--vm.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/vm.c b/vm.c
index 71658195b1..7841b43396 100644
--- a/vm.c
+++ b/vm.c
@@ -1820,7 +1820,7 @@ Init_VM(void)
rb_define_method_id(klass, id_core_define_singleton_method, m_core_define_singleton_method, 3);
rb_define_method_id(klass, id_core_set_postexe, m_core_set_postexe, 1);
rb_obj_freeze(fcore);
- rb_global_variable(&rb_mRubyVMFrozenCore);
+ rb_gc_register_mark_object(fcore);
rb_mRubyVMFrozenCore = fcore;
/* ::VM::Env */
@@ -1901,7 +1901,7 @@ Init_VM(void)
vm->living_threads = st_init_numtable();
st_insert(vm->living_threads, th_self, (st_data_t) th->thread_id);
- rb_register_mark_object(iseqval);
+ rb_gc_register_mark_object(iseqval);
GetISeqPtr(iseqval, iseq);
th->cfp->iseq = iseq;
th->cfp->pc = iseq->iseq_encoded;
@@ -1960,6 +1960,9 @@ Init_top_self(void)
vm->top_self = rb_obj_alloc(rb_cObject);
rb_define_singleton_method(rb_vm_top_self(), "to_s", main_to_s, 0);
+
+ /* initialize mark object array */
+ vm->mark_object_ary = rb_ary_new();
}
VALUE *