diff options
author | Gustavo J. A. M. Carneiro <gcarneiro@src.gnome.org> | 2003-12-26 12:20:49 +0000 |
---|---|---|
committer | Gustavo J. A. M. Carneiro <gcarneiro@src.gnome.org> | 2003-12-26 12:20:49 +0000 |
commit | 4f6fc050596ae3e49a89842d305fb2b4e5bf6dfe (patch) | |
tree | a224400f5b7da40c6c2ecb807c1de842c497393d | |
parent | aea18495810da51a0b7648bd44d0fe404211204b (diff) | |
download | pygobject-4f6fc050596ae3e49a89842d305fb2b4e5bf6dfe.tar.gz pygobject-4f6fc050596ae3e49a89842d305fb2b4e5bf6dfe.tar.xz pygobject-4f6fc050596ae3e49a89842d305fb2b4e5bf6dfe.zip |
Handle conversion of GValueArray to PyObject
-rw-r--r-- | gobject/pygtype.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/gobject/pygtype.c b/gobject/pygtype.c index 73ce458..56eca37 100644 --- a/gobject/pygtype.c +++ b/gobject/pygtype.c @@ -681,8 +681,14 @@ pyg_value_as_pyobject(const GValue *value, gboolean copy_boxed) return Py_None; } return ret; - } - + } else if (G_VALUE_HOLDS(value, G_TYPE_VALUE_ARRAY)) { + GValueArray *array = (GValueArray *) g_value_get_boxed(value); + PyObject *ret = PyTuple_New(array->n_values); + int i; + for (i = 0; i < array->n_values; ++i) + PyTuple_SET_ITEM(ret, i, pyg_value_as_pyobject(array->values + i, copy_boxed)); + return ret; + } bm = pyg_boxed_lookup(G_VALUE_TYPE(value)); if (bm) { return bm->fromvalue(value); |