aboutsummaryrefslogtreecommitdiffstats
path: root/parse.y
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2017-04-24 06:17:55 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2017-04-24 06:17:55 +0000
commitb2abac2e8b475e0e19a398e79b7ff2b6170e1d3d (patch)
tree42d30e2e7babdd137c5f0176c09ac3c20422cbd8 /parse.y
parent978b1f6ecca934687a9be242655c621241ea7d9c (diff)
downloadruby-b2abac2e8b475e0e19a398e79b7ff2b6170e1d3d.tar.gz
parse.y: args tail at error
* parse.y (new_args_tail_gen): abandon parsing arguments after error. reported by ilsani Martino Sani (ilsani) at https://hackerone.com/reports/221201 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58466 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'parse.y')
-rw-r--r--parse.y1
1 files changed, 1 insertions, 0 deletions
diff --git a/parse.y b/parse.y
index 11cab865a2..86486ac38a 100644
--- a/parse.y
+++ b/parse.y
@@ -9965,6 +9965,7 @@ new_args_tail_gen(struct parser_params *parser, NODE *k, ID kr, ID b)
args = ZALLOC(struct rb_args_info);
node = NEW_NODE(NODE_ARGS, 0, 0, args);
+ if (parser->error_p) return node;
args->block_arg = b;
args->kw_args = k;