summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--vm_method.c4
2 files changed, 6 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index 46f92d37ed..edd459c9e0 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,4 +1,7 @@
-Sun Jul 5 08:08:25 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
+Sun Jul 5 08:11:59 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
+
+ * vm_method.c (Init_eval_method): registers notimplement_body as a
+ mark-object.
* vm_insnhelper.c (vm_yield_setup_block_args): restores the firs
arg where is overwritten at funcall. [ruby-core:24139]
diff --git a/vm_method.c b/vm_method.c
index f32ba388ac..3dff244cce 100644
--- a/vm_method.c
+++ b/vm_method.c
@@ -435,7 +435,7 @@ rb_method_boundp(VALUE klass, ID id, int ex)
return Qfalse;
}
if (rb_notimplement_body_p(method->nd_body))
- return Qfalse;
+ return Qfalse;
return Qtrue;
}
return Qfalse;
@@ -1175,7 +1175,7 @@ Init_eval_method(void)
undefined = rb_intern("method_undefined");
singleton_undefined = rb_intern("singleton_method_undefined");
- rb_global_variable((VALUE*)&notimplement_body);
notimplement_body = NEW_CFUNC(rb_f_notimplement, -1);
+ rb_gc_register_mark_object((VALUE)notimplement_body);
}