summaryrefslogtreecommitdiffhomepage
path: root/mrbgems/mruby-compiler/core/codegen.c
diff options
context:
space:
mode:
authorBouke van der Bijl <[email protected]>2016-11-14 15:07:07 -0500
committerBouke van der Bijl <[email protected]>2016-11-24 10:18:48 -0500
commit12539825773ddb13fac38091d13341b816ac23fa (patch)
treeae50c1e33d6b9eaaecd916f61dbf463a8a3f77a4 /mrbgems/mruby-compiler/core/codegen.c
parenta630c4f413f6af764e68210430e8b61a435d38d7 (diff)
downloadmruby-12539825773ddb13fac38091d13341b816ac23fa.tar.gz
mruby-12539825773ddb13fac38091d13341b816ac23fa.zip
Fix codegen issue causing misaligned register
Reported by https://hackerone.com/haquaman
Diffstat (limited to 'mrbgems/mruby-compiler/core/codegen.c')
-rw-r--r--mrbgems/mruby-compiler/core/codegen.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/mrbgems/mruby-compiler/core/codegen.c b/mrbgems/mruby-compiler/core/codegen.c
index 0c84dd558..75adbefdd 100644
--- a/mrbgems/mruby-compiler/core/codegen.c
+++ b/mrbgems/mruby-compiler/core/codegen.c
@@ -2024,6 +2024,7 @@ codegen(codegen_scope *s, node *tree, int val)
}
genop(s, MKOP_sBx(OP_JMP, s->loop->pc2 - s->pc));
}
+ if (val) push();
break;
case NODE_RETRY:
@@ -2058,6 +2059,7 @@ codegen(codegen_scope *s, node *tree, int val)
genop(s, MKOP_sBx(OP_JMP, lp->pc1 - s->pc));
}
}
+ if (val) push();
}
break;