summary refs log tree commit diff
path: root/client.c
diff options
context:
space:
mode:
authorJune McEnroe <june@causal.agency>2019-10-24 01:17:43 -0400
committerJune McEnroe <june@causal.agency>2019-10-24 01:17:43 -0400
commit2f65cd3ada6e130c07826e935ea01841a7b671f0 (patch)
treea3823ddd19a20471c01d9d8abb0fe30e5b465bc2 /client.c
parentImplement client CAP for server-time (diff)
downloadpounce-2f65cd3ada6e130c07826e935ea01841a7b671f0.tar.gz
pounce-2f65cd3ada6e130c07826e935ea01841a7b671f0.zip
Ignore further CAP END
Diffstat (limited to '')
-rw-r--r--client.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/client.c b/client.c
index 3e6c2f9..18aef87 100644
--- a/client.c
+++ b/client.c
@@ -130,8 +130,10 @@ static void handleCap(struct Client *client, struct Message msg) {
 	if (!msg.params[0]) msg.params[0] = "";
 
 	if (!strcmp(msg.params[0], "END")) {
-		client->need &= ~NeedCapEnd;
-		if (!client->need) stateSync(client);
+		if (client->need & NeedCapEnd) {
+			client->need &= ~NeedCapEnd;
+			if (!client->need) stateSync(client);
+		}
 
 	} else if (!strcmp(msg.params[0], "LS")) {
 		client->need |= NeedCapEnd;