From 281e9a81aeb2fe642dfd1d186165db7490c0a920 Mon Sep 17 00:00:00 2001 From: Frederic Peters Date: Tue, 29 Apr 2008 12:05:47 +0000 Subject: [project @ fpeters@0d.be-20071115102943-ai5s97yj5g9chrv3] added getter for internal GObject* reference count; useful to debug memory allocations. Original author: Frederic Peters Date: 2007-11-15 11:29:43.003000+01:00 --- bindings/lang_python_wrapper_top.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/bindings/lang_python_wrapper_top.c b/bindings/lang_python_wrapper_top.c index fc2769f9..74cc1c74 100644 --- a/bindings/lang_python_wrapper_top.c +++ b/bindings/lang_python_wrapper_top.c @@ -215,6 +215,21 @@ static PyMemberDef PyGObjectPtr_members[] = { {NULL} }; +static PyObject* PyGObjectPtr_get_refcount(PyGObjectPtr *self, void *closure) +{ + PyObject *refcount; + + refcount = PyInt_FromLong(self->obj->ref_count); + Py_INCREF(refcount); + return refcount; +} + +static PyGetSetDef PyGObjectPtr_getseters[] = { + {"refcount", (getter)PyGObjectPtr_get_refcount, NULL, + "reference count of intern GObject*", NULL}, + {NULL} /* Sentinel */ +}; + static PyTypeObject PyGObjectPtrType = { PyObject_HEAD_INIT(NULL) @@ -247,5 +262,6 @@ static PyTypeObject PyGObjectPtrType = { 0, /* tp_iternext */ 0, /* tp_methods */ PyGObjectPtr_members, /* tp_members */ + PyGObjectPtr_getseters, /* tp_getset */ }; -- cgit