[clutter] ClutterText: Cannot pass NULL string to clutter_text_set_text()



commit a2d40fcf8c2b839fc8a202442232a7398513a66a
Author: Dominique Bureau <burdo touchtunes com>
Date:   Fri May 11 13:26:50 2012 -0400

    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 files changed, 2 insertions(+), 2 deletions(-)
---
diff --git a/clutter/clutter-text.c b/clutter/clutter-text.c
index 0d58d3a..9917214 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);
 }
 
 /**



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]