[seed] libseed: Propogate the GIArgInfo in to seed_gi_make_argument



commit 98f826b22fdc83cc72118c74497fb9989330e779
Author: Robert Carr <racarr svn gnome org>
Date:   Fri May 29 05:08:07 2009 -0400

    libseed: Propogate the GIArgInfo in to seed_gi_make_argument
---
 libseed/seed-closure.c |    2 +-
 libseed/seed-engine.c  |    2 +-
 libseed/seed-structs.c |    6 +++---
 libseed/seed-types.c   |    4 +++-
 libseed/seed-types.h   |    1 +
 5 files changed, 9 insertions(+), 6 deletions(-)

diff --git a/libseed/seed-closure.c b/libseed/seed-closure.c
index 0941140..a9182f9 100644
--- a/libseed/seed-closure.c
+++ b/libseed/seed-closure.c
@@ -181,7 +181,7 @@ seed_handle_closure (ffi_cif * cif, void *result, void **args, void *userdata)
       exception = 0;
     }
 
-  seed_gi_make_argument (ctx, (JSValueRef) return_value, return_type,
+  seed_gi_make_argument (ctx, (JSValueRef) return_value, return_type, NULL, 
 			 &return_arg, 0);
   switch (return_tag)
     {
diff --git a/libseed/seed-engine.c b/libseed/seed-engine.c
index f5c0ce9..5f8d2dd 100644
--- a/libseed/seed-engine.c
+++ b/libseed/seed-engine.c
@@ -439,7 +439,7 @@ seed_gobject_method_invoked (JSContextRef ctx,
 	{
 
 	  if (!seed_gi_make_argument (ctx, arguments[i],
-				      type_info,
+				      type_info, arg_info,
 				      &in_args[n_in_args++], exception))
 	    {
 	      seed_make_exception (ctx, exception, 
diff --git a/libseed/seed-structs.c b/libseed/seed-structs.c
index 5c0c8f5..c70c537 100644
--- a/libseed/seed-structs.c
+++ b/libseed/seed-structs.c
@@ -241,7 +241,7 @@ seed_union_set_property (JSContextRef context,
 
   field_type = g_field_info_get_type (field);
 
-  seed_gi_make_argument (context, value, field_type, &field_value, exception);
+  seed_gi_make_argument (context, value, field_type, NULL, &field_value, exception);
   ret = g_field_info_set_field (field, priv->pointer, &field_value);
 
   g_base_info_unref ((GIBaseInfo *) field_type);
@@ -283,7 +283,7 @@ seed_struct_set_property (JSContextRef context,
 
   field_type = g_field_info_get_type (field);
 
-  seed_gi_make_argument (context, value, field_type, &field_value, exception);
+  seed_gi_make_argument (context, value, field_type, NULL, &field_value, exception);
   ret = g_field_info_set_field (field, priv->pointer, &field_value);
 
   g_base_info_unref ((GIBaseInfo *) field_type);
@@ -739,7 +739,7 @@ seed_construct_struct_type_with_parameters (JSContextRef ctx,
 					  (JSObjectRef) parameters,
 					  jsprop_name, NULL);
 
-      seed_gi_make_argument (ctx, jsprop_value, field_type,
+      seed_gi_make_argument (ctx, jsprop_value, field_type, NULL,
 			     &field_value, exception);
       g_field_info_set_field (field, object, &field_value);
 
diff --git a/libseed/seed-types.c b/libseed/seed-types.c
index b0cd935..56797cf 100644
--- a/libseed/seed-types.c
+++ b/libseed/seed-types.c
@@ -460,7 +460,9 @@ seed_gi_make_array (JSContextRef ctx,
 gboolean
 seed_gi_make_argument (JSContextRef ctx,
 		       JSValueRef value,
-		       GITypeInfo * type_info, GArgument * arg,
+		       GITypeInfo * type_info, 
+		       GIArgInfo *arg_info,
+		       GArgument * arg,
 		       JSValueRef * exception)
 {
   GITypeTag gi_tag = g_type_info_get_tag (type_info);
diff --git a/libseed/seed-types.h b/libseed/seed-types.h
index 0d65ddc..91b3d8e 100644
--- a/libseed/seed-types.h
+++ b/libseed/seed-types.h
@@ -53,6 +53,7 @@ gboolean seed_gvalue_from_seed_value (JSContextRef ctx,
 gboolean seed_gi_make_argument (JSContextRef ctx,
 				JSValueRef value,
 				GITypeInfo * type_info,
+				GIArgInfo *arg_info,
 				GArgument * arg, JSValueRef * exception);
 JSValueRef seed_gi_argument_make_js (JSContextRef ctx,
 				     GArgument * arg,



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]