From 9ff085264c5ce3db12290c68bc8373578234e425 Mon Sep 17 00:00:00 2001 From: dm1try Date: Sat, 11 Jan 2020 22:24:15 +0300 Subject: [PATCH] fix args forwarding in Middleware::Stack#merge_with for ruby 2.7.0 ref #1967 --- CHANGELOG.md | 1 + lib/grape/middleware/stack.rb | 3 ++- spec/grape/middleware/stack_spec.rb | 9 +++++++++ 3 files changed, 12 insertions(+), 1 deletion(-) diff --git a/lib/grape/middleware/stack.rb b/lib/grape/middleware/stack.rb index 8509a4653..488a51498 100644 --- a/lib/grape/middleware/stack.rb +++ b/lib/grape/middleware/stack.rb @@ -78,7 +78,8 @@ def use(*args, &block) def merge_with(middleware_specs) middleware_specs.each do |operation, *args| if args.last.is_a?(Proc) - public_send(operation, *args, &args.pop) + last_proc = args.pop + public_send(operation, *args, &last_proc) else public_send(operation, *args) end