diff options
| author | Bouke van der Bijl <[email protected]> | 2016-12-02 09:48:28 -0500 |
|---|---|---|
| committer | Bouke van der Bijl <[email protected]> | 2016-12-07 15:14:17 -0500 |
| commit | d56a19cbf526190de036130fe3a5bf14a0705ee2 (patch) | |
| tree | 9ab3653a11fb44464c407a53dcd7fda807cff588 /mrbgems/mruby-compiler | |
| parent | 5930a6ebc7a5ebf0c9b2dfe1d250935e6ddaeceb (diff) | |
| download | mruby-d56a19cbf526190de036130fe3a5bf14a0705ee2.tar.gz mruby-d56a19cbf526190de036130fe3a5bf14a0705ee2.zip | |
Don't generate code for NODE_NEGATE if the result isn't used
Reported by https://hackerone.com/haquaman
Diffstat (limited to 'mrbgems/mruby-compiler')
| -rw-r--r-- | mrbgems/mruby-compiler/core/codegen.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/mrbgems/mruby-compiler/core/codegen.c b/mrbgems/mruby-compiler/core/codegen.c index b2cd12225..891c4f62b 100644 --- a/mrbgems/mruby-compiler/core/codegen.c +++ b/mrbgems/mruby-compiler/core/codegen.c @@ -2223,6 +2223,10 @@ codegen(codegen_scope *s, node *tree, int val) { nt = (intptr_t)tree->car; tree = tree->cdr; + if (!val) { + codegen(s, tree, NOVAL); + break; + } switch (nt) { case NODE_FLOAT: { |
