diff options
author | Marcel Holtmann <marcel@holtmann.org> | 2009-08-20 23:47:08 -0700 |
---|---|---|
committer | Marcel Holtmann <marcel@holtmann.org> | 2009-08-20 23:47:08 -0700 |
commit | 319344bb0a81db7538d6de258046a64855fc2938 (patch) | |
tree | 8cc833f25156c1b87397ecc0edc2fdfb9bec8a7e /src/plugin.c | |
parent | f21f133fe7684161d8ac76a183f8dee2766e2a33 (diff) | |
download | bluez-319344bb0a81db7538d6de258046a64855fc2938.tar.gz |
Add more error codes to plugin loading
Diffstat (limited to 'src/plugin.c')
-rw-r--r-- | src/plugin.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/src/plugin.c b/src/plugin.c index b48f1ce98..c6567a96d 100644 --- a/src/plugin.c +++ b/src/plugin.c @@ -86,6 +86,9 @@ static gboolean is_disabled(const char *name, char **list) { int i; + if (list == NULL) + return FALSE; + for (i = 0; list[i] != NULL; i++) { char *str; gboolean equal; @@ -130,8 +133,7 @@ gboolean plugin_init(GKeyFile *config) debug("Loading builtin plugins"); for (i = 0; __bluetooth_builtin[i]; i++) { - if (disabled && is_disabled(__bluetooth_builtin[i]->name, - disabled)) + if (is_disabled(__bluetooth_builtin[i]->name, disabled)) continue; add_plugin(NULL, __bluetooth_builtin[i]); @@ -157,7 +159,7 @@ gboolean plugin_init(GKeyFile *config) g_str_has_suffix(file, ".so") == FALSE) continue; - if (disabled && is_disabled(file, disabled)) + if (is_disabled(file, disabled)) continue; filename = g_build_filename(PLUGINDIR, file, NULL); @@ -190,8 +192,10 @@ gboolean plugin_init(GKeyFile *config) for (list = plugins; list; list = list->next) { struct bluetooth_plugin *plugin = list->data; - if (plugin->desc->init() < 0) + if (plugin->desc->init() < 0) { + error("Failed to init %s plugin", plugin->desc->name); continue; + } plugin->active = TRUE; } |