From 4bab1aea3094c2fa6cd8ba96a42eda905a933581 Mon Sep 17 00:00:00 2001 From: jesopo Date: Fri, 9 Nov 2018 10:43:05 +0000 Subject: Add a way to more explicitly denote when a CAP handshake has ended early --- modules/line_handler.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'modules/line_handler.py') diff --git a/modules/line_handler.py b/modules/line_handler.py index bdb0c70b..dc38e675 100644 --- a/modules/line_handler.py +++ b/modules/line_handler.py @@ -265,6 +265,7 @@ class Module(ModuleManager.BaseModule): is_multiline = len(event["args"]) > 2 and event["args"][2] == "*" if subcommand == "ls": + event["server"].cap_started = True event["server"].server_capabilities.update(capabilities) if not is_multiline: matched_capabilities = set(event["server" @@ -292,13 +293,14 @@ class Module(ModuleManager.BaseModule): elif subcommand == "ack": event["server"].capabilities.update(capabilities) if not is_multiline: - results = self.events.on("received.cap.ack").call( + self.events.on("received.cap.ack").call( capabilities=event["server"].capabilities, server=event["server"]) - if not False in results: - if not event["server"].waiting_for_capabilities(): - event["server"].send_capability_end() + if event["server"].cap_started and not event["server" + ].waiting_for_capabilities(): + event["server"].cap_started = False + event["server"].send_capability_end() elif subcommand == "nack": event["server"].send_capability_end() -- cgit v1.3.1-10-gc9f91