aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--mail/evolution-module-mail.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/mail/evolution-module-mail.c b/mail/evolution-module-mail.c
index 936ed9a0b5..83db1d9087 100644
--- a/mail/evolution-module-mail.c
+++ b/mail/evolution-module-mail.c
@@ -28,6 +28,19 @@
void e_module_load (GTypeModule *type_module);
void e_module_unload (GTypeModule *type_module);
+G_MODULE_EXPORT const gchar *
+g_module_check_init (GModule *module)
+{
+ /* FIXME Until mail is split into a module library and a
+ * reusable shared library, prevent the module from
+ * being unloaded. Unloading the module resets all
+ * static variables, which screws up foo_get_type()
+ * functions among other things. */
+ g_module_make_resident (module);
+
+ return NULL;
+}
+
G_MODULE_EXPORT void
e_module_load (GTypeModule *type_module)
{