]> git.sesse.net Git - vlc/blobdiff - src/playlist/engine.c
pl_Yield(): return NULL when the playlist is gone (or going)
[vlc] / src / playlist / engine.c
index 93b3bcd4c70ea4d1062b5828b7f03870bfb53cbd..f6385d01e3a83f63e0d750f3f1ef4270aa39b50a 100644 (file)
@@ -173,9 +173,6 @@ static void playlist_Destructor( vlc_object_t * p_this )
 
     if( p_playlist->p_fetcher )
         vlc_object_release( p_playlist->p_fetcher );
-#ifndef NDEBUG
-    libvlc_priv (p_this->p_libvlc)->p_playlist = NULL; /* pl_Yield() will fail */
-#endif
 }
 
 /* Destroy remaining objects */
@@ -258,6 +255,18 @@ void playlist_set_current_input(
     }
 }
 
+/** Get current playing input.
+ */
+input_thread_t * playlist_CurrentInput( playlist_t * p_playlist )
+{
+    input_thread_t * p_input;
+    PL_LOCK;
+    p_input = p_playlist->p_input;
+    if( p_input ) vlc_object_yield( p_input );
+    PL_UNLOCK;
+    return p_input;
+}
+
 
 /**
  * @}