vlc | branch: master | Rémi Denis-Courmont <r...@remlab.net> | Thu Nov 17 
22:05:18 2016 +0200| [963dbe80be2bd658750cbcb3cd7d5ab03abb0b05] | committer: 
Rémi Denis-Courmont

playlist: unregister input item callbacks at exit (fixes #17507)

Destroy remaining playlist items normally.

This does NOT fix #17652.

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=963dbe80be2bd658750cbcb3cd7d5ab03abb0b05
---

 src/playlist/engine.c | 9 +++------
 1 file changed, 3 insertions(+), 6 deletions(-)

diff --git a/src/playlist/engine.c b/src/playlist/engine.c
index feda7ad..dbb2723 100644
--- a/src/playlist/engine.c
+++ b/src/playlist/engine.c
@@ -324,17 +324,14 @@ void playlist_Destroy( playlist_t *p_playlist )
     set_current_status_node( p_playlist, NULL );
     /* Release the current item */
     set_current_status_item( p_playlist, NULL );
+
+    /* Remove all remaining items */
+    playlist_NodeDelete( p_playlist, p_playlist->p_root, true );
     PL_UNLOCK;
 
     vlc_cond_destroy( &p_sys->signal );
     vlc_mutex_destroy( &p_sys->lock );
 
-    /* Remove all remaining items */
-    FOREACH_ARRAY( playlist_item_t *p_del, p_sys->all_items )
-        free( p_del->pp_children );
-        vlc_gc_decref( p_del->p_input );
-        free( p_del );
-    FOREACH_END();
     ARRAY_RESET( p_sys->all_items );
 
     ARRAY_RESET( p_playlist->items );

_______________________________________________
vlc-commits mailing list
vlc-commits@videolan.org
https://mailman.videolan.org/listinfo/vlc-commits

Reply via email to