summaryrefslogtreecommitdiff
path: root/proc.c
diff options
context:
space:
mode:
Diffstat (limited to 'proc.c')
-rw-r--r--proc.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/proc.c b/proc.c
index 1ea190c3b3..8dcdf8fc3a 100644
--- a/proc.c
+++ b/proc.c
@@ -1350,7 +1350,8 @@ rb_mod_define_method(int argc, VALUE *argv, VALUE mod)
id = rb_to_id(argv[0]);
body = rb_block_lambda();
}
- else if (argc == 2) {
+ else {
+ rb_check_arity(argc, 1, 2);
id = rb_to_id(argv[0]);
body = argv[1];
if (!rb_obj_is_method(body) && !rb_obj_is_proc(body)) {
@@ -1359,9 +1360,6 @@ rb_mod_define_method(int argc, VALUE *argv, VALUE mod)
rb_obj_classname(body));
}
}
- else {
- rb_raise(rb_eArgError, "wrong number of arguments (%d for 1)", argc);
- }
if (rb_obj_is_method(body)) {
struct METHOD *method = (struct METHOD *)DATA_PTR(body);