aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--weed/server/master_grpc_server.go6
1 files changed, 4 insertions, 2 deletions
diff --git a/weed/server/master_grpc_server.go b/weed/server/master_grpc_server.go
index c8fe053fa..0a7bd5ef2 100644
--- a/weed/server/master_grpc_server.go
+++ b/weed/server/master_grpc_server.go
@@ -373,8 +373,10 @@ func (ms *MasterServer) deleteClient(clientName string) {
glog.V(0).Infof("- client %v", clientName)
ms.clientChansLock.Lock()
// close message chan, so that the KeepConnected go routine can exit
- close(ms.clientChans[clientName])
- delete(ms.clientChans, clientName)
+ if clientChan, ok := ms.clientChans[clientName]; ok {
+ close(clientChan)
+ delete(ms.clientChans, clientName)
+ }
ms.clientChansLock.Unlock()
}