summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDevin Moore <devinmoore@google.com>2023-11-28 03:37:28 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2023-11-28 03:37:28 +0000
commit625e3b0968ffe048c017b7ec66cda06781aec99f (patch)
tree676469e5a345119e269bf6b58195e60dc03ae0b0
parent493a0ddcfd40527ce44ca5d4938407ad7d786ce5 (diff)
parent5f8e90b87a7ed181a395cf38957edffa0aea885e (diff)
downloadlibhidl-625e3b0968ffe048c017b7ec66cda06781aec99f.tar.gz
NoHwServiceManager pretend like IServiceManager is registered am: 0d30917a34 am: b1b7219eb6 am: 5f8e90b87a
Original change: https://android-review.googlesource.com/c/platform/system/libhidl/+/2847956 Change-Id: I795298bba5a598f00cf79e0fbc4e9e1d27c77a65 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rw-r--r--transport/ServiceManagement.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/transport/ServiceManagement.cpp b/transport/ServiceManagement.cpp
index 8c9bc5b..a759c50 100644
--- a/transport/ServiceManagement.cpp
+++ b/transport/ServiceManagement.cpp
@@ -252,6 +252,12 @@ struct NoHwServiceManager : public IServiceManager1_2 {
}
Return<Transport> getTransport(const hidl_string& fqName, const hidl_string& name) {
+ // We pretend like IServiceManager is declared for
+ // IServiceManager::getService to return this NoHwServiceManager
+ // instance
+ if (isServiceManager(fqName)) {
+ return Transport::HWBINDER;
+ }
LOG(INFO) << "Trying to get transport of " << fqName << "/" << name
<< " without hwservicemanager";
return Transport::EMPTY;