summaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorYukihiro "Matz" Matsumoto <[email protected]>2017-11-22 12:19:40 +0900
committerYukihiro "Matz" Matsumoto <[email protected]>2017-11-22 12:19:40 +0900
commitcb4b042777d6ad293d9df21343bcfb6d579ecaea (patch)
tree9adf2824f07dafddf26a6228b4ef706ab55cbcd7 /src
parent393133e741bf168c78630c81ff2c7767fef018a6 (diff)
downloadmruby-cb4b042777d6ad293d9df21343bcfb6d579ecaea.tar.gz
mruby-cb4b042777d6ad293d9df21343bcfb6d579ecaea.zip
Remove fixed argument of `ecall()`; ref #3855 #3856
Diffstat (limited to 'src')
-rw-r--r--src/vm.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/vm.c b/src/vm.c
index 2c2d74db1..98a218178 100644
--- a/src/vm.c
+++ b/src/vm.c
@@ -306,7 +306,7 @@ cipop(mrb_state *mrb)
void mrb_exc_set(mrb_state *mrb, mrb_value exc);
static void
-ecall(mrb_state *mrb, int i)
+ecall(mrb_state *mrb)
{
struct RProc *p;
int nregs;
@@ -316,6 +316,7 @@ ecall(mrb_state *mrb, int i)
struct REnv *env;
ptrdiff_t cioff;
int ai = mrb_gc_arena_save(mrb);
+ int i = --c->eidx;
if (i<0) return;
if (ci - c->cibase > MRB_FUNCALL_DEPTH_MAX) {