summaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorYukihiro "Matz" Matsumoto <[email protected]>2014-06-25 13:43:13 +0900
committerYukihiro "Matz" Matsumoto <[email protected]>2014-06-25 13:43:13 +0900
commit9dab02224d5ad271ee89e6d7dba4d9cd6a3ce7c5 (patch)
treeca5aa32ef0307895c70335d4f5eb1650bef98d40 /src
parent000fae415b8bc12e798291a717cd5a3e8008153f (diff)
parent8548aebcfafa01001f99b591bc3454188b78ca96 (diff)
downloadmruby-9dab02224d5ad271ee89e6d7dba4d9cd6a3ce7c5.tar.gz
mruby-9dab02224d5ad271ee89e6d7dba4d9cd6a3ce7c5.zip
Merge branch 'master' of github.com:mruby/mruby
Diffstat (limited to 'src')
-rw-r--r--src/proc.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/proc.c b/src/proc.c
index a61296ed4..1511725d9 100644
--- a/src/proc.c
+++ b/src/proc.c
@@ -156,6 +156,12 @@ mrb_proc_arity(mrb_state *mrb, mrb_value self)
// TODO cfunc aspec not implemented yet
return mrb_fixnum_value(-1);
}
+
+ // arity is depend on OP_ENTER
+ if (GET_OPCODE(*iseq) != OP_ENTER) {
+ return mrb_fixnum_value(0);
+ }
+
aspec = GETARG_Ax(*iseq);
ma = MRB_ASPEC_REQ(aspec);
ra = MRB_ASPEC_REST(aspec);