diff --git a/irc/client.go b/irc/client.go index d0788ee8..9376927e 100644 --- a/irc/client.go +++ b/irc/client.go @@ -711,9 +711,11 @@ func (client *Client) run(session *Session) { } else if err == ircmsg.ErrorTagsTooLong { session.Send(nil, client.server.name, ERR_INPUTTOOLONG, client.Nick(), client.t("Input line contained excess tag data")) continue - } else if err == ircmsg.ErrorBodyTooLong && !client.server.Config().Server.Compatibility.allowTruncation { - session.Send(nil, client.server.name, ERR_INPUTTOOLONG, client.Nick(), client.t("Input line too long")) - continue + } else if err == ircmsg.ErrorBodyTooLong { + if !client.server.Config().Server.Compatibility.allowTruncation { + session.Send(nil, client.server.name, ERR_INPUTTOOLONG, client.Nick(), client.t("Input line too long")) + continue + } // else: proceed with the truncated line } else if err != nil { client.Quit(client.t("Received malformed line"), session) break