diff options
| author | 2019-03-05 11:29:28 +0000 | |
|---|---|---|
| committer | 2019-03-05 11:29:46 +0000 | |
| commit | 91c2ab03ba66577bb3b2f5aff97561c122b9b4b8 (patch) | |
| tree | 8ec496e3a9664cf4d4cddcf71c87a417e3f8611c | |
| parent | Don't send random quit quote on SIGINT (diff) | |
| signature | ||
add IRCServer.send_enabled, to prevent sending after QUIT in signals.py
| -rw-r--r-- | modules/signals.py | 1 | ||||
| -rw-r--r-- | src/IRCServer.py | 5 |
2 files changed, 6 insertions, 0 deletions
diff --git a/modules/signals.py b/modules/signals.py index 15eeab9f..e8af5d83 100644 --- a/modules/signals.py +++ b/modules/signals.py @@ -20,6 +20,7 @@ class Module(ModuleManager.BaseModule): for server in self.bot.servers.values(): line = server.send_quit("Shutting down") + server.send_enabled = False line.on_send(self._make_hook(server)) def _make_hook(self, server): diff --git a/src/IRCServer.py b/src/IRCServer.py index d878fdf5..d33fa228 100644 --- a/src/IRCServer.py +++ b/src/IRCServer.py @@ -58,7 +58,9 @@ class Server(IRCObject.Object): self.motd_done = False self.attempted_join = {} # type: typing.Dict[str, typing.Optional[str]] + self.ping_sent = False + self.send_enabled = True self.events.on("timer.rejoin").hook(self.try_rejoin) @@ -238,6 +240,9 @@ class Server(IRCObject.Object): return lines def send(self, line_parsed: IRCLine.ParsedLine): + if not self.send_enabled: + return None + self.events.on("preprocess.send").on(line_parsed.command ).call_unsafe(server=self, line=line_parsed) |
