[perl-Glib-Object-Introspection] Correctly handle user data for wrapped C callbacks



commit 0bd0b243a663733cf1bb84655c9c061a8282ab84
Author: Torsten SchÃnfeld <kaffeetisch gmx de>
Date:   Fri Jan 25 17:54:57 2013 +0100

    Correctly handle user data for wrapped C callbacks
    
    In the marshalling process, the user data arguments were sometimes skipped due
    to code that confused a user data argument associated with a C callback
    argument that we are to pass on to the Perl callback with the user data
    argument for the Perl callback.

 gperl-i11n-invoke-perl.c |    8 --------
 1 files changed, 0 insertions(+), 8 deletions(-)
---
diff --git a/gperl-i11n-invoke-perl.c b/gperl-i11n-invoke-perl.c
index 92fdc2b..e2c6c6f 100644
--- a/gperl-i11n-invoke-perl.c
+++ b/gperl-i11n-invoke-perl.c
@@ -70,14 +70,6 @@ invoke_perl_code (ffi_cif* cif, gpointer resp, gpointer* args, gpointer userdata
 
 		iinfo.current_pos = i;
 
-		/* the closure argument, which we handle separately, is marked
-		 * by having get_closure == i */
-		if (g_arg_info_get_closure (arg_info) == (gint) i) {
-			g_base_info_unref ((GIBaseInfo *) arg_info);
-			g_base_info_unref ((GIBaseInfo *) arg_type);
-			continue;
-		}
-
 		dwarn ("arg info: %s (%p)\n"
 		       "  direction: %d\n"
 		       "  is return value: %d\n"



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