aboutsummaryrefslogtreecommitdiffstats
path: root/railties/lib/rails/configuration.rb
diff options
context:
space:
mode:
authorGuo Xiang Tan <tgx_world@hotmail.com>2015-02-19 02:35:51 +0800
committerGuo Xiang Tan <tgx_world@hotmail.com>2015-02-19 08:44:24 +0800
commita39498ae060f07132ddbbc45933a819686f0eb24 (patch)
tree6a6466f299cde51bc1cc38bf1403cedd8144f6ab /railties/lib/rails/configuration.rb
parent28fccad2c4ca8159b1c827026cdd09de9c5a3669 (diff)
downloadrails-a39498ae060f07132ddbbc45933a819686f0eb24.tar.gz
rails-a39498ae060f07132ddbbc45933a819686f0eb24.tar.bz2
rails-a39498ae060f07132ddbbc45933a819686f0eb24.zip
Allow Rack::Runtime to be deleted from middleware stack.
Fixes: https://github.com/rails/rails/issues/16433.
Diffstat (limited to 'railties/lib/rails/configuration.rb')
-rw-r--r--railties/lib/rails/configuration.rb6
1 files changed, 4 insertions, 2 deletions
diff --git a/railties/lib/rails/configuration.rb b/railties/lib/rails/configuration.rb
index f99cec04c5..e1ee214dc9 100644
--- a/railties/lib/rails/configuration.rb
+++ b/railties/lib/rails/configuration.rb
@@ -35,6 +35,7 @@ module Rails
class MiddlewareStackProxy
def initialize
@operations = []
+ @delete_operations = []
end
def insert_before(*args, &block)
@@ -56,7 +57,7 @@ module Rails
end
def delete(*args, &block)
- @operations << [__method__, args, block]
+ @delete_operations << [__method__, args, block]
end
def unshift(*args, &block)
@@ -64,9 +65,10 @@ module Rails
end
def merge_into(other) #:nodoc:
- @operations.each do |operation, args, block|
+ @operations.concat(@delete_operations).each do |operation, args, block|
other.send(operation, *args, &block)
end
+
other
end
end