[perl-Glib-Object-Introspection] Fix the GList → SV conversion
- From: Torsten Schönfeld <tsch src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [perl-Glib-Object-Introspection] Fix the GList → SV conversion
- Date: Mon, 3 May 2010 20:50:58 +0000 (UTC)
commit 95e7dcf6aa735a6558b35809ee4461a0d1446089
Author: Torsten Schönfeld <kaffeetisch gmx de>
Date: Mon May 3 22:20:41 2010 +0200
Fix the GList â?? SV conversion
interface_to_sv expects a GArgument*, and arg->v_pointer is apparently
not necessarily equal to arg, so simply passing a raw pointer doesn't
always work. So construct a temporary GArgument and pass that on.
GObjectIntrospection.xs | 4 +++-
1 files changed, 3 insertions(+), 1 deletions(-)
---
diff --git a/GObjectIntrospection.xs b/GObjectIntrospection.xs
index 3c8ed92..5b816c4 100644
--- a/GObjectIntrospection.xs
+++ b/GObjectIntrospection.xs
@@ -545,7 +545,9 @@ glist_to_sv (GITypeInfo* info,
for (i = pointer; i; i = i->next) {
dwarn (" converting pointer %p\n", i->data);
- value = interface_to_sv (param_info, i->data,
+ GArgument arg = {0,};
+ arg.v_pointer = i->data;
+ value = interface_to_sv (param_info, &arg,
transfer == GI_TRANSFER_EVERYTHING);
if (value)
av_push (av, value);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]