summaryrefslogtreecommitdiffstats
path: root/gobject
diff options
context:
space:
mode:
authorGustavo J. A. M. Carneiro <gjc@src.gnome.org>2005-07-22 14:06:44 +0000
committerGustavo J. A. M. Carneiro <gjc@src.gnome.org>2005-07-22 14:06:44 +0000
commitd55c68d7bf476b434aa95d72f2be4ada2f5223c2 (patch)
tree9d9f40b65bb3cb1ace9e8e18360dc90ecb5c4705 /gobject
parentee18557082ac1fd196e23c24db6d51b0ab2aa687 (diff)
downloadpygobject-d55c68d7bf476b434aa95d72f2be4ada2f5223c2.tar.gz
pygobject-d55c68d7bf476b434aa95d72f2be4ada2f5223c2.tar.xz
pygobject-d55c68d7bf476b434aa95d72f2be4ada2f5223c2.zip
Bug 311226: Metaclass registration causes breakage with old constructors
Diffstat (limited to 'gobject')
-rw-r--r--gobject/pygobject.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/gobject/pygobject.c b/gobject/pygobject.c
index 3877272..e0fbdda 100644
--- a/gobject/pygobject.c
+++ b/gobject/pygobject.c
@@ -1610,6 +1610,12 @@ pygobjectmeta_register(PyTypeObject *subtype, PyObject *instance_dict)
goto out;
}
+ /* Maybe the type doesn't really need to registered? */
+ if (!(PyDict_GetItemString(instance_dict, "__gtype_name__")
+ || PyDict_GetItemString(instance_dict, "__gproperties__")
+ || PyDict_GetItemString(instance_dict, "__gsignals__")))
+ goto out;
+
/* If it's already registered, skip registration */
if (PyDict_GetItemString(instance_dict, "__gtype__"))
goto out;