summaryrefslogtreecommitdiff
path: root/atk.override
diff options
context:
space:
mode:
Diffstat (limited to 'atk.override')
-rw-r--r--atk.override18
1 files changed, 10 insertions, 8 deletions
diff --git a/atk.override b/atk.override
index 08babd60..bd2e7008 100644
--- a/atk.override
+++ b/atk.override
@@ -14,8 +14,8 @@ ignore-glob
*_get_type
%%
override atk_relation_new kwargs
-static PyObject *
-_wrap_atk_relation_new(PyGBoxed *self, PyObject *args, PyObject *kwargs)
+static int
+_wrap_atk_relation_new (PyGObject *self, PyObject *args, PyObject *kwargs)
{
static char *kwlist[] = { "targets", "relationship", NULL };
AtkObject **targets;
@@ -26,11 +26,11 @@ _wrap_atk_relation_new(PyGBoxed *self, PyObject *args, PyObject *kwargs)
if (!PyArg_ParseTupleAndKeywords(args, kwargs,
"Oi#:relation_new", kwlist,
&py_targets, &relationship))
- return NULL;
+ return -1;
if (!PySequence_Check(py_targets)) {
PyErr_SetString(PyExc_TypeError, "targets argument must be a sequence");
- return NULL;
+ return -1;
}
count = PySequence_Length(py_targets);
@@ -41,14 +41,16 @@ _wrap_atk_relation_new(PyGBoxed *self, PyObject *args, PyObject *kwargs)
if (!pygobject_check(item, &PyAtkObject_Type)) {
PyErr_SetString(PyExc_TypeError, "targets argument must be a sequence of AtkObjects.");
g_free(targets);
- return NULL;
+ return -1;
}
targets[i] = (AtkObject *) pygobject_get(item);
}
- ret = atk_relation_new(targets, count, relationship);
- g_free(targets);
+ self->obj = (GObject *) atk_relation_new(targets, count, relationship);
- return pygobject_new((GObject *) ret);
+ g_free(targets);
+
+ pygobject_register_wrapper((PyObject *) self);
+ return 0;
}