summaryrefslogtreecommitdiff
path: root/src/plugins/pglist.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/pglist.c')
-rw-r--r--src/plugins/pglist.c28
1 files changed, 28 insertions, 0 deletions
diff --git a/src/plugins/pglist.c b/src/plugins/pglist.c
index 6b51690..e7a3ab0 100644
--- a/src/plugins/pglist.c
+++ b/src/plugins/pglist.c
@@ -76,6 +76,7 @@ void browse_directory_for_plugins(plugins_list *, const char *);
bool init_all_plugins(GObject *ref)
{
_list.ref = ref;
+ g_object_ref(ref);
browse_directory_for_plugins(&_list, PACKAGE_SOURCE_DIR "/plugins");
@@ -86,6 +87,33 @@ bool init_all_plugins(GObject *ref)
/******************************************************************************
* *
+* Paramètres : - *
+* *
+* Description : Procède au déchargement des différents greffons présents. *
+* *
+* Retour : - *
+* *
+* Remarques : - *
+* *
+******************************************************************************/
+
+void exit_all_plugins(void)
+{
+ size_t i; /* Boucle de parcours */
+
+ for (i = 0; i < _list.plugins_count; i++)
+ g_object_unref(_list.plugins[i]);
+
+ if (_list.plugins != NULL)
+ free(_list.plugins);
+
+ g_object_unref(_list.ref);
+
+}
+
+
+/******************************************************************************
+* *
* Paramètres : entry = entrée de répertoire à analyser. *
* *
* Description : Filtre les répertoire et les modules de greffons pootentels. *