From f8f5a64999d863a39b39bf90ce4c50b31a0b44c9 Mon Sep 17 00:00:00 2001 From: Tim Zimmermann Date: Fri, 15 Apr 2022 10:04:25 +0200 Subject: [PATCH] universal7885: vibrator: Don't allow intensity 0 * Even if amplitude is > 0 resulting intensity might be 0 sometimes * New devices just return EINVAL in kernel and ignore it, but on older ones this may result in very weak vibration Change-Id: I5d290d60d8414ca747dce4af847f190e3caedbe0 Signed-off-by: roynatech2544 --- universal7885-common/hardware/samsung/vibrator/Vibrator.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/universal7885-common/hardware/samsung/vibrator/Vibrator.cpp b/universal7885-common/hardware/samsung/vibrator/Vibrator.cpp index 778b242..fea147d 100644 --- a/universal7885-common/hardware/samsung/vibrator/Vibrator.cpp +++ b/universal7885-common/hardware/samsung/vibrator/Vibrator.cpp @@ -168,6 +168,11 @@ ndk::ScopedAStatus Vibrator::setAmplitude(float amplitude) { if (intensity > INTENSITY_MAX) { intensity = INTENSITY_MAX; } + + if (intensity == 0) { + return ndk::ScopedAStatus::fromExceptionCode(EX_ILLEGAL_ARGUMENT); + } + LOG(DEBUG) << "Setting intensity: " << intensity; if (mHasTimedOutIntensity) {