diff options
author | Matthew Draper <matthew@trebex.net> | 2016-07-04 08:39:02 +0930 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-07-04 08:39:02 +0930 |
commit | 550303c05c48f17b699a13258608e04bf63cf0e8 (patch) | |
tree | 4cfc38fbba5f441b13b777f47dcf9f89af54ae3a /actioncable/lib | |
parent | ee50de03908f24c377d4842f759182fe9241c6fa (diff) | |
parent | 711d232f9344173d6a3f63d5239fe9a41f10e9bc (diff) | |
download | rails-550303c05c48f17b699a13258608e04bf63cf0e8.tar.gz rails-550303c05c48f17b699a13258608e04bf63cf0e8.tar.bz2 rails-550303c05c48f17b699a13258608e04bf63cf0e8.zip |
Merge pull request #25030 from mmmpa/pull_request
ActionCable, sometimes add_channel is not called.
Diffstat (limited to 'actioncable/lib')
-rw-r--r-- | actioncable/lib/action_cable/subscription_adapter/subscriber_map.rb | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/actioncable/lib/action_cable/subscription_adapter/subscriber_map.rb b/actioncable/lib/action_cable/subscription_adapter/subscriber_map.rb index 37eed09793..4ec513e3ba 100644 --- a/actioncable/lib/action_cable/subscription_adapter/subscriber_map.rb +++ b/actioncable/lib/action_cable/subscription_adapter/subscriber_map.rb @@ -32,7 +32,11 @@ module ActionCable end def broadcast(channel, message) - list = @sync.synchronize { @subscribers[channel].dup } + list = @sync.synchronize do + return if !@subscribers.key?(channel) + @subscribers[channel].dup + end + list.each do |subscriber| invoke_callback(subscriber, message) end |