diff --git a/socketserver/internal/server/publisher.go b/socketserver/internal/server/publisher.go index d9658ac7..5c1c71dd 100644 --- a/socketserver/internal/server/publisher.go +++ b/socketserver/internal/server/publisher.go @@ -144,9 +144,11 @@ func UnsubscribeAll(client *ClientInfo) { func UnsubscribeSingleChat(client *ClientInfo, channelName string) { ChatSubscriptionLock.RLock() list := ChatSubscriptionInfo[channelName] - list.Lock() - RemoveFromSliceC(&list.Members, client.MessageChannel) - list.Unlock() + if list != nil { + list.Lock() + RemoveFromSliceC(&list.Members, client.MessageChannel) + list.Unlock() + } ChatSubscriptionLock.RUnlock() }