diff options
-rw-r--r-- | src/irc/core/irc-servers.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/irc/core/irc-servers.c b/src/irc/core/irc-servers.c index 30f99684..3314aa24 100644 --- a/src/irc/core/irc-servers.c +++ b/src/irc/core/irc-servers.c @@ -325,8 +325,12 @@ static void server_cmd_timeout(IRC_SERVER_REC *server, GTimeVal *now) server->wait_cmd.tv_sec = 0; memcpy(&server->last_cmd, now, sizeof(GTimeVal)); - /* add to rawlog without CR+LF */ - cmd[len-2] = '\0'; + /* add to rawlog without [CR+]LF (/RAWQUOTE might not have + added the CR) */ + if (len > 2 && cmd[len-2] == '\r') + cmd[len-2] = '\0'; + else if (cmd[len-1] == '\n') + cmd[len-1] = '\0'; rawlog_output(server->rawlog, cmd); server_redirect_command(server, cmd, redirect); |