Skip to content

Commit

Permalink
Fix hangup on reading of closed socket
Browse files Browse the repository at this point in the history
We cannot get more date on closed socket, return what we have, if anythink
  • Loading branch information
pinkavaj committed Mar 3, 2024
1 parent a0e9562 commit dbf160c
Showing 1 changed file with 6 additions and 0 deletions.
6 changes: 6 additions & 0 deletions adafruit_wiznet5k/adafruit_wiznet5k_socket.py
Original file line number Diff line number Diff line change
Expand Up @@ -594,6 +594,12 @@ def recv_into(self, buffer: bytearray, nbytes: int = 0, flags: int = 0) -> int:
elif num_read > 0:
# We got a message, but there are no more bytes to read, so we can stop.
break
elif self._status in (
wiznet5k.adafruit_wiznet5k.SNSR_SOCK_CLOSED,
wiznet5k.adafruit_wiznet5k.SNSR_SOCK_CLOSE_WAIT,
):
# No bytes to read and we will not get more, stop.
break
# No bytes yet, or more bytes requested.
if self._timeout > 0 and time.monotonic() - last_read_time > self._timeout:
raise timeout("timed out")
Expand Down

0 comments on commit dbf160c

Please sign in to comment.