aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/lib/action_dispatch
diff options
context:
space:
mode:
authorJeremy Kemper <jeremy@bitsweat.net>2012-04-20 12:17:03 -0700
committerJeremy Kemper <jeremy@bitsweat.net>2012-04-20 16:02:12 -0700
commit42f6e9fb38101c0fe199d5425bd71965f9a6dfc9 (patch)
tree88df125892d8bcdf141bba092c03b4412893178c /actionpack/lib/action_dispatch
parent99eae3f82a5a2b7c5e485ee1d370852e65ab8bde (diff)
downloadrails-42f6e9fb38101c0fe199d5425bd71965f9a6dfc9.tar.gz
rails-42f6e9fb38101c0fe199d5425bd71965f9a6dfc9.tar.bz2
rails-42f6e9fb38101c0fe199d5425bd71965f9a6dfc9.zip
Freeze the middleware stack after it's built
So apps that accidentally add middlewares later aren't unwittingly dumping them in a black hole. Closes #5911
Diffstat (limited to 'actionpack/lib/action_dispatch')
-rw-r--r--actionpack/lib/action_dispatch/middleware/stack.rb2
1 files changed, 1 insertions, 1 deletions
diff --git a/actionpack/lib/action_dispatch/middleware/stack.rb b/actionpack/lib/action_dispatch/middleware/stack.rb
index 28e8fbdab8..12bc438be3 100644
--- a/actionpack/lib/action_dispatch/middleware/stack.rb
+++ b/actionpack/lib/action_dispatch/middleware/stack.rb
@@ -110,7 +110,7 @@ module ActionDispatch
def build(app = nil, &block)
app ||= block
raise "MiddlewareStack#build requires an app" unless app
- middlewares.reverse.inject(app) { |a, e| e.build(a) }
+ middlewares.freeze.reverse.inject(app) { |a, e| e.build(a) }
end
protected