diff options
author | Devin Moore <devinmoore@google.com> | 2023-12-04 23:42:08 +0000 |
---|---|---|
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | 2023-12-04 23:42:08 +0000 |
commit | 928edefaf32d0dedf5f38e4e4cbc003b938b2be0 (patch) | |
tree | 901e85c433bc52e57c8178c40a9871f66045c533 | |
parent | 67b04500ba78f0b727196e5870e1506274e30733 (diff) | |
parent | adb1320e43449b61d03b5e9827df91970819cf62 (diff) | |
download | libhidl-928edefaf32d0dedf5f38e4e4cbc003b938b2be0.tar.gz |
If hwservicemanager isn't installed, isHidlSupported == false am: adb1320e43
Original change: https://android-review.googlesource.com/c/platform/system/libhidl/+/2855496
Change-Id: I2404926f77cc2d5e78070d9a084f0a0932b6e369
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rw-r--r-- | transport/ServiceManagement.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/transport/ServiceManagement.cpp b/transport/ServiceManagement.cpp index c3d3fa4..8867f53 100644 --- a/transport/ServiceManagement.cpp +++ b/transport/ServiceManagement.cpp @@ -211,7 +211,16 @@ static bool isServiceManager(const hidl_string& fqName) { fqName == IServiceManager1_2::descriptor; } +static bool isHwServiceManagerInstalled() { + return access("/system_ext/bin/hwservicemanager", F_OK) == 0 || + access("/system/system_ext/bin/hwservicemanager", F_OK) == 0 || + access("/system/bin/hwservicemanager", F_OK) == 0; +} + bool isHidlSupported() { + if (!isHwServiceManagerInstalled()) { + return false; + } #ifdef __ANDROID__ // TODO(b/218588089) remove this temporary support variable once Cuttlefish // (the only current Android V launching device) no longer requires HIDL. |