[vlc-devel] [PATCH] net_Read: don't exit loop if first read	returned 0
    Rafaël Carré 
    funman at videolan.org
       
    Wed Sep 18 22:15:45 CEST 2013
    
    
  
Wait until poll() signaled that data is available
---
 src/network/io.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/network/io.c b/src/network/io.c
index a8ea870..42cd732 100644
--- a/src/network/io.c
+++ b/src/network/io.c
@@ -264,6 +264,7 @@ net_Read (vlc_object_t *restrict p_this, int fd, const v_socket_t *vs,
 
     ufd[0].fd = fd;
     ufd[0].events = POLLIN;
+    ufd[0].revents = 0;
     ufd[1].fd = vlc_object_waitpipe (p_this);
     ufd[1].events = POLLIN;
 
@@ -317,7 +318,7 @@ net_Read (vlc_object_t *restrict p_this, int fd, const v_socket_t *vs,
             if (!waitall || i_buflen == 0)
                 break;
         }
-        else /* n == 0 */
+        else if (ufd[0].revents) /* n == 0 */
             break;/* end of stream or empty packet */
 
         if (ufd[1].fd == -1)
-- 
1.8.1.2
    
    
More information about the vlc-devel
mailing list