summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDevin Moore <devinmoore@google.com>2023-11-28 02:28:10 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2023-11-28 02:28:10 +0000
commit32eceb204b6112026df7db4636f722b82c179226 (patch)
tree676469e5a345119e269bf6b58195e60dc03ae0b0
parentc3290b7770f174277220e9c6358ebb0c12fcc493 (diff)
parent0d30917a34bcc91ca9be783cb504c3b120f89007 (diff)
downloadlibhidl-32eceb204b6112026df7db4636f722b82c179226.tar.gz
NoHwServiceManager pretend like IServiceManager is registered am: 0d30917a34
Original change: https://android-review.googlesource.com/c/platform/system/libhidl/+/2847956 Change-Id: I3028ac273b2fb54fe9e2fecd1c11e1603f16847c 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;