summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/irc/core/irc-servers.c8
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);