From 12bdfb430ec03a25a002cc88a8ac4eb067fa1c69 Mon Sep 17 00:00:00 2001 From: Tristan Van Berkom Date: Tue, 3 Jul 2007 15:39:59 +0000 Subject: [PATCH] Fixed assertions from setting "tooltip-text" to NULL (bug 452425) * gtk/gtkwidget.c: Fixed assertions from setting "tooltip-text" to NULL (bug 452425) svn path=/trunk/; revision=18353 --- ChangeLog | 5 +++++ gtk/gtkwidget.c | 7 +++++-- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 16b8281247..5d1d5e4590 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2007-07-03 Tristan Van Berkom + + * gtk/gtkwidget.c: Fixed assertions from setting "tooltip-text" to NULL + (bug 452425) + 2007-07-03 Johan Dahlin * gtk/gtk-builder-convert (GtkBuilderConverter._strip_root): Add a diff --git a/gtk/gtkwidget.c b/gtk/gtkwidget.c index 25fcb5f1fe..450d8d48ec 100644 --- a/gtk/gtkwidget.c +++ b/gtk/gtkwidget.c @@ -1948,6 +1948,7 @@ gtk_widget_set_property (GObject *object, gboolean tmp; guint32 saved_flags; gchar *tooltip_markup; + const gchar *tooltip_text; GtkWindow *tooltip_window; case PROP_NAME: @@ -2038,12 +2039,14 @@ gtk_widget_set_property (GObject *object, break; case PROP_TOOLTIP_TEXT: tooltip_window = g_object_get_qdata (object, quark_tooltip_window); - tooltip_markup = g_markup_escape_text (g_value_get_string (value), -1); + tooltip_text = g_value_get_string (value); + tooltip_markup = tooltip_text ? g_markup_escape_text (tooltip_text, -1) : NULL; g_object_set_qdata_full (object, quark_tooltip_markup, tooltip_markup, g_free); - gtk_widget_set_has_tooltip (widget, TRUE, FALSE); + tmp = (tooltip_window != NULL || tooltip_markup != NULL); + gtk_widget_set_has_tooltip (widget, tmp, FALSE); break; default: break;