diff --git a/hidl/livedisplay/AntiFlicker.cpp b/hidl/livedisplay/AntiFlicker.cpp index ed84413..ab29c51 100644 --- a/hidl/livedisplay/AntiFlicker.cpp +++ b/hidl/livedisplay/AntiFlicker.cpp @@ -33,7 +33,8 @@ Return AntiFlicker::isEnabled() { Return AntiFlicker::setEnabled(bool enabled) { unsigned int value = enabled; - return ioctl(mOplusDisplayFd, PANEL_IOCTL_SET_DIMLAYER_BL_EN, &value) == 0; + return isEnabled() == enabled || + ioctl(mOplusDisplayFd, PANEL_IOCTL_SET_DIMLAYER_BL_EN, &value) == 0; } } // namespace implementation diff --git a/hidl/livedisplay/SunlightEnhancement.cpp b/hidl/livedisplay/SunlightEnhancement.cpp index d4c6942..d1b6262 100644 --- a/hidl/livedisplay/SunlightEnhancement.cpp +++ b/hidl/livedisplay/SunlightEnhancement.cpp @@ -33,7 +33,7 @@ Return SunlightEnhancement::isEnabled() { Return SunlightEnhancement::setEnabled(bool enabled) { unsigned int value = enabled; - return ioctl(mOplusDisplayFd, PANEL_IOCTL_SET_HBM, &value) == 0; + return isEnabled() == enabled || ioctl(mOplusDisplayFd, PANEL_IOCTL_SET_HBM, &value) == 0; } } // namespace implementation