From a2d40fcf8c2b839fc8a202442232a7398513a66a Mon Sep 17 00:00:00 2001 From: Dominique Bureau Date: Fri, 11 May 2012 13:26:50 -0400 Subject: [PATCH] ClutterText: Cannot pass NULL string to clutter_text_set_text() Passing a NULL buffer to clutter_text_set_text() does not behave the same way as passing an empty string "" (as specified in the documentation). This was working as expected previously, but somehow the behaviour changed at some point and created 2 new issues: - Passing a NULL pointer will not reset the string - If the ClutterText is editable, it will segfault in strcmp Validations have been added to prevent this. https://bugzilla.gnome.org/show_bug.cgi?id=675890 --- clutter/clutter-text.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/clutter/clutter-text.c b/clutter/clutter-text.c index 0d58d3a3c..9917214d0 100644 --- a/clutter/clutter-text.c +++ b/clutter/clutter-text.c @@ -4767,12 +4767,12 @@ clutter_text_set_text (ClutterText *self, */ if (self->priv->editable) { - if (strcmp (clutter_text_buffer_get_text (get_buffer (self)), text) == 0) + if (g_strcmp0 (clutter_text_buffer_get_text (get_buffer (self)), text) == 0) return; } clutter_text_set_use_markup_internal (self, FALSE); - clutter_text_buffer_set_text (get_buffer (self), text, -1); + clutter_text_buffer_set_text (get_buffer (self), text ? text : "", -1); } /**