diff options
-rw-r--r-- | ChangeLog | 1 | ||||
-rw-r--r-- | gobject/gobjectmodule.c | 2 | ||||
-rw-r--r-- | gobjectmodule.c | 2 |
3 files changed, 5 insertions, 0 deletions
@@ -3,6 +3,7 @@ * gobjectmodule.c (pygobject_dealloc): use plain old PyObject_GC_Del, as the overridden tp_free seems to ignore the GC header. + (pygobject_new): GC track wrappers created through pygobject_new. * configure.in: increment version number, and require gtk 1.3.9 (we already required it before). diff --git a/gobject/gobjectmodule.c b/gobject/gobjectmodule.c index 2b040eb1..e49c64fc 100644 --- a/gobject/gobjectmodule.c +++ b/gobject/gobjectmodule.c @@ -325,6 +325,8 @@ pygobject_new(GObject *obj) /* save wrapper pointer so we can access it later */ g_object_set_qdata(obj, pygobject_wrapper_key, self); + PyObject_GC_Track((PyObject *)self); + return (PyObject *)self; } diff --git a/gobjectmodule.c b/gobjectmodule.c index 2b040eb1..e49c64fc 100644 --- a/gobjectmodule.c +++ b/gobjectmodule.c @@ -325,6 +325,8 @@ pygobject_new(GObject *obj) /* save wrapper pointer so we can access it later */ g_object_set_qdata(obj, pygobject_wrapper_key, self); + PyObject_GC_Track((PyObject *)self); + return (PyObject *)self; } |