Module: wine Branch: master Commit: f1beea4f861be815b5b6c3d539ba4eec9c668414 URL: http://source.winehq.org/git/wine.git/?a=commit;h=f1beea4f861be815b5b6c3d539...
Author: Vincent Pelletier plr.vincent@gmail.com Date: Wed Mar 30 21:52:14 2011 +0200
dinput: Effect length can actually be 0.
This fixes force feedback devices slamming for 10ms at full strength, as attack is an absolute value, not a factor of effect level.
---
dlls/dinput/effect_linuxinput.c | 11 +++++------ 1 files changed, 5 insertions(+), 6 deletions(-)
diff --git a/dlls/dinput/effect_linuxinput.c b/dlls/dinput/effect_linuxinput.c index fbc5994..0154f49 100644 --- a/dlls/dinput/effect_linuxinput.c +++ b/dlls/dinput/effect_linuxinput.c @@ -606,13 +606,12 @@ static HRESULT WINAPI LinuxInputEffectImpl_SetParameters( else env = NULL;
if (peff->lpEnvelope == NULL) { - /* if this type had an envelope, reset it - * note that length can never be zero, so we set it to something minuscule */ + /* if this type had an envelope, reset it */ if (env) { - env->attack_length = 0x10; - env->attack_level = 0x7FFF; - env->fade_length = 0x10; - env->fade_level = 0x7FFF; + env->attack_length = 0; + env->attack_level = 0; + env->fade_length = 0; + env->fade_level = 0; } } else { /* did we get passed an envelope for a type that doesn't even have one? */