aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--e-util/ChangeLog8
-rw-r--r--e-util/e-config.c5
-rw-r--r--e-util/e-menu.c5
-rw-r--r--e-util/e-popup.c5
4 files changed, 23 insertions, 0 deletions
diff --git a/e-util/ChangeLog b/e-util/ChangeLog
index 9e4c030220..b2903ba47b 100644
--- a/e-util/ChangeLog
+++ b/e-util/ChangeLog
@@ -1,3 +1,11 @@
+2005-02-07 Not Zed <NotZed@Ximian.com>
+
+ * e-popup.c (emph_construct_menu):
+ * e-menu.c (emph_construct_menu):
+ * e-config.c (emph_construct_menu): Don't let the 'id' field,
+ which identifies the target menu/whatever, to be NULL, otherwise
+ it gets added to all.
+
2005-02-04 Rodney Dawes <dobey@novell.com>
* e-passwords.c (ep_ask_password): Set the border widths for the
diff --git a/e-util/e-config.c b/e-util/e-config.c
index c628ae33dc..54566adfe5 100644
--- a/e-util/e-config.c
+++ b/e-util/e-config.c
@@ -1358,6 +1358,11 @@ emph_construct_menu(EPluginHook *eph, xmlNodePtr root)
menu->target_type = map->id;
menu->id = e_plugin_xml_prop(root, "id");
+ if (menu->id == NULL) {
+ g_warning("Plugin '%s' missing 'id' field in group for '%s'\n", eph->plugin->name,
+ ((EPluginHookClass *)G_OBJECT_GET_CLASS(eph))->id);
+ goto error;
+ }
menu->check = e_plugin_xml_prop(root, "check");
menu->commit = e_plugin_xml_prop(root, "commit");
menu->abort = e_plugin_xml_prop(root, "abort");
diff --git a/e-util/e-menu.c b/e-util/e-menu.c
index ca3d98a07a..d4f32c3327 100644
--- a/e-util/e-menu.c
+++ b/e-util/e-menu.c
@@ -766,6 +766,11 @@ emph_construct_menu(EPluginHook *eph, xmlNodePtr root)
menu->target_type = map->id;
menu->id = e_plugin_xml_prop(root, "id");
+ if (menu->id == NULL) {
+ g_warning("Plugin '%s' missing 'id' field in menu for '%s'\n", eph->plugin->name,
+ ((EPluginHookClass *)G_OBJECT_GET_CLASS(eph))->id);
+ goto error;
+ }
node = root->children;
while (node) {
if (0 == strcmp(node->name, "item")) {
diff --git a/e-util/e-popup.c b/e-util/e-popup.c
index 6ce73ab2db..14bbfc6e9b 100644
--- a/e-util/e-popup.c
+++ b/e-util/e-popup.c
@@ -726,6 +726,11 @@ emph_construct_menu(EPluginHook *eph, xmlNodePtr root)
menu->target_type = map->id;
menu->id = e_plugin_xml_prop(root, "id");
+ if (menu->id == NULL) {
+ g_warning("Plugin '%s' missing 'id' field in popup for '%s'\n", eph->plugin->name,
+ ((EPluginHookClass *)G_OBJECT_GET_CLASS(eph))->id);
+ goto error;
+ }
node = root->children;
while (node) {
if (0 == strcmp(node->name, "item")) {