]> git.sesse.net Git - vlc/commitdiff
UPnP_Intel: yield the playlist
authorRémi Denis-Courmont <rem@videolan.org>
Wed, 7 May 2008 18:28:54 +0000 (21:28 +0300)
committerRémi Denis-Courmont <rem@videolan.org>
Wed, 7 May 2008 18:28:54 +0000 (21:28 +0300)
(Could someone please review these commit)

modules/services_discovery/upnp_intel.cpp

index d745e9b59bdefd9d98d21c88bb331b62e6633d7f..e875c35572baf06172b0651bde102281a5bdfa86 100644 (file)
@@ -50,6 +50,7 @@
 
 struct services_discovery_sys_t
 {
+    playlist_t *p_playlist;
     playlist_item_t *p_node_cat;
     playlist_item_t *p_node_one;
 };
@@ -254,6 +255,10 @@ private:
 static int Open( vlc_object_t* );
 static void Close( vlc_object_t* );
 static void Run( services_discovery_t *p_sd );
+static playlist_t *pl_Get( service_discovery_t *p_sd )
+{
+    return p_sd->p_sys->p_playlist;
+}
 
 // Module descriptor
 
@@ -286,6 +291,7 @@ static int Open( vlc_object_t *p_this )
 
     p_sd->pf_run = Run;
     p_sd->p_sys = p_sys;
+    p_sys->p_playlist = pl_Yield( p_sd );
 
     /* Create our playlist node */
     playlist_NodesPairCreate( pl_Get( p_sd ), _("Devices"),
@@ -304,7 +310,7 @@ static void Close( vlc_object_t *p_this )
                          true );
     playlist_NodeDelete( pl_Get( p_sd ), p_sys->p_node_cat, true,
                          true );
-
+    pl_Release( p_intf );
     free( p_sys );
 }