X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=modules%2Fmisc%2Flua%2Fextension.c;h=745350fdeeb7b2d6363c8c784f1a3e244e6bab6f;hb=c04668ad5effb61eda668b293aa9aa8e161d369e;hp=7fa4ca2fc2b3f38d5871f84da2008973c3f74e29;hpb=8e6a4513d42bc602f5cb9f56c6a79299b60056e2;p=vlc diff --git a/modules/misc/lua/extension.c b/modules/misc/lua/extension.c index 7fa4ca2fc2..745350fdee 100644 --- a/modules/misc/lua/extension.c +++ b/modules/misc/lua/extension.c @@ -56,7 +56,7 @@ const char* const ppsz_capabilities[] = { static int ScanExtensions( extensions_manager_t *p_this ); static int ScanLuaCallback( vlc_object_t *p_this, const char *psz_script, - void *pb_continue ); + void *dummy ); static int Control( extensions_manager_t *, int, va_list ); static int GetMenuEntries( extensions_manager_t *p_mgr, extension_t *p_ext, char ***pppsz_titles, uint16_t **ppi_ids ); @@ -181,12 +181,11 @@ void Close_Extension( vlc_object_t *p_this ) **/ static int ScanExtensions( extensions_manager_t *p_mgr ) { - bool b_true = true; int i_ret = vlclua_scripts_batch_execute( VLC_OBJECT( p_mgr ), "extensions", &ScanLuaCallback, - &b_true ); + NULL ); if( !i_ret ) return VLC_EGENERIC; @@ -211,11 +210,12 @@ static int vlclua_dummy_require( lua_State *L ) * @param p_this This extensions_manager_t object * @param psz_script Name of the script to run * @param L Lua State, common to all scripts here - * @param pb_continue bool* that indicates whether to continue batch or not + * @param dummy: unused **/ int ScanLuaCallback( vlc_object_t *p_this, const char *psz_script, - void *pb_continue ) + void *dummy ) { + VLC_UNUSED(dummy); extensions_manager_t *p_mgr = ( extensions_manager_t* ) p_this; bool b_ok = false; @@ -341,62 +341,27 @@ int ScanLuaCallback( vlc_object_t *p_this, const char *psz_script, /* Get author */ lua_getfield( L, -1, "author" ); - if( lua_isstring( L, -1 ) ) - { - p_ext->psz_author = strdup( luaL_checkstring( L, -1 ) ); - } - else - { - p_ext->psz_author = NULL; - } + p_ext->psz_author = luaL_strdupornull( L, -1 ); lua_pop( L, 1 ); /* Get description */ lua_getfield( L, -1, "description" ); - if( lua_isstring( L, -1 ) ) - { - p_ext->psz_description = strdup( luaL_checkstring( L, -1 ) ); - } - else - { - p_ext->psz_description = NULL; - } + p_ext->psz_description = luaL_strdupornull( L, -1 ); lua_pop( L, 1 ); /* Get short description */ lua_getfield( L, -1, "shortdesc" ); - if( lua_isstring( L, -1 ) ) - { - p_ext->psz_shortdescription = strdup( luaL_checkstring( L, -1 ) ); - } - else - { - p_ext->psz_shortdescription = NULL; - } + p_ext->psz_shortdescription = luaL_strdupornull( L, -1 ); lua_pop( L, 1 ); /* Get URL */ lua_getfield( L, -1, "url" ); - if( lua_isstring( L, -1 ) ) - { - p_ext->psz_url = strdup( luaL_checkstring( L, -1 ) ); - } - else - { - p_ext->psz_url = NULL; - } + p_ext->psz_url = luaL_strdupornull( L, -1 ); lua_pop( L, 1 ); /* Get version */ lua_getfield( L, -1, "version" ); - if( lua_isstring( L, -1 ) ) - { - p_ext->psz_version = strdup( luaL_checkstring( L, -1 ) ); - } - else - { - p_ext->psz_version = NULL; - } + p_ext->psz_version = luaL_strdupornull( L, -1 ); lua_pop( L, 1 ); } else @@ -441,7 +406,7 @@ exit: vlc_mutex_unlock( &p_mgr->lock ); /* Continue batch execution */ - return pb_continue ? ( (* (bool*)pb_continue) ? -1 : 0 ) : -1; + return VLC_EGENERIC; } static int Control( extensions_manager_t *p_mgr, int i_control, va_list args )