summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--gobject/pygobject.c40
1 files changed, 1 insertions, 39 deletions
diff --git a/gobject/pygobject.c b/gobject/pygobject.c
index 1af303d..7379a92 100644
--- a/gobject/pygobject.c
+++ b/gobject/pygobject.c
@@ -484,44 +484,11 @@ pygobject_repr(PyGObject *self)
return PyString_FromString(buf);
}
-typedef struct {
- visitproc visit;
- void *arg;
- int retval;
-} gobject_visit_data_t;
-
-static void
-_pygobject_visit_func(GObject *object,
- gpointer _data)
-{
- gobject_visit_data_t *data = _data;
- PyObject *wrapper;
-
- if (data->retval)
- return;
-
- /* FIXME: this should be moved into module initialization */
- if (!pygobject_wrapper_key)
- pygobject_wrapper_key = g_quark_from_static_string(pygobject_wrapper_id);
-
- wrapper = (PyObject *) g_object_get_qdata(object, pygobject_wrapper_key);
- if (wrapper) {
- data->retval = data->visit(wrapper, data->arg);
- if (data->retval)
- return;
- } else {
- /* recursively visit children */
- g_object_traverse(object, _pygobject_visit_func, data);
- }
-}
-
-
static int
pygobject_traverse(PyGObject *self, visitproc visit, void *arg)
{
int ret = 0;
GSList *tmp;
- gobject_visit_data_t gobjvisitdata;
if (self->inst_dict) ret = visit(self->inst_dict, arg);
if (ret != 0) return ret;
@@ -543,12 +510,7 @@ pygobject_traverse(PyGObject *self, visitproc visit, void *arg)
ret = visit((PyObject *)self, arg);
if (ret != 0) return ret;
- gobjvisitdata.visit = visit;
- gobjvisitdata.arg = arg;
- gobjvisitdata.retval = 0;
- g_object_traverse(self->obj, _pygobject_visit_func, &gobjvisitdata);
-
- return gobjvisitdata.retval;
+ return 0;
}
static int