aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack
diff options
context:
space:
mode:
Diffstat (limited to 'actionpack')
-rw-r--r--actionpack/lib/action_controller/metal/live.rb5
-rw-r--r--actionpack/test/dispatch/live_response_test.rb2
2 files changed, 7 insertions, 0 deletions
diff --git a/actionpack/lib/action_controller/metal/live.rb b/actionpack/lib/action_controller/metal/live.rb
index d1734f2138..3c1325cdb4 100644
--- a/actionpack/lib/action_controller/metal/live.rb
+++ b/actionpack/lib/action_controller/metal/live.rb
@@ -78,6 +78,11 @@ module ActionController # :nodoc:
super(status, header, body)
end
+ def commit!
+ headers.freeze
+ super
+ end
+
private
def build_buffer(response, body)
diff --git a/actionpack/test/dispatch/live_response_test.rb b/actionpack/test/dispatch/live_response_test.rb
index d17d516a0b..87a6b1383d 100644
--- a/actionpack/test/dispatch/live_response_test.rb
+++ b/actionpack/test/dispatch/live_response_test.rb
@@ -44,6 +44,7 @@ module ActionController
def test_headers_cannot_be_written_after_write
@response.stream.write 'omg'
+ assert @response.headers.frozen?
e = assert_raises(ActionDispatch::IllegalStateError) do
@response.headers['Content-Length'] = "zomg"
end
@@ -54,6 +55,7 @@ module ActionController
def test_headers_cannot_be_written_after_close
@response.stream.close
+ assert @response.headers.frozen?
e = assert_raises(ActionDispatch::IllegalStateError) do
@response.headers['Content-Length'] = "zomg"
end