summaryrefslogtreecommitdiff
path: root/gtk/a11y
diff options
context:
space:
mode:
authorAlban Browaeys <prahal@yahoo.com>2013-03-07 15:54:04 +0100
committerMatthias Clasen <mclasen@redhat.com>2013-03-17 16:12:52 -0400
commitda961b7ab8f736c963954f5f39dfa395c1670d86 (patch)
treec92b97befb513442b5a97cf01381708cb886a60f /gtk/a11y
parent8e65fa1b43067f5ccebd8ab2070f678651a174d5 (diff)
downloadgtk+-da961b7ab8f736c963954f5f39dfa395c1670d86.tar.gz
GtkEntryAccessible: also handle entry icon tooltip NULL in notify_gtk.
To clear the tooltip one is to set the tooltip to NULL. Though the GtkEntryAccessible expect this tooltip to not be NULL in gtk_entry_accessible_notify_gtk (already handling this case in its _init). Fixes: ** (epiphany:23914): CRITICAL **: atk_object_set_description: assertion `description != NULL' failed when epiphany g_object_set the entry icon tooltip to NULL (clear the tooltip) in its find bar. https://bugzilla.gnome.org/show_bug.cgi?id=695375
Diffstat (limited to 'gtk/a11y')
-rw-r--r--gtk/a11y/gtkentryaccessible.c24
1 files changed, 20 insertions, 4 deletions
diff --git a/gtk/a11y/gtkentryaccessible.c b/gtk/a11y/gtkentryaccessible.c
index 31414c6184..7d82e38e42 100644
--- a/gtk/a11y/gtkentryaccessible.c
+++ b/gtk/a11y/gtkentryaccessible.c
@@ -572,9 +572,17 @@ gtk_entry_accessible_notify_gtk (GObject *obj,
gchar *text;
text = gtk_entry_get_icon_tooltip_text (gtk_entry,
GTK_ENTRY_ICON_PRIMARY);
- atk_object_set_description (priv->icons[GTK_ENTRY_ICON_PRIMARY],
+ if (text)
+ {
+ atk_object_set_description (priv->icons[GTK_ENTRY_ICON_PRIMARY],
text);
- g_free (text);
+ g_free (text);
+ }
+ else
+ {
+ atk_object_set_description (priv->icons[GTK_ENTRY_ICON_PRIMARY],
+ "");
+ }
}
}
else if (g_strcmp0 (pspec->name, "secondary-icon-tooltip-text") == 0)
@@ -584,9 +592,17 @@ gtk_entry_accessible_notify_gtk (GObject *obj,
gchar *text;
text = gtk_entry_get_icon_tooltip_text (gtk_entry,
GTK_ENTRY_ICON_SECONDARY);
- atk_object_set_description (priv->icons[GTK_ENTRY_ICON_SECONDARY],
+ if (text)
+ {
+ atk_object_set_description (priv->icons[GTK_ENTRY_ICON_SECONDARY],
text);
- g_free (text);
+ g_free (text);
+ }
+ else
+ {
+ atk_object_set_description (priv->icons[GTK_ENTRY_ICON_PRIMARY],
+ "");
+ }
}
}
else if (g_strcmp0 (pspec->name, "primary-icon-activatable") == 0)