[vlc-commits] Remove module_t.b_builtin
Rémi Denis-Courmont
git at videolan.org
Mon Aug 15 21:27:12 CEST 2011
vlc | branch: master | Rémi Denis-Courmont <remi at remlab.net> | Mon Aug 15 22:26:00 2011 +0300| [617c3420cc96e6ae86c36c4c35745f458556022b] | committer: Rémi Denis-Courmont
Remove module_t.b_builtin
> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=617c3420cc96e6ae86c36c4c35745f458556022b
---
src/modules/entry.c | 2 --
src/modules/modules.c | 23 +++++++++--------------
src/modules/modules.h | 1 -
3 files changed, 9 insertions(+), 17 deletions(-)
diff --git a/src/modules/entry.c b/src/modules/entry.c
index a6c38ce..ba5aa75 100644
--- a/src/modules/entry.c
+++ b/src/modules/entry.c
@@ -67,7 +67,6 @@ module_t *vlc_module_create (void)
/*module->handle = garbage */
module->psz_filename = NULL;
module->domain = NULL;
- module->b_builtin = false;
module->b_loaded = false;
return module;
}
@@ -108,7 +107,6 @@ module_t *vlc_submodule_create (module_t *module)
submodule->psz_help = NULL;
submodule->psz_capability = NULL;
submodule->i_score = module->i_score;
- submodule->b_builtin = false;
submodule->b_loaded = false;
submodule->b_unloadable = false;
submodule->pf_activate = NULL;
diff --git a/src/modules/modules.c b/src/modules/modules.c
index 915b5d7..e654dd8 100644
--- a/src/modules/modules.c
+++ b/src/modules/modules.c
@@ -509,8 +509,10 @@ found_shortcut:
/* Make sure the module is loaded in mem */
module_t *p_real = p_cand->parent ? p_cand->parent : p_cand;
- if( !p_real->b_builtin && !p_real->b_loaded )
+ if (!p_real->b_loaded)
{
+ assert (p_real->psz_filename != NULL);
+
module_t *p_new_module =
AllocatePlugin( p_this, p_real->psz_filename, false );
if( p_new_module == NULL )
@@ -924,7 +926,6 @@ static int AllocatePluginFile( vlc_object_t * p_this, module_bank_t *p_bank,
assert( p_module->next == NULL );
/* Unload plugin until we really need it */
- assert( !p_module->b_builtin );
if( p_module->b_loaded && p_module->b_unloadable )
{
module_Unload( p_module->handle );
@@ -981,7 +982,9 @@ static module_t *AllocatePlugin( vlc_object_t * p_this, const char *psz_file,
return NULL;
}
- p_module->psz_filename = strdup( psz_file );
+ p_module->psz_filename = strdup (psz_file);
+ if (unlikely(p_module->psz_filename == NULL))
+ goto error;
p_module->handle = handle;
p_module->b_loaded = true;
@@ -1006,8 +1009,6 @@ static module_t *AllocatePlugin( vlc_object_t * p_this, const char *psz_file,
msg_Err( p_this, "cannot initialize plugin `%s'", psz_file );
goto error;
}
-
- assert( !p_module->b_builtin );
return p_module;
error:
free( p_module->psz_filename );
@@ -1030,7 +1031,6 @@ static module_t *module_InitStatic (vlc_plugin_cb entry)
if (entry (module))
assert (0);
- module->b_builtin = true;
module->b_loaded = true;
module->b_unloadable = false;
@@ -1060,14 +1060,9 @@ static void DeleteModule (module_t **head, module_t *p_module)
/* We free the structures that we strdup()ed in Allocate*Module(). */
#ifdef HAVE_DYNAMIC_PLUGINS
- if( !p_module->b_builtin )
- {
- if( p_module->b_loaded && p_module->b_unloadable )
- {
- module_Unload( p_module->handle );
- }
- free( p_module->psz_filename );
- }
+ if (p_module->b_loaded && p_module->b_unloadable)
+ module_Unload (p_module->handle);
+ free (p_module->psz_filename);
#endif
/* Free and detach the object's children */
diff --git a/src/modules/modules.h b/src/modules/modules.h
index f1ba751..e74d5ce 100644
--- a/src/modules/modules.h
+++ b/src/modules/modules.h
@@ -83,7 +83,6 @@ struct module_t
char *psz_capability; /**< Capability */
int i_score; /**< Score for the capability */
- bool b_builtin; /* Set to true if the module is built in */
bool b_loaded; /* Set to true if the dll is loaded */
bool b_unloadable; /**< Can we be dlclosed? */
More information about the vlc-commits
mailing list