aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/lib
diff options
context:
space:
mode:
authorAndrew White <pixeltrix@users.noreply.github.com>2014-12-13 16:21:55 +0000
committerAndrew White <pixeltrix@users.noreply.github.com>2014-12-13 16:21:55 +0000
commitc709925d2d9b4f7ea50e1f0242b5cd2496ccdcb6 (patch)
tree364f24c8e612f63d6ca1739a38353ff9f1d23455 /actionpack/lib
parent9688270d3e0994ce57de0adbc72b3ab4faaf2c32 (diff)
parent1a50be823186082e8b5a29d8e9ea3a289318d9c1 (diff)
downloadrails-c709925d2d9b4f7ea50e1f0242b5cd2496ccdcb6.tar.gz
rails-c709925d2d9b4f7ea50e1f0242b5cd2496ccdcb6.tar.bz2
rails-c709925d2d9b4f7ea50e1f0242b5cd2496ccdcb6.zip
Merge pull request #18020 from binaryberry/handle-positional-args-with-format-false
Fix handling of positional url helper arguments when format is false
Diffstat (limited to 'actionpack/lib')
-rw-r--r--actionpack/lib/action_dispatch/routing/route_set.rb10
1 files changed, 8 insertions, 2 deletions
diff --git a/actionpack/lib/action_dispatch/routing/route_set.rb b/actionpack/lib/action_dispatch/routing/route_set.rb
index f3144dc2d3..34cd06fd58 100644
--- a/actionpack/lib/action_dispatch/routing/route_set.rb
+++ b/actionpack/lib/action_dispatch/routing/route_set.rb
@@ -280,9 +280,15 @@ module ActionDispatch
end
def handle_positional_args(controller_options, inner_options, args, result, path_params)
-
if args.size > 0
- if args.size < path_params.size - 1 # take format into account
+ # take format into account
+ if path_params.include?(:format)
+ path_params_size = path_params.size - 1
+ else
+ path_params_size = path_params.size
+ end
+
+ if args.size < path_params_size
path_params -= controller_options.keys
path_params -= result.keys
end