diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/ngircd/irc.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/ngircd/irc.c b/src/ngircd/irc.c index dc3b2f2e..12fd8214 100644 --- a/src/ngircd/irc.c +++ b/src/ngircd/irc.c @@ -694,7 +694,10 @@ Send_Message(CLIENT * Client, REQUEST * Req, int ForceType, bool SendErrors) goto send_next_target; } - if (Client_HasMode(cl, 'C')) { + if (Client_HasMode(cl, 'C') && + !Client_HasMode(from, 'o') && + !(Client_Type(from) == CLIENT_SERVER) && + !(Client_Type(from) == CLIENT_SERVICE)) { cl2chan = Channel_FirstChannelOf(cl); while (cl2chan) { chan = Channel_GetChannel(cl2chan); |