--- a/libpurple/protocols/irc/irc.c Fri Sep 29 15:50:41 2017 -0400 +++ b/libpurple/protocols/irc/irc.c Tue Oct 24 14:12:05 2017 -0400 @@ -698,7 +698,7 @@ } } - len = purple_ssl_read(gsc, irc->inbuf + irc->inbufused, IRC_BUFSIZE_INCREMENT - 1); + len = purple_ssl_read(gsc, irc->inbuf + irc->inbufused, irc->inbuflen - irc->inbufused - 1); if (len > 0) { read_input(irc, len); } @@ -735,7 +735,7 @@ } } - len = read(irc->fd, irc->inbuf + irc->inbufused, IRC_BUFSIZE_INCREMENT - 1); + len = read(irc->fd, irc->inbuf + irc->inbufused, irc->inbuflen - irc->inbufused - 1); if (len < 0 && errno == EAGAIN) { return;