summaryrefslogtreecommitdiffstats
path: root/gobject
diff options
context:
space:
mode:
authorGustavo J. A. M. Carneiro <gcarneiro@src.gnome.org>2004-06-20 11:58:37 +0000
committerGustavo J. A. M. Carneiro <gcarneiro@src.gnome.org>2004-06-20 11:58:37 +0000
commit8a3a6d4600a0db5637b6ed9172c5d4ace380a7bc (patch)
tree26a854befb6669e30ee272f4d82f6b34497e0caa /gobject
parent88f5a4dd9eaee059c04e2c99c35c53a282e0b3b0 (diff)
downloadpygobject-8a3a6d4600a0db5637b6ed9172c5d4ace380a7bc.tar.gz
pygobject-8a3a6d4600a0db5637b6ed9172c5d4ace380a7bc.tar.xz
pygobject-8a3a6d4600a0db5637b6ed9172c5d4ace380a7bc.zip
fix bug #144135 (gtk.gdk.GC attributes not working)
Diffstat (limited to 'gobject')
-rw-r--r--gobject/pygobject.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/gobject/pygobject.c b/gobject/pygobject.c
index fa8ef90..b6ea6f8 100644
--- a/gobject/pygobject.c
+++ b/gobject/pygobject.c
@@ -255,6 +255,19 @@ pygobject_new_with_interfaces(GType gtype)
return NULL;
}
+#if 1
+ /* Workaround python tp_(get|set)attr slot inheritance bug.
+ * Fixes pygtk bug #144135. */
+ if (!type->tp_getattr && py_parent_type->tp_getattr) {
+ type->tp_getattro = NULL;
+ type->tp_getattr = py_parent_type->tp_getattr;
+ }
+ if (!type->tp_setattr && py_parent_type->tp_setattr) {
+ type->tp_setattro = NULL;
+ type->tp_setattr = py_parent_type->tp_setattr;
+ }
+#endif
+
#if 0
type->tp_dealloc = (destructor)pygobject_dealloc;
type->tp_traverse = (traverseproc)pygobject_traverse;