summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTristan Van Berkom <tvb@src.gnome.org>2007-07-03 15:39:59 +0000
committerTristan Van Berkom <tvb@src.gnome.org>2007-07-03 15:39:59 +0000
commit12bdfb430ec03a25a002cc88a8ac4eb067fa1c69 (patch)
tree2ef28258dd289094992812398f1debfe4021776f
parentd953125970fad2782411e427265a63e40eda3ccf (diff)
downloadgtk+-12bdfb430ec03a25a002cc88a8ac4eb067fa1c69.tar.gz
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
-rw-r--r--ChangeLog5
-rw-r--r--gtk/gtkwidget.c7
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 <tvb@gnome.org>
+
+ * gtk/gtkwidget.c: Fixed assertions from setting "tooltip-text" to NULL
+ (bug 452425)
+
2007-07-03 Johan Dahlin <jdahlin@async.com.br>
* 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;