diff options
author | Thibaut Mattern <thibaut.mattern@gmail.com> | 2007-04-05 19:14:48 +0200 |
---|---|---|
committer | Thibaut Mattern <thibaut.mattern@gmail.com> | 2007-04-05 19:14:48 +0200 |
commit | 90ec5563d6d3ce1abd5fc52d4aee1b0ecf6c7516 (patch) | |
tree | 6e7137228c6aab3b0b48126f55394b32e9b90142 | |
parent | 54ad01301df2b562e316a7910436ac1ff7494ac3 (diff) | |
download | xine-lib-90ec5563d6d3ce1abd5fc52d4aee1b0ecf6c7516.tar.gz xine-lib-90ec5563d6d3ce1abd5fc52d4aee1b0ecf6c7516.tar.bz2 |
Filled the config entry list when the callback is called.
-rw-r--r-- | src/xine-engine/load_plugins.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/xine-engine/load_plugins.c b/src/xine-engine/load_plugins.c index 320fc0dd2..f4be27587 100644 --- a/src/xine-engine/load_plugins.c +++ b/src/xine-engine/load_plugins.c @@ -704,6 +704,12 @@ static void _new_entry_cb (void *user_data, xine_cfg_entry_t *entry) { /* printf("_new_entry_cb: key %s, plugin id: %s\n", entry->key, node->info->id); */ + if (!node->config_entry_list) { + node->config_entry_list = xine_list_new(); + } + + xine_list_push_back(node->config_entry_list, (void *)entry->key); + } static int _load_plugin_class(xine_t *this, @@ -2603,6 +2609,10 @@ static void dispose_plugin_list (xine_sarray_t *list) { /* free info structure and string copies */ free (node->info->id); free (node->info); + + if (node->config_entry_list) { + xine_list_delete(node->config_entry_list); + } free (node); } xine_sarray_delete(list); |