diff options
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | proc.c | 10 |
2 files changed, 12 insertions, 2 deletions
@@ -1,3 +1,7 @@ +Sun Dec 20 11:01:57 2015 Koichi Sasada <ko1@atdot.net> + + * proc.c (rb_mod_define_method): fix notation. + Sun Dec 20 10:54:15 2015 Koichi Sasada <ko1@atdot.net> * proc.c (proc_new): fix notation. @@ -1782,8 +1782,14 @@ rb_mod_define_method(int argc, VALUE *argv, VALUE mod) } else { body = argv[1]; - is_method = rb_obj_is_method(body) != Qfalse; - if (!is_method && !rb_obj_is_proc(body)) { + + if (rb_obj_is_method(body)) { + is_method = TRUE; + } + else if (rb_obj_is_proc(body)) { + is_method = FALSE; + } + else { rb_raise(rb_eTypeError, "wrong argument type %s (expected Proc/Method)", rb_obj_classname(body)); |