summaryrefslogtreecommitdiff
path: root/plugins/pychrysalide/pychrysa.c
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/pychrysalide/pychrysa.c')
-rw-r--r--plugins/pychrysalide/pychrysa.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/plugins/pychrysalide/pychrysa.c b/plugins/pychrysalide/pychrysa.c
index 4e522e5..c1fdd6f 100644
--- a/plugins/pychrysalide/pychrysa.c
+++ b/plugins/pychrysalide/pychrysa.c
@@ -59,7 +59,8 @@
-DEFINE_CHRYSALIDE_ACTIVE_PLUGIN("PyChrysalide", "Provides bindings to Python", "0.1.0", PGA_PLUGIN_INIT);
+DEFINE_CHRYSALIDE_CONTAINER_PLUGIN("PyChrysalide", "Provides bindings to Python", "0.1.0",
+ EMPTY_PG_LIST(.required), AL(PGA_PLUGIN_INIT, PGA_PLUGIN_EXIT));
/* Note la nature du chargement */
@@ -402,6 +403,8 @@ PyMODINIT_FUNC PyInit_pychrysalide(void)
load_remaning_plugins();
+ g_object_unref(G_OBJECT(self));
+
}
return result;
@@ -488,7 +491,15 @@ static bool load_python_plugins(GPluginModule *plugin)
g_plugin_module_log_variadic_message(plugin, LMT_PROCESS,
_("Loaded the Python plugin found in the '<b>%s</b>' directory"),
filename);
+
+ /**
+ * Comme le greffon n'est pas passé par la résolution des dépendances,
+ * on simule l'effet attendu.
+ */
+ g_object_ref(G_OBJECT(plugin));
+
_register_plugin(pyplugin);
+
}
free(filename);