diff --git a/src/sakia/core/net/node.py b/src/sakia/core/net/node.py index f1f2d4b5..fe2d5c2a 100644 --- a/src/sakia/core/net/node.py +++ b/src/sakia/core/net/node.py @@ -204,7 +204,7 @@ def jsonify(self): def close_ws(self): for ws in self._ws_connection.values(): if ws: - asyncio.wait_for(ws.close(), timeout=15) + asyncio.as_completed(ws.close(), timeout=15) @property def pubkey(self): diff --git a/src/sakia/main.py b/src/sakia/main.py index 8058c332..07fc4b84 100755 --- a/src/sakia/main.py +++ b/src/sakia/main.py @@ -50,10 +50,11 @@ def async_exception_handler(loop, context): for ignored in ("Unclosed", "socket.gaierror"): if ignored in line: return - for line in traceback.format_exception(*exc_info): - for ignored in ("Unclosed", "socket.gaierror"): - if ignored in line: - return + if exc_info: + for line in traceback.format_exception(*exc_info): + for ignored in ("Unclosed", "socket.gaierror"): + if ignored in line: + return os._exit(1)