summaryrefslogtreecommitdiff
path: root/vm.c
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-07-10 03:10:00 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-07-10 03:10:00 +0000
commit1a5f1a8c6966a973b26b85cb6e1e65ad0c5a5ed1 (patch)
tree259804fd59dcbf2d7dbe669f850b46f6b8960220 /vm.c
parent7ad9faa5280b0f6e87ef658bc209ffe24fdac85c (diff)
* vm_core.h (rb_thread_t), vm.c (rb_thread_mark), process.c
(rb_last_status_get, rb_last_status_set, rb_last_status_clear): moved last_status from rb_vm_t. [ruby-dev:35414] * vm.c (th_init2): initialize last_status with nil. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17985 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'vm.c')
-rw-r--r--vm.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/vm.c b/vm.c
index a6c62d69e9..6379bdfd89 100644
--- a/vm.c
+++ b/vm.c
@@ -1391,7 +1391,6 @@ rb_vm_mark(void *ptr)
}
RUBY_MARK_UNLESS_NULL(vm->thgroup_default);
RUBY_MARK_UNLESS_NULL(vm->mark_object_ary);
- RUBY_MARK_UNLESS_NULL(vm->last_status);
RUBY_MARK_UNLESS_NULL(vm->load_path);
RUBY_MARK_UNLESS_NULL(vm->loaded_features);
RUBY_MARK_UNLESS_NULL(vm->top_self);
@@ -1547,6 +1546,7 @@ rb_thread_mark(void *ptr)
RUBY_MARK_UNLESS_NULL(th->fiber);
RUBY_MARK_UNLESS_NULL(th->root_fiber);
RUBY_MARK_UNLESS_NULL(th->stat_insn_usage);
+ RUBY_MARK_UNLESS_NULL(th->last_status);
RUBY_MARK_UNLESS_NULL(th->locking_mutex);
@@ -1595,6 +1595,7 @@ th_init2(rb_thread_t *th, VALUE self)
th->status = THREAD_RUNNABLE;
th->errinfo = Qnil;
+ th->last_status = Qnil;
#if USE_VALUE_CACHE
th->value_cache_ptr = &th->value_cache[0];