Merge pull request #5309 from nounoursheureux/master

Fix the joystick vibration on Linux
This commit is contained in:
Rémi Verschelde 2016-06-20 11:09:52 +02:00 committed by GitHub
commit a1a57bc369
2 changed files with 4 additions and 6 deletions

View file

@ -365,7 +365,7 @@ void InputDefault::stop_joy_vibration(int p_device) {
vibration.weak_magnitude = 0;
vibration.strong_magnitude = 0;
vibration.duration = 0;
vibration.timestamp = OS::get_singleton()->get_unix_time();
vibration.timestamp = OS::get_singleton()->get_ticks_usec();
joy_vibration[p_device] = vibration;
}

View file

@ -439,11 +439,9 @@ void joystick_linux::joystick_vibration_stop(int p_id, uint64_t p_timestamp)
return;
}
struct input_event stop;
stop.type = EV_FF;
stop.code = joy.ff_effect_id;
stop.value = 0;
write(joy.fd, (const void*)&stop, sizeof(stop));
if (ioctl(joy.fd, EVIOCRMFF, joy.ff_effect_id) < 0) {
return;
}
joy.ff_effect_id = -1;
joy.ff_effect_timestamp = p_timestamp;