avformat/unix: fix handling of EOF in case of SOCK_STREAM.
authorBela Bodecs <bodecsb@vivanet.hu>
Tue, 20 Mar 2018 22:24:11 +0000 (23:24 +0100)
committerNicolas George <george@nsup.org>
Wed, 21 Mar 2018 18:02:06 +0000 (19:02 +0100)
When recv() returns 0 in case of SOCK_STREAM type, it means EOF and with
this patch returns value accordingly.

Signed-off-by: Bela Bodecs <bodecsb@vivanet.hu>
libavformat/unix.c

index 4f01d14..38016db 100644 (file)
@@ -111,6 +111,8 @@ static int unix_read(URLContext *h, uint8_t *buf, int size)
             return ret;
     }
     ret = recv(s->fd, buf, size, 0);
+    if (!ret && s->type == SOCK_STREAM)
+        return AVERROR_EOF;
     return ret < 0 ? ff_neterrno() : ret;
 }