Commit 8049a708 authored by Rémi Denis-Courmont's avatar Rémi Denis-Courmont

Remove module_GetModulesNamesForCapability

parent df596611
...@@ -151,11 +151,6 @@ extern int vlc_object_set_name(vlc_object_t *, const char *); ...@@ -151,11 +151,6 @@ extern int vlc_object_set_name(vlc_object_t *, const char *);
*/ */
extern char *psz_vlcpath; extern char *psz_vlcpath;
/* Return a NULL terminated array with the names of the modules that have a
* certain capability.
* Free after uses both the string and the table. */
char **module_GetModulesNamesForCapability (const char * psz_capability,
char ***psz_longname);
module_t *module_find_by_shortcut (const char *psz_shortcut); module_t *module_find_by_shortcut (const char *psz_shortcut);
/** /**
......
...@@ -737,80 +737,6 @@ out: ...@@ -737,80 +737,6 @@ out:
return module; return module;
} }
/**
* GetModuleNamesForCapability
*
* Return a NULL terminated array with the names of the modules
* that have a certain capability.
* Free after uses both the string and the table.
* \param psz_capability the capability asked
* \param pppsz_longname an pointer to an array of string to contain
the long names of the modules. If set to NULL the function don't use it.
* \return the NULL terminated array
*/
char ** module_GetModulesNamesForCapability( const char *psz_capability,
char ***pppsz_longname )
{
size_t count = 0;
char **psz_ret;
module_t **list = module_list_get (NULL);
/* Proceed in two passes: count the number of modules first */
for (size_t i = 0; list[i]; i++)
{
module_t *p_module = list[i];
const char *psz_module_capability = p_module->psz_capability;
if( psz_module_capability
&& !strcmp( psz_module_capability, psz_capability ) )
count++;
}
/* Then get the names */
psz_ret = malloc( sizeof(char*) * (count+1) );
if( pppsz_longname )
*pppsz_longname = malloc( sizeof(char*) * (count+1) );
if( !psz_ret || ( pppsz_longname && *pppsz_longname == NULL ) )
{
free( psz_ret );
if( pppsz_longname )
{
free( *pppsz_longname );
*pppsz_longname = NULL;
}
module_list_free (list);
return NULL;
}
for (size_t i = 0, j = 0; list[i]; i++)
{
module_t *p_module = list[i];
const char *psz_module_capability = p_module->psz_capability;
if( psz_module_capability
&& !strcmp( psz_module_capability, psz_capability ) )
{
/* Explicit hack: Use the last shortcut. It _should_ be
* different from the object name, at least if the object
* contains multiple submodules with the same capability. */
unsigned k = 0;
while( p_module->pp_shortcuts[k] != NULL )
k++;
assert( k > 0); /* pp_shortcuts[0] is always set */
psz_ret[j] = strdup( p_module->pp_shortcuts[k - 1] );
if( pppsz_longname )
(*pppsz_longname)[j] = strdup( module_get_name( p_module, true ) );
j++;
}
}
psz_ret[count] = NULL;
module_list_free (list);
return psz_ret;
}
/** /**
* Get the configuration of a module * Get the configuration of a module
* *
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment