diff --git a/adafruit_wiznet5k/adafruit_wiznet5k.py b/adafruit_wiznet5k/adafruit_wiznet5k.py index b3d08bb..8fc6afb 100644 --- a/adafruit_wiznet5k/adafruit_wiznet5k.py +++ b/adafruit_wiznet5k/adafruit_wiznet5k.py @@ -660,13 +660,11 @@ def socket_listen(self, socket_num: int, port: int, conn_mode: int = _SNMR_TCP) # Send listen command self._write_sncr(socket_num, _CMD_SOCK_LISTEN) # Wait until ready - status = SNSR_SOCK_CLOSED - while status not in { + while (status := self._read_snsr(socket_num)) not in { SNSR_SOCK_LISTEN, SNSR_SOCK_ESTABLISHED, _SNSR_SOCK_UDP, }: - status = self._read_snsr(socket_num) if status == SNSR_SOCK_CLOSED: raise RuntimeError("Listening socket closed.")