From: Fabio Ritrovato Date: Wed, 3 Feb 2010 22:42:16 +0000 (+0100) Subject: luasd: use a configuration chain to pass parameters to SD X-Git-Tag: 1.1.0-ff~426 X-Git-Url: https://git.sesse.net/?a=commitdiff_plain;h=0a69bbfd9e69bed4760995eccf99552a68a7e193;p=vlc luasd: use a configuration chain to pass parameters to SD Signed-off-by: RĂ©mi Denis-Courmont --- diff --git a/include/vlc_services_discovery.h b/include/vlc_services_discovery.h index 7094defa2b..d10ead96a7 100644 --- a/include/vlc_services_discovery.h +++ b/include/vlc_services_discovery.h @@ -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; }; diff --git a/modules/gui/qt4/components/playlist/selector.cpp b/modules/gui/qt4/components/playlist/selector.cpp index 09305f6aa9..4c4d8d72dd 100644 --- a/modules/gui/qt4/components/playlist/selector.cpp +++ b/modules/gui/qt4/components/playlist/selector.cpp @@ -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 ) diff --git a/src/playlist/services_discovery.c b/src/playlist/services_discovery.c index a0e5a7498d..e565e800be 100644 --- a/src/playlist/services_discovery.c +++ b/src/playlist/services_discovery.c @@ -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 );