]> git.sesse.net Git - vlc/commitdiff
luasd: use a configuration chain to pass parameters to SD
authorFabio Ritrovato <exsephiroth87@gmail.com>
Wed, 3 Feb 2010 22:42:16 +0000 (23:42 +0100)
committerRémi Denis-Courmont <remi@remlab.net>
Thu, 4 Feb 2010 16:16:13 +0000 (18:16 +0200)
Signed-off-by: Rémi Denis-Courmont <remi@remlab.net>
include/vlc_services_discovery.h
modules/gui/qt4/components/playlist/selector.cpp
src/playlist/services_discovery.c

index 7094defa2b1966fbae665f286658e5c47e3868d0..d10ead96a7c9d5680daa475a9020ac61a87e2f66 100644 (file)
@@ -48,6 +48,8 @@ struct services_discovery_t
 
     vlc_event_manager_t event_manager;      /* Accessed through Setters for non class function */
 
+    config_chain_t *p_cfg;
+
     services_discovery_sys_t *p_sys;
 };
 
index 09305f6aa9e11e340cb95f4b484d94cfe4e17c86..4c4d8d72dd96b1e4f1bde5b94c654df91680508e 100644 (file)
@@ -173,7 +173,7 @@ void PLSelector::setSource( QTreeWidgetItem *item )
 
     if( i_type == SD_TYPE )
     {
-        pl_item = playlist_ChildSearchName( THEPL->p_root, qtu( item->data(0, LONGNAME_ROLE ).toString() ) );
+        pl_item = playlist_ChildSearchName( THEPL->p_root, qtu( item->data(0, NAME_ROLE ).toString() ) );
         if( item->data( 0, SPECIAL_ROLE ).toInt() == IS_PODCAST )
         {
             if( pl_item && !sd_loaded )
index a0e5a7498d8c04c9248ab7b2412727d751d0ade7..e565e800be06d7114523e3ae2108c3a4d5370c69 100644 (file)
@@ -280,10 +280,13 @@ int playlist_ServicesDiscoveryAdd( playlist_t *p_playlist, const char *psz_modul
     if( !p_sd )
         return VLC_ENOMEM;
 
-    module_t *m = module_find_by_shortcut( psz_module );
+    char *psz_name = NULL;
+    config_ChainCreate( &psz_name, &p_sd->p_cfg, psz_module );
+
+    module_t *m = module_find_by_shortcut( psz_name );
     if( !m )
     {
-        msg_Err( p_playlist, "No such module: %s", psz_module );
+        msg_Err( p_playlist, "No such module: %s", psz_name );
         vlc_sd_Destroy( p_sd );
         return VLC_EGENERIC;
     }
@@ -300,7 +303,7 @@ int playlist_ServicesDiscoveryAdd( playlist_t *p_playlist, const char *psz_modul
     playlist_item_t *p_node;
 
     PL_LOCK;
-    p_node = playlist_NodeCreate( p_playlist, module_get_name( m, true ),
+    p_node = playlist_NodeCreate( p_playlist, psz_module,
                                   p_playlist->p_root, 0, NULL );
     PL_UNLOCK;
     module_release( m );
@@ -313,7 +316,7 @@ int playlist_ServicesDiscoveryAdd( playlist_t *p_playlist, const char *psz_modul
                       vlc_ServicesDiscoveryItemRemoved,
                       playlist_sd_item_removed, p_node );
 
-    if( !vlc_sd_Start( p_sd, psz_module ) )
+    if( !vlc_sd_Start( p_sd, psz_name ) )
     {
         vlc_sd_Destroy( p_sd );
         free( p_sds );