services_discovery_t *p_sd = ( services_discovery_t * )p_this;
services_discovery_sys_t *p_sys;
lua_State *L;
- char *psz_name = NULL;
+ char *psz_name = strdup(p_sd->psz_name);
+
+ if( !strcmp(p_sd->psz_name, "lua"))
+ {
+ // We want to load the module name "lua"
+ // This module can be used to load lua script not registered
+ // as builtin lua SD modules.
+ config_ChainParse( p_sd, "lua-", ppsz_sd_options, p_sd->p_cfg );
+ psz_name = var_CreateGetString( p_sd, "lua-sd" );
+ }
+ else
+ {
+ // We are loading a builtin lua sd module.
+ psz_name = strdup(p_sd->psz_name);
+ }
- config_ChainParse( p_sd, "lua-", ppsz_sd_options, p_sd->p_cfg );
- psz_name = var_CreateGetString( p_sd, "lua-sd" );
if( !( p_sys = malloc( sizeof( services_discovery_sys_t ) ) ) )
return VLC_ENOMEM;
p_sd->p_sys = p_sys;
add_string( "lua-sd", "", NULL, "", "", false )
set_callbacks( Open_LuaSD, Close_LuaSD )
+ add_submodule ()
+ set_description( N_("Freebox TV") )
+ add_shortcut( "freebox" )
+ set_capability( "services_discovery", 0 )
+ set_callbacks( Open_LuaSD, Close_LuaSD )
+
+ add_submodule ()
+ set_description( N_("French TV") )
+ add_shortcut( "frenchtv" )
+ set_capability( "services_discovery", 0 )
+ set_callbacks( Open_LuaSD, Close_LuaSD )
+
VLC_SD_PROBE_SUBMODULE
vlc_module_end ()