summary refs log tree commit diff
diff options
context:
space:
mode:
authorJune McEnroe <june@causal.agency>2018-12-14 16:48:16 -0500
committerJune McEnroe <june@causal.agency>2018-12-14 16:48:16 -0500
commita7681579fab98f8176272f646d816359254caa44 (patch)
tree8cd93c2144322463efdcfc06e24efe11db1e8bbf
parentFactor out ircQuit (diff)
downloadcatgirl-a7681579fab98f8176272f646d816359254caa44.tar.gz
catgirl-a7681579fab98f8176272f646d816359254caa44.zip
Treat EOF as expected if self.quit
znc doesn't seem to respond to QUIT with ERROR like an IRCd would.
Diffstat (limited to '')
-rw-r--r--irc.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/irc.c b/irc.c
index 78b1ed5..508678e 100644
--- a/irc.c
+++ b/irc.c
@@ -131,7 +131,11 @@ retry:
 	read = tls_read(client, &buf[len], sizeof(buf) - len);
 	if (read == TLS_WANT_POLLIN || read == TLS_WANT_POLLOUT) goto retry;
 	if (read < 0) errx(EX_IOERR, "tls_read: %s", tls_error(client));
-	if (!read) errx(EX_PROTOCOL, "unexpected eof");
+	if (!read) {
+		if (!self.quit) errx(EX_PROTOCOL, "unexpected eof");
+		uiExit();
+		exit(EX_OK);
+	}
 	len += read;
 
 	char *crlf;
mmit/format.c?h=1.7&id=b22e008d68e36719f3c6a808f8d8adc905da7250&follow=1'>Apply consecutive formatting codes at onceJune McEnroe 2018-09-14Add tests for formatParseJune McEnroe 2018-09-13Preview with nick in input windowJune McEnroe 2018-09-13Never send PRIVMSG to TagStatus or TagVerboseJune McEnroe 2018-09-13Move color selection to format.cJune McEnroe 2018-09-13Fix len for format->split at end of stringJune McEnroe 2018-09-13Avoid uninitialized x in uiReadJune McEnroe 2018-09-13Add IRCDefault to colors enumJune McEnroe 2018-09-13Return a format->split even at the end of the stringJune McEnroe 2018-09-13Fix weird tab-complete after commaJune McEnroe 2018-09-13Rewrite UI againJune McEnroe 2018-09-12Add note about C-oJune McEnroe 2018-09-12Use formatParse split to position input cursorJune McEnroe 2018-09-12Factor out IRC formatting parsingJune McEnroe 2018-09-11Add /help equivalent to /manJune McEnroe 2018-09-11Don't render every PM as a pingJune McEnroe 2018-09-11Add urlOpenMatchJune McEnroe 2018-09-10Depend on man.sh for chroot.tar targetJune McEnroe 2018-09-10Set LESSSECURE=1 in man.shJune McEnroe 2018-09-10Add /man commandJune McEnroe 2018-09-10Install man page in chrootJune McEnroe 2018-09-10Install man pageJune McEnroe 2018-09-10Split keys into subsections and document colorsJune McEnroe 2018-09-10Add "blank" lines to chatte.1June McEnroe 2018-09-10Document key bindings in chatte.1June McEnroe 2018-09-08Document slash commands in chatte.1June McEnroe