glib r6457 - trunk/gobject



Author: otte
Date: Wed Feb  6 09:36:47 2008
New Revision: 6457
URL: http://svn.gnome.org/viewvc/glib?rev=6457&view=rev

Log:
* gparamspecs.c: (param_gtype_set_default), (param_gtype_validate):
make GParamGType require the set type during construction instead of
using G_TYPE_NONE, which causes issues when setting.
Bug 513073 - g_param_spec_gtype breaks with G_PARAM_CONSTRUCT


Modified:
   trunk/gobject/ChangeLog
   trunk/gobject/gparamspecs.c

Modified: trunk/gobject/gparamspecs.c
==============================================================================
--- trunk/gobject/gparamspecs.c	(original)
+++ trunk/gobject/gparamspecs.c	Wed Feb  6 09:36:47 2008
@@ -1042,7 +1042,9 @@
 param_gtype_set_default (GParamSpec *pspec,
 			 GValue     *value)
 {
-  value->data[0].v_long = G_TYPE_NONE;
+  GParamSpecGType *tspec = G_PARAM_SPEC_GTYPE (pspec);
+
+  value->data[0].v_long = tspec->is_a_type;
 }
 
 static gboolean
@@ -1055,7 +1057,7 @@
   
   if (tspec->is_a_type != G_TYPE_NONE && !g_type_is_a (gtype, tspec->is_a_type))
     {
-      value->data[0].v_long = G_TYPE_NONE;
+      value->data[0].v_long = tspec->is_a_type;
       changed++;
     }
   



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