summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorYukihiro Matsumoto <[email protected]>2012-06-25 19:24:57 +0900
committerYukihiro Matsumoto <[email protected]>2012-06-25 19:24:57 +0900
commitc99b806f8bd29ff49b0f7384a105fe4cebc8511f (patch)
tree22cb9231fec714030dd5c50a7a985f3c175dc49e
parent8dc533ed5f5f4e63ef4b8391bfbe0dbb3b34052f (diff)
downloadmruby-c99b806f8bd29ff49b0f7384a105fe4cebc8511f.tar.gz
mruby-c99b806f8bd29ff49b0f7384a105fe4cebc8511f.zip
ci->acc should not be left uninitialized; close #303
-rw-r--r--src/vm.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/src/vm.c b/src/vm.c
index d7048f8f0..136ece3bd 100644
--- a/src/vm.c
+++ b/src/vm.c
@@ -711,6 +711,7 @@ mrb_run(mrb_state *mrb, struct RProc *proc, mrb_value self)
if (ci->argc == CALL_MAXARGS) ci->argc = -1;
ci->target_class = m->target_class;
ci->pc = pc + 1;
+ ci->acc = a;
/* prepare stack */
mrb->stack += a;
@@ -725,9 +726,6 @@ mrb_run(mrb_state *mrb, struct RProc *proc, mrb_value self)
NEXT;
}
else {
- /* fill callinfo */
- ci->acc = a;
-
/* setup environment for calling method */
proc = mrb->ci->proc = m;
irep = m->body.irep;