From a07faca2d999e6f6207066075beb23975575b9aa Mon Sep 17 00:00:00 2001 From: threeandthreee Date: Sat, 29 Nov 2025 12:46:22 -0500 Subject: [PATCH] LADX: catch exception after closing magpie #5687 --- worlds/ladx/Tracker.py | 29 ++++++++++++++++------------- 1 file changed, 16 insertions(+), 13 deletions(-) diff --git a/worlds/ladx/Tracker.py b/worlds/ladx/Tracker.py index 93b746328c..adc3f1a197 100644 --- a/worlds/ladx/Tracker.py +++ b/worlds/ladx/Tracker.py @@ -195,21 +195,24 @@ class MagpieBridge: async def handler(self, websocket): self.ws = websocket while True: - message = json.loads(await websocket.recv()) - if message["type"] == "handshake": - logger.info( - f"Connected, supported features: {message['features']}") - self.features = message["features"] + try: + message = json.loads(await websocket.recv()) + if message["type"] == "handshake": + logger.info( + f"Connected, supported features: {message['features']}") + self.features = message["features"] - await self.send_handshAck() + await self.send_handshAck() - if message["type"] == "sendFull": - if "items" in self.features: - await self.send_all_inventory() - if "checks" in self.features: - await self.send_all_checks() - if self.use_entrance_tracker(): - await self.send_gps(diff=False) + if message["type"] == "sendFull": + if "items" in self.features: + await self.send_all_inventory() + if "checks" in self.features: + await self.send_all_checks() + if self.use_entrance_tracker(): + await self.send_gps(diff=False) + except websockets.exceptions.ConnectionClosedOK: + pass # Translate renamed IDs back to LADXR IDs @staticmethod