From 9314edd405ca80afb92563f7d4f1db7762408e35 Mon Sep 17 00:00:00 2001 From: Daniel Oaks Date: Tue, 29 Nov 2016 19:16:01 +1000 Subject: [PATCH] modes: Convey cmode changes to other channel members... --- irc/modes.go | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/irc/modes.go b/irc/modes.go index 88d7bc09..0d29d781 100644 --- a/irc/modes.go +++ b/irc/modes.go @@ -553,7 +553,9 @@ func cmodeHandler(server *Server, client *Client, msg ircmsg.IrcMessage) bool { if len(applied) > 0 { //TODO(dan): we should change the name of String and make it return a slice here args := append([]string{channel.name}, strings.Split(applied.String(), " ")...) - client.Send(nil, client.nickMaskString, "MODE", args...) + for member := range channel.members { + member.Send(nil, client.nickMaskString, "MODE", args...) + } } else { //TODO(dan): we should just make ModeString return a slice here args := append([]string{client.nick, channel.name}, strings.Split(channel.ModeString(client), " ")...)