diff options
author | Martijn Coenen <maco@google.com> | 2017-01-02 15:16:24 +0100 |
---|---|---|
committer | Martijn Coenen <maco@google.com> | 2017-01-05 08:48:15 +0100 |
commit | 52280c38e293ca520180dda316f561b12e64a024 (patch) | |
tree | be4e7278b68d8502bdd5a752a22cebe5df2d3d87 | |
parent | 3c050268f0e3a5fd31ef16b61ce7291546ca865f (diff) |
Callback elision for HIDL interfaces.
Test: mma, hidl_test_java
Bug: 31380743
Change-Id: I9a5c8ef0cc6ac3150395a867690ca82ec2bc419f
-rw-r--r-- | core/jni/android_os_HwBinder.cpp | 12 |
1 files changed, 3 insertions, 9 deletions
diff --git a/core/jni/android_os_HwBinder.cpp b/core/jni/android_os_HwBinder.cpp index c456d622ab5a..81199fa41e1b 100644 --- a/core/jni/android_os_HwBinder.cpp +++ b/core/jni/android_os_HwBinder.cpp @@ -325,15 +325,9 @@ static jobject JHwBinder_native_getService( return NULL; } - sp<hardware::IBinder> service; - manager->get( - ifaceName, - serviceName, - [&service](sp<hidl::base::V1_0::IBase> out) { - service = hardware::toBinder< - hidl::base::V1_0::IBase, hidl::base::V1_0::BpBase - >(out); - }); + sp<hidl::base::V1_0::IBase> base = manager->get(ifaceName, serviceName); + sp<hardware::IBinder> service = hardware::toBinder< + hidl::base::V1_0::IBase, hidl::base::V1_0::BpBase>(base); env->ReleaseStringUTFChars(ifaceNameObj, ifaceName); ifaceName = NULL; |