diff options
author | Tristan Van Berkom <tvb@src.gnome.org> | 2009-03-23 00:17:23 +0000 |
---|---|---|
committer | Tristan Van Berkom <tvb@src.gnome.org> | 2009-03-23 00:17:23 +0000 |
commit | 8f28813497d549d57067cec66d3cab7025657288 (patch) | |
tree | 14d1f769da535d61e6337d8a325f339dee8da654 | |
parent | 8ed32ac9942acee190e044a99d90b46d107b7334 (diff) | |
download | glade-8f28813497d549d57067cec66d3cab7025657288.tar.gz |
Fix win32 crasher (bug 575206) again (seems I missed it was klass->name
* gladeui/glade-command.c: Fix win32 crasher (bug 575206) again (seems
I missed it was klass->name that was null, fixed it so it would never
be null, and added g_assert() where the crash was
svn path=/trunk/; revision=2176
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | gladeui/glade-command.c | 10 | ||||
-rw-r--r-- | gladeui/glade-property-class.c | 2 |
3 files changed, 13 insertions, 5 deletions
@@ -1,5 +1,11 @@ 2009-03-21 Tristan Van Berkom <tvb@gnome.org> + * gladeui/glade-command.c: Fix win32 crasher (bug 575206) again (seems + I missed it was klass->name that was null, fixed it so it would never + be null, and added g_assert() where the crash was + +2009-03-21 Tristan Van Berkom <tvb@gnome.org> + * gladeui/glade-command.c: Fix win32 crasher (bug 575206) 2009-03-16 Tristan Van Berkom <tvb@gnome.org> diff --git a/gladeui/glade-command.c b/gladeui/glade-command.c index d9fcc0af..d408d24f 100644 --- a/gladeui/glade-command.c +++ b/gladeui/glade-command.c @@ -603,17 +603,19 @@ glade_command_set_property_description (GladeCommandSetProperty *me, (GLADE_WIDGET_ADAPTOR (sdata->property->klass->handle), sdata->property->klass, sdata->new_value, fmt); + g_assert (sdata->property->klass->name); + g_assert (sdata->property->widget->name); + if (!value_name || strlen (value_name) > MAX_UNDO_MENU_ITEM_VALUE_LEN || strchr (value_name, '_')) { description = g_strdup_printf (_("Setting %s of %s"), sdata->property->klass->name, - sdata->property->widget->name ? - sdata->property->widget->name : "-"); + sdata->property->widget->name); } else { description = g_strdup_printf (_("Setting %s of %s to %s"), sdata->property->klass->name, - sdata->property->widget->name ? - sdata->property->widget->name : "-", value_name); + sdata->property->widget->name, + value_name); } g_free (value_name); } diff --git a/gladeui/glade-property-class.c b/gladeui/glade-property-class.c index 72f966d2..c1900e00 100644 --- a/gladeui/glade-property-class.c +++ b/gladeui/glade-property-class.c @@ -1493,7 +1493,7 @@ glade_property_class_update_from_node (GladeXmlNode *node, klass->tooltip = g_strdup (g_param_spec_get_blurb (klass->pspec)); } - if (strcmp (g_param_spec_get_nick (klass->pspec), "dummy") != 0) + if (klass->name == NULL || strcmp (g_param_spec_get_nick (klass->pspec), "dummy") != 0) { g_free (klass->name); klass->name = g_strdup (g_param_spec_get_nick (klass->pspec)); |