mirror of
https://github.com/X11Libre/xf86-input-synaptics.git
synced 2026-03-24 09:44:40 +00:00
When resetting, reset the open slots to -1
open_slots holds the slot index, resetting it to 0 is a bad idea. And make sure that we do reset after DEVICE_INIT. We already do so on DEVICE_CLOSE, but after the first DEVICE_ON the data could still be random. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Keith Packard <keithp@keithp.com>
This commit is contained in:
@@ -1026,6 +1026,8 @@ error:
|
||||
static void
|
||||
SynapticsReset(SynapticsPrivate * priv)
|
||||
{
|
||||
int i;
|
||||
|
||||
SynapticsResetHwState(priv->hwState);
|
||||
SynapticsResetHwState(priv->local_hw_state);
|
||||
SynapticsResetHwState(priv->comm.hwState);
|
||||
@@ -1055,7 +1057,9 @@ SynapticsReset(SynapticsPrivate * priv)
|
||||
priv->prev_z = 0;
|
||||
priv->prevFingers = 0;
|
||||
priv->num_active_touches = 0;
|
||||
memset(priv->open_slots, 0, priv->num_slots * sizeof(int));
|
||||
|
||||
for (i = 0; i < priv->num_slots; i++)
|
||||
priv->open_slots[i] = -1;
|
||||
}
|
||||
|
||||
static int
|
||||
@@ -1352,6 +1356,8 @@ DeviceInit(DeviceIntPtr dev)
|
||||
InitDeviceProperties(pInfo);
|
||||
XIRegisterPropertyHandler(pInfo->dev, SetProperty, NULL, NULL);
|
||||
|
||||
SynapticsReset(priv);
|
||||
|
||||
return Success;
|
||||
|
||||
fail:
|
||||
|
||||
Reference in New Issue
Block a user