aboutsummaryrefslogtreecommitdiff
path: root/libdbusmenu-gtk/menuitem.c
diff options
context:
space:
mode:
authorTed Gould <ted@gould.cx>2010-06-22 14:19:40 -0500
committerTed Gould <ted@gould.cx>2010-06-22 14:19:40 -0500
commita3e3bf18795873dcb8cafbaac758dc93448f49bf (patch)
tree7db5b943c082d9ec59d54f838d272011f05d2475 /libdbusmenu-gtk/menuitem.c
parentd9922623de540c7d670c67a96a83722dd6674f31 (diff)
downloadlibdbusmenu-a3e3bf18795873dcb8cafbaac758dc93448f49bf.tar.gz
libdbusmenu-a3e3bf18795873dcb8cafbaac758dc93448f49bf.tar.bz2
libdbusmenu-a3e3bf18795873dcb8cafbaac758dc93448f49bf.zip
Checking the final value as well.
Diffstat (limited to 'libdbusmenu-gtk/menuitem.c')
-rw-r--r--libdbusmenu-gtk/menuitem.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/libdbusmenu-gtk/menuitem.c b/libdbusmenu-gtk/menuitem.c
index a201558..e1e1e30 100644
--- a/libdbusmenu-gtk/menuitem.c
+++ b/libdbusmenu-gtk/menuitem.c
@@ -349,7 +349,13 @@ dbusmenu_menuitem_property_get_shortcut (DbusmenuMenuitem * menuitem, guint * ke
GdkModifierType tempmod;
- gtk_accelerator_parse(g_value_get_string(g_value_array_get_nth(entryarray, entryarray->n_values - 1)), key, &tempmod);
+ GValue * accelval = g_value_array_get_nth(entryarray, entryarray->n_values - 1);
+ if (!G_VALUE_HOLDS_STRING(accelval)) {
+ *modifier = 0;
+ return;
+ }
+
+ gtk_accelerator_parse(g_value_get_string(accelval), key, &tempmod);
return;
}