From 270ea41b376d82b9685746ea363f64cbc84e79c9 Mon Sep 17 00:00:00 2001 From: "Yukihiro \"Matz\" Matsumoto" Date: Fri, 30 Dec 2016 22:09:32 +0900 Subject: method_missing() may have CALL_MAXARGS-1 arguments; fix #3351 The issue was reported by https://hackerone.com/ston3 --- src/vm.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/vm.c b/src/vm.c index 1ea23afc7..cca0fd03b 100644 --- a/src/vm.c +++ b/src/vm.c @@ -1143,6 +1143,9 @@ RETRY_TRY_BLOCK: else { value_move(regs+a+2, regs+a+1, ++n); regs[a+1] = sym; + if (n == CALL_MAXARGS) { + regs[a+1] = mrb_ary_new_from_values(mrb, n, regs+a+1); + } } } -- cgit v1.2.3