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



commit 95f17f28af89cfcb7eabab7e384f23828e5b5c19
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 2dd12ea..ea05aa6 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]