diff options
author | Matthew Draper <matthew@trebex.net> | 2016-08-16 09:54:28 +0930 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-08-16 09:54:28 +0930 |
commit | d0bdd74d7f6fae3d69b3681d5bc2d5ef6f55a0f8 (patch) | |
tree | 5bfa3f6120f2599cebe8df72471d9e5038df69a0 /actionpack/lib/action_controller/metal | |
parent | ce234237b580011acca600ede6eb422fcf8f4b45 (diff) | |
parent | 285d7cad6a4b93cdeea469e6cc4504a934907746 (diff) | |
download | rails-d0bdd74d7f6fae3d69b3681d5bc2d5ef6f55a0f8.tar.gz rails-d0bdd74d7f6fae3d69b3681d5bc2d5ef6f55a0f8.tar.bz2 rails-d0bdd74d7f6fae3d69b3681d5bc2d5ef6f55a0f8.zip |
Merge pull request #26177 from achinn/ac-live-deadlock
Fix ActionController::Live deadlock
Diffstat (limited to 'actionpack/lib/action_controller/metal')
-rw-r--r-- | actionpack/lib/action_controller/metal/live.rb | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/actionpack/lib/action_controller/metal/live.rb b/actionpack/lib/action_controller/metal/live.rb index a18055c899..26a16104db 100644 --- a/actionpack/lib/action_controller/metal/live.rb +++ b/actionpack/lib/action_controller/metal/live.rb @@ -205,7 +205,12 @@ module ActionController private def each_chunk(&block) - while str = @buf.pop + loop do + str = nil + ActiveSupport::Dependencies.interlock.permit_concurrent_loads do + str = @buf.pop + end + break unless str yield str end end |