From 6980de4ef9a67ed6227eecf5b059a8d2e3d470d2 Mon Sep 17 00:00:00 2001 From: Joe Onorato Date: Thu, 17 Nov 2011 16:13:49 -0800 Subject: Don't try to unmarshal void return types when there are out parameters being returned. Change-Id: Ib7d2a5609167a076dd7ee8e10e8a55056789517e --- tools/aidl/generate_java_rpc.cpp | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) (limited to 'tools/aidl') diff --git a/tools/aidl/generate_java_rpc.cpp b/tools/aidl/generate_java_rpc.cpp index 852b0c1..18726c3 100644 --- a/tools/aidl/generate_java_rpc.cpp +++ b/tools/aidl/generate_java_rpc.cpp @@ -737,11 +737,13 @@ generate_result_dispatcher_method(const method_type* method, // The return value { Type* t = NAMES.Search(method->type.type.data); - Variable* rv = new Variable(t, "rv"); - dispatchMethod->statements->Add(new VariableDeclaration(rv)); - generate_create_from_data(t, dispatchMethod->statements, "_result", rv, - resultData, &classLoader); - realCall->arguments.push_back(rv); + if (t != VOID_TYPE) { + Variable* rv = new Variable(t, "rv"); + dispatchMethod->statements->Add(new VariableDeclaration(rv)); + generate_create_from_data(t, dispatchMethod->statements, "_result", rv, + resultData, &classLoader); + realCall->arguments.push_back(rv); + } } VariableFactory stubArgs("arg"); -- cgit v1.1