From 639f6e2799f33a7889c4ca48ae0e314e67214dfc Mon Sep 17 00:00:00 2001 From: "Yukihiro \"Matz\" Matsumoto" Date: Mon, 11 Feb 2019 15:17:56 +0900 Subject: No strict argument check for blocks when keyword arguments exist; ref #4270 --- src/vm.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/vm.c b/src/vm.c index 49c2bb85c..7904162be 100644 --- a/src/vm.c +++ b/src/vm.c @@ -1810,7 +1810,8 @@ RETRY_TRY_BLOCK: kdict = argv[argc-1]; mrb_hash_check_kdict(mrb, kdict); } - else if (r || argc <= m1+m2+o) { + else if (r || argc <= m1+m2+o + || !(mrb->c->ci->proc && MRB_PROC_STRICT_P(mrb->c->ci->proc))) { kdict = mrb_hash_new(mrb); kargs = 0; } -- cgit v1.2.3