commit | d75b4dbdf0429e804935ca6c1ed5b6382bfcd086 | [log] [tgz] |
---|---|---|
author | TreeHugger Robot <treehugger-gerrit@google.com> | Fri Jun 18 14:05:36 2021 +0000 |
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | Fri Jun 18 14:05:36 2021 +0000 |
tree | 1d41ea4e4f5725e9c0767b77b1ded6b95a84af84 | |
parent | e2d53e79e04bac58f07df85986d7a4f3f7d87654 [diff] | |
parent | 80ca14e28c9dcb9800cbddba675e4e5ad678e0c8 [diff] |
Merge "Fix default vibrator HAL to check support on getPrimitiveDuration" into sc-dev am: cca7e93111 am: 80ca14e28c Original change: https://googleplex-android-review.googlesource.com/c/platform/hardware/interfaces/+/14985772 Change-Id: Ic6ed74715754fe9a6bf6f8faacf4377e7f241300
diff --git a/vibrator/aidl/default/Vibrator.cpp b/vibrator/aidl/default/Vibrator.cpp index c6682b3..5755ce5 100644 --- a/vibrator/aidl/default/Vibrator.cpp +++ b/vibrator/aidl/default/Vibrator.cpp
@@ -138,6 +138,11 @@ ndk::ScopedAStatus Vibrator::getPrimitiveDuration(CompositePrimitive primitive, int32_t* durationMs) { + std::vector<CompositePrimitive> supported; + getSupportedPrimitives(&supported); + if (std::find(supported.begin(), supported.end(), primitive) == supported.end()) { + return ndk::ScopedAStatus::fromExceptionCode(EX_UNSUPPORTED_OPERATION); + } if (primitive != CompositePrimitive::NOOP) { *durationMs = 100; } else {