summaryrefslogtreecommitdiff
path: root/recipes/vala/files/static-dbus-methods.patch
diff options
context:
space:
mode:
authorLukas Gorris <lukas.gorris@gmail.com>2009-03-30 21:20:14 +0200
committerLukas Gorris <lukas.gorris@gmail.com>2009-03-30 21:20:14 +0200
commita93dfebb9e7a34ffba9b1ae5e8e496dfab4c3c43 (patch)
tree6c38a4617c92398269e6603a0509fc3006811368 /recipes/vala/files/static-dbus-methods.patch
parent4255898da29e7e0c521d064afedbc4075b3e8155 (diff)
parentd7fdcef3d8c8b80926d579c2db179b594429cebe (diff)
Merge branch 'org.openembedded.dev' of git@git.openembedded.net:openembedded into org.openembedded.dev
Diffstat (limited to 'recipes/vala/files/static-dbus-methods.patch')
-rw-r--r--recipes/vala/files/static-dbus-methods.patch26
1 files changed, 26 insertions, 0 deletions
diff --git a/recipes/vala/files/static-dbus-methods.patch b/recipes/vala/files/static-dbus-methods.patch
new file mode 100644
index 0000000000..7bf4144860
--- /dev/null
+++ b/recipes/vala/files/static-dbus-methods.patch
@@ -0,0 +1,26 @@
+From: Frederik Sdun <frederik.sdun@googlemail.com>
+Hi,
+
+I figured out that vala generates wrong code on static methods. It tries
+to add a user_data pointer, but then the C function has no void*
+user_data.
+
+I appended a diff which fixes the problem for me.
+
+Regards, Frederik
+
+Index: vala/gobject/valadbusclientmodule.vala
+===================================================================
+--- vala/gobject/valadbusclientmodule.vala (Revision 2430)
++++ vala/gobject/valadbusclientmodule.vala (Arbeitskopie)
+@@ -133,7 +133,9 @@
+ cend_call.add_argument (new CCodeIdentifier ("call"));
+ cend_call.add_argument (new CCodeUnaryExpression (CCodeUnaryOperator.ADDRESS_OF, new CCodeIdentifier ("error")));
+ var creply_call = new CCodeFunctionCall ((CCodeExpression) callback.ccodenode);
+- creply_call.add_argument (new CCodeIdentifier ("user_data"));
++ if( reply_method.binding != MemberBinding.STATIC ) {
++ creply_call.add_argument (new CCodeIdentifier ("user_data"));
++ }
+ int param_count = reply_method.get_parameters ().size;
+ int i = 0;
+ foreach (FormalParameter param in reply_method.get_parameters ()) {