#endif
#include <vlc/vlc.h>
+#include <vlc_plugin.h>
#include <vlc_playlist.h>
struct services_discovery_sys_t
{
+ playlist_t *p_playlist;
playlist_item_t *p_node_cat;
playlist_item_t *p_node_one;
};
Lockable( Cookie* c )
{
- vlc_mutex_init( c->serviceDiscovery, &_mutex );
+ vlc_mutex_init( &_mutex );
}
~Lockable()
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
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"),
true );
playlist_NodeDelete( pl_Get( p_sd ), p_sys->p_node_cat, true,
true );
-
+ pl_Release( p_intf );
free( p_sys );
}
playlist_BothAddInput( p_playlist, p_input, parentNode,
PLAYLIST_APPEND, PLAYLIST_END, &i_cat, NULL,
false );
+ vlc_gc_decref( p_input );
/* TODO: do this better by storing ids */
playlist_item_t *p_node = playlist_ItemGetById( p_playlist, i_cat, false );
assert( p_node );