]> git.sesse.net Git - vlc/commitdiff
udp: fix potential deadlock at exit
authorRémi Denis-Courmont <remi@remlab.net>
Tue, 24 Feb 2015 21:12:28 +0000 (23:12 +0200)
committerRémi Denis-Courmont <remi@remlab.net>
Wed, 25 Feb 2015 16:38:30 +0000 (18:38 +0200)
modules/access/udp.c

index 76f68a2992f49c7adde42e8db74797b540e99eeb..1a176297bff204c9c0062062237484ec19cbc06c 100644 (file)
@@ -232,8 +232,14 @@ static int Control( access_t *p_access, int i_query, va_list args )
 static block_t *BlockUDP( access_t *p_access )
 {
     access_sys_t *sys = p_access->p_sys;
+    block_t *block;
 
-    return block_FifoGet( sys->fifo );
+    if( p_access->info.b_eof )
+        return NULL;
+
+    block = block_FifoGet( sys->fifo );
+    p_access->info.b_eof = block == NULL;
+    return block;
 }
 
 /*****************************************************************************