1
0
Fork 0
forked from External/ergo

channel: RWMutex for members access

This commit is contained in:
Daniel Oaks 2017-01-11 02:09:08 +10:00
parent efb3000717
commit 6f7c683247
5 changed files with 69 additions and 0 deletions

View file

@ -345,6 +345,9 @@ func cmodeHandler(server *Server, client *Client, msg ircmsg.IrcMessage) bool {
channelName, err := CasefoldChannel(msg.Params[0])
channel := server.channels.Get(channelName)
channel.membersMutex.Lock()
defer channel.membersMutex.Unlock()
if err != nil || channel == nil {
client.Send(nil, server.name, ERR_NOSUCHCHANNEL, client.nick, msg.Params[0], "No such channel")
return false