Revert "[gobject] set all properties before constructed()"
authorRyan Lortie <desrt@desrt.ca>
Mon, 19 Nov 2012 15:28:55 +0000 (10:28 -0500)
committerRyan Lortie <desrt@desrt.ca>
Mon, 19 Nov 2012 15:30:47 +0000 (10:30 -0500)
This reverts commit 028d4a03f2baa7ca9243a2819f30ffb0d5e137d7.

I thought that we would be able to get away with this incompatible
change but it appears to impact far too much existing code.  The only
thing we can do is revert.

https://bugzilla.gnome.org/show_bug.cgi?id=688596

gobject/gobject.c

index 5f60dd6..79c0401 100644 (file)
@@ -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 */