diff --git a/services/miscdevice_service/src/miscdevice_service.cpp b/services/miscdevice_service/src/miscdevice_service.cpp index f1e4a2144a88d7319443db3e26491d5ee9eb037a..0b13ff1ab471700d370f69d6284850c7126c9800 100644 --- a/services/miscdevice_service/src/miscdevice_service.cpp +++ b/services/miscdevice_service/src/miscdevice_service.cpp @@ -908,7 +908,8 @@ int32_t MiscdeviceService::PlayPattern(const VibratorIdentifierIPC& identifier, return checkResult; } VibratePattern vibratePattern; - vibratePattern.startTime = 0; + uint32_t sessionId = customHapticInfoIPC.parameter.sessionId; + vibratePattern.startTime = ((sessionId > 0) ? pattern.startTime : 0); vibratePattern.events = pattern.events; std::vector patterns = {vibratePattern}; VibratePackage package = { @@ -916,7 +917,6 @@ int32_t MiscdeviceService::PlayPattern(const VibratorIdentifierIPC& identifier, }; MergeVibratorParmeters(customHapticInfoIPC.parameter, package); package.Dump(); - uint32_t sessionId = customHapticInfoIPC.parameter.sessionId; VibrateInfo info = { .mode = VIBRATE_BUTT, .packageName = GetPackageName(GetCallingTokenID()),