summaryrefslogtreecommitdiff
path: root/girepository/ginvoke.c
diff options
context:
space:
mode:
authorMark Nauwelaerts <mark.nauwelaerts@collabora.co.uk>2012-09-03 14:39:31 +0200
committerMartin Pitt <martinpitt@gnome.org>2012-09-03 16:00:07 +0200
commit0ea8c167e41ee6fe4e315860e815ffc3d9a3a3dd (patch)
tree6dde45458874759424d81623b73acab7dab02641 /girepository/ginvoke.c
parent5d338847ffdce68f28ffefa3925bab8394e780d0 (diff)
downloadgobject-introspection-0ea8c167e41ee6fe4e315860e815ffc3d9a3a3dd.tar.gz
ginvoke: support conversion of fundamental type GParamSpec values
https://bugzilla.gnome.org/show_bug.cgi?id=683265
Diffstat (limited to 'girepository/ginvoke.c')
-rw-r--r--girepository/ginvoke.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/girepository/ginvoke.c b/girepository/ginvoke.c
index ed4996d9..5c0ace4c 100644
--- a/girepository/ginvoke.c
+++ b/girepository/ginvoke.c
@@ -52,6 +52,7 @@ value_to_ffi_type (const GValue *gvalue, gpointer *value)
case G_TYPE_OBJECT:
case G_TYPE_BOXED:
case G_TYPE_POINTER:
+ case G_TYPE_PARAM:
rettype = &ffi_type_pointer;
*value = (gpointer)&(gvalue->data[0].v_pointer);
break;
@@ -118,6 +119,7 @@ g_value_to_ffi_return_type (const GValue *gvalue,
case G_TYPE_OBJECT:
case G_TYPE_BOXED:
case G_TYPE_POINTER:
+ case G_TYPE_PARAM:
rettype = &ffi_type_pointer;
break;
case G_TYPE_FLOAT:
@@ -198,6 +200,9 @@ g_value_from_ffi_value (GValue *gvalue,
case G_TYPE_BOXED:
g_value_set_boxed (gvalue, (gpointer)value->v_pointer);
break;
+ case G_TYPE_PARAM:
+ g_value_set_param (gvalue, (gpointer)value->v_pointer);
+ break;
default:
g_warning ("Unsupported fundamental type: %s",
g_type_name (g_type_fundamental (G_VALUE_TYPE (gvalue))));