mirror of
https://github.com/norohind/AudioControl.git
synced 2025-06-13 13:52:10 +03:00
network: don't accept connection during shutdown
This commit is contained in:
parent
a5ab25af29
commit
226cd6180a
@ -18,6 +18,7 @@ class NetworkTransport(TransportABC):
|
||||
self._sock.listen(100)
|
||||
self._sock.setblocking(False)
|
||||
self._selector.register(self._sock, selectors.EVENT_READ, self._accept)
|
||||
self._running = True
|
||||
|
||||
self._connections: list[socket.socket] = list()
|
||||
|
||||
@ -34,6 +35,9 @@ class NetworkTransport(TransportABC):
|
||||
|
||||
def _accept(self, sock: socket.socket, mask: int):
|
||||
"""Callback which get called when accepting new connection"""
|
||||
if not self._running:
|
||||
logger.debug(f'Net: New connection during shutdown {sock.getpeername()}, not accepting')
|
||||
return
|
||||
|
||||
conn, addr = sock.accept()
|
||||
logger.debug(f'Net: Accepted {conn.getpeername()}')
|
||||
@ -64,7 +68,7 @@ class NetworkTransport(TransportABC):
|
||||
self.view_rcv_callback(event)
|
||||
|
||||
except Exception:
|
||||
logger.opt(exception=True).warning(f"Couldn't parse message from client: {data}")
|
||||
logger.opt(colors=False, exception=True).warning(f"Couldn't parse message from client: {data}")
|
||||
|
||||
def tick(self):
|
||||
events = self._selector.select(timeout=0)
|
||||
@ -74,6 +78,7 @@ class NetworkTransport(TransportABC):
|
||||
|
||||
def shutdown(self):
|
||||
logger.debug(f'Net: Shutting down')
|
||||
self._running = False
|
||||
while len(self._connections) > 0:
|
||||
self._close_conn(self._connections[0])
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user