Merge pull request #224 from dh1tw/rpc-server-subscribe-deadlock

fix possible deadlock since code can return without unlocking the Mutex
This commit is contained in:
Asim Aslam 2018-01-02 10:22:13 +00:00 committed by GitHub
commit 45420d8413
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -182,12 +182,12 @@ func (s *rpcServer) Subscribe(sb Subscriber) error {
}
s.Lock()
defer s.Unlock()
_, ok = s.subscribers[sub]
if ok {
return fmt.Errorf("subscriber %v already exists", s)
}
s.subscribers[sub] = nil
s.Unlock()
return nil
}