aboutsummaryrefslogtreecommitdiffstats
path: root/e-util
diff options
context:
space:
mode:
Diffstat (limited to 'e-util')
-rw-r--r--e-util/ChangeLog8
-rw-r--r--e-util/e-plugin-ui.c11
2 files changed, 13 insertions, 6 deletions
diff --git a/e-util/ChangeLog b/e-util/ChangeLog
index 5fc6526a85..a817d0d033 100644
--- a/e-util/ChangeLog
+++ b/e-util/ChangeLog
@@ -1,3 +1,11 @@
+2009-02-13 Matthew Barnes <mbarnes@redhat.com>
+
+ ** Fixes part of bug #564229
+
+ * e-plugin-ui.c (plugin_ui_hook_class_init):
+ Initialize the EPluginUI registry during class initialization,
+ so that it's sure to be there when we need it.
+
2009-01-15 Milan Crha <mcrha@redhat.com>
* e-plugin.c: (epl_construct): Compiler warning fix.
diff --git a/e-util/e-plugin-ui.c b/e-util/e-plugin-ui.c
index 0b28adda5d..c192ece939 100644
--- a/e-util/e-plugin-ui.c
+++ b/e-util/e-plugin-ui.c
@@ -83,12 +83,6 @@ plugin_ui_registry_insert (EPluginUIHook *hook,
{
GHashTable *hash_table;
- if (registry == NULL)
- registry = g_hash_table_new_full (
- g_direct_hash, g_direct_equal,
- (GDestroyNotify) NULL,
- (GDestroyNotify) g_hash_table_destroy);
-
hash_table = g_hash_table_lookup (registry, hook);
if (hash_table == NULL) {
hash_table = g_hash_table_new (g_direct_hash, g_direct_equal);
@@ -325,6 +319,11 @@ plugin_ui_hook_class_init (EPluginUIHookClass *class)
plugin_hook_class->id = E_PLUGIN_UI_HOOK_CLASS_ID;
plugin_hook_class->construct = plugin_ui_hook_construct;
plugin_hook_class->enable = plugin_ui_hook_enable;
+
+ registry = g_hash_table_new_full (
+ g_direct_hash, g_direct_equal,
+ (GDestroyNotify) NULL,
+ (GDestroyNotify) g_hash_table_destroy);
}
static void