diff options
| author | Paul Sokolovsky <pfalcon@users.sourceforge.net> | 2016-04-14 00:58:51 +0300 |
|---|---|---|
| committer | Paul Sokolovsky <pfalcon@users.sourceforge.net> | 2016-04-14 00:59:09 +0300 |
| commit | fef0d9818a52c2e8331590a18a49cdd3fa64ae81 (patch) | |
| tree | 7857f409bdd8788472a55e7674f6ba90fcfc7076 | |
| parent | f30b6f0af56c4358909f2a9b9d696a8f4f920f81 (diff) | |
extmod/modlwip: lwip_tcp_receive(): Properly handle EOF for non-blocking sock.
| -rw-r--r-- | extmod/modlwip.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/extmod/modlwip.c b/extmod/modlwip.c index 1ebcd8923..441fd8cec 100644 --- a/extmod/modlwip.c +++ b/extmod/modlwip.c @@ -451,6 +451,9 @@ STATIC mp_uint_t lwip_tcp_receive(lwip_socket_obj_t *socket, byte *buf, mp_uint_ // Non-blocking socket if (socket->timeout == 0) { + if (socket->state == STATE_PEER_CLOSED) { + return 0; + } *_errno = EAGAIN; return -1; } |
