[glib] [gobject] set all properties before constructed()



commit 028d4a03f2baa7ca9243a2819f30ffb0d5e137d7
Author: Ryan Lortie <desrt desrt ca>
Date:   Mon Oct 8 11:40:00 2012 -0400

    [gobject] set all properties before constructed()
    
    Move the constructed() call to happen after all of the properties are
    set (not just the construct properties).
    
    This is an incompatible change but we are making it under the belief
    that it should be safe.  If this change impacts you in a negative way
    please comment on the bug.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=685733

 gobject/gobject.c |    8 ++++----
 1 files changed, 4 insertions(+), 4 deletions(-)
---
diff --git a/gobject/gobject.c b/gobject/gobject.c
index 79c0401..5f60dd6 100644
--- a/gobject/gobject.c
+++ b/gobject/gobject.c
@@ -1741,15 +1741,15 @@ g_object_newv (GType       object_type,
 	g_object_notify_queue_thaw (object, nqueue);
     }
 
-  /* run 'constructed' handler if there is a custom one */
-  if (newly_constructed && CLASS_HAS_CUSTOM_CONSTRUCTED (class))
-    class->constructed (object);
-
   /* set remaining properties */
   for (i = 0; i < n_oparams; i++)
     object_set_property (object, oparams[i].pspec, oparams[i].value, nqueue);
   g_free (oparams);
 
+  /* run 'constructed' handler if there is a custom one */
+  if (newly_constructed && CLASS_HAS_CUSTOM_CONSTRUCTED (class))
+    class->constructed (object);
+
   if (CLASS_HAS_PROPS (class))
     {
       /* release our own freeze count and handle notifications */



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