diff options
| author | Alexander Barton <alex@barton.de> | 2012-01-16 12:37:37 +0100 |
|---|---|---|
| committer | Alexander Barton <alex@barton.de> | 2012-01-16 12:37:37 +0100 |
| commit | c1656256df687c4a093ceb502de84bf4b0447f3c (patch) | |
| tree | 233f7f9af1943934fb80a7bbc2c4da8885b101bd /src | |
| parent | 1f4711a5474d2f0ea4664bd9b54f036af11f96cd (diff) | |
| download | ngircd-c1656256df687c4a093ceb502de84bf4b0447f3c.tar.gz ngircd-c1656256df687c4a093ceb502de84bf4b0447f3c.zip | |
PRIVMSG/NOTICE: don't stop list processing on invalid target
Process further targets, even if one has been a server ID: just skip this one with an error message and continue.
Diffstat (limited to 'src')
| -rw-r--r-- | src/ngircd/irc.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/ngircd/irc.c b/src/ngircd/irc.c index 2b94e33a..5af79396 100644 --- a/src/ngircd/irc.c +++ b/src/ngircd/irc.c @@ -469,11 +469,11 @@ Send_Message(CLIENT * Client, REQUEST * Req, int ForceType, bool SendErrors) #else if (Client_Type(cl) != ForceType) { #endif - if (!SendErrors) - return CONNECTED; - return IRC_WriteStrClient(from, ERR_NOSUCHNICK_MSG, - Client_ID(from), - currentTarget); + if (SendErrors && !IRC_WriteStrClient( + from, ERR_NOSUCHNICK_MSG,Client_ID(from), + currentTarget)) + return DISCONNECTED; + goto send_next_target; } #ifndef STRICT_RFC |