From a49d4af21edc046b453faa34be9a656f9debbf03 Mon Sep 17 00:00:00 2001 From: Christian Heller Date: Fri, 30 May 2025 15:20:28 +0200 Subject: [PATCH] Move PING processing out of SocketRecvLoop. --- ircplom.py | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/ircplom.py b/ircplom.py index b090868..ddea13e 100755 --- a/ircplom.py +++ b/ircplom.py @@ -408,10 +408,7 @@ class SocketRecvLoop(Loop): 'Loop receiving and translating socket messages towards main loop.' def process_bonus(self, yielded: str) -> None: - msg = IrcMessage.from_raw(yielded) - if msg.verb == 'PING': - self.broadcast('PING', msg.parameters[0]) - self.broadcast('RECV', str(msg)) + self.broadcast('RECV', IrcMessage.from_raw(yielded)) class KeyboardLoop(Loop): @@ -447,9 +444,12 @@ def run() -> None: raise event.payload if event.type_ == 'SEND': event.payload.send(conn) - elif event.type_ == 'PING': - q_to_main.put( - Event('SEND', IrcMessage('PONG', [event.payload]))) + elif event.type_ == 'RECV': + msg: IrcMessage = event.payload + if msg.verb == 'PING': + q_to_main.put( + Event('SEND', + IrcMessage('PONG', [msg.parameters[0]]))) if __name__ == '__main__': -- 2.30.2