summaryrefslogtreecommitdiff
path: root/lib/drb
diff options
context:
space:
mode:
authorkazu <kazu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2018-10-20 13:14:00 +0000
committerkazu <kazu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2018-10-20 13:14:00 +0000
commiteab51f71d608ae38c42be7962acbb426ceac5f7d (patch)
tree4538600e65ff05a67f7c74d6f8425791570919ee /lib/drb
parent19931ae1a080af842b919dba3a89db22d2c32d36 (diff)
Revert "Revert "Reset primary_server when remove_server"" [ci skip]
This reverts commit d2671c96f32e6fbbd39162a2c9042dcaf3bf2d68. previous reverting is commit miss git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65246 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib/drb')
-rw-r--r--lib/drb/drb.rb5
1 files changed, 5 insertions, 0 deletions
diff --git a/lib/drb/drb.rb b/lib/drb/drb.rb
index a20ee1f143..6da8c5f6a7 100644
--- a/lib/drb/drb.rb
+++ b/lib/drb/drb.rb
@@ -1866,6 +1866,11 @@ module DRb
# Removes +server+ from the list of registered servers.
def remove_server(server)
@server.delete(server.uri)
+ mutex.synchronize do
+ if @primary_server == server
+ @primary_server = nil
+ end
+ end
end
module_function :remove_server