Hello community, here is the log from the commit of package xf86-input-synaptics for openSUSE:Factory checked in at 2013-01-08 09:15:47 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/xf86-input-synaptics (Old) and /work/SRC/openSUSE:Factory/.xf86-input-synaptics.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "xf86-input-synaptics", Maintainer is "" Changes: -------- --- /work/SRC/openSUSE:Factory/xf86-input-synaptics/xf86-input-synaptics.changes 2012-07-31 14:00:01.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.xf86-input-synaptics.new/xf86-input-synaptics.changes 2013-01-08 09:15:48.000000000 +0100 @@ -1,0 +2,6 @@ +Fri Jan 4 09:58:45 UTC 2013 - sndir...@suse.com + +- xf86-input-synaptics-Reset-num_active_touches-on-DeviceOff-52496.patch + * Reset num_active_touches on DeviceOff (bnc#779452, fdo#52496) + +------------------------------------------------------------------- New: ---- xf86-input-synaptics-Reset-num_active_touches-on-DeviceOff-52496.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ xf86-input-synaptics.spec ++++++ --- /var/tmp/diff_new_pack.IPRSGo/_old 2013-01-08 09:15:49.000000000 +0100 +++ /var/tmp/diff_new_pack.IPRSGo/_new 2013-01-08 09:15:49.000000000 +0100 @@ -1,7 +1,7 @@ # # spec file for package xf86-input-synaptics # -# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -27,6 +27,7 @@ Patch0: xf86-input-synaptics-wait.diff Patch2: xf86-input-synaptics-xorg.conf.d_snippet.diff Patch5: xf86-input-synaptics-default-tap.diff +Patch6: xf86-input-synaptics-Reset-num_active_touches-on-DeviceOff-52496.patch BuildRequires: autoconf >= 2.60 BuildRequires: automake BuildRequires: libtool @@ -75,6 +76,7 @@ %patch0 -p1 %patch2 -p1 %patch5 -p1 +%patch6 -p1 %build autoreconf -fi ++++++ xf86-input-synaptics-Reset-num_active_touches-on-DeviceOff-52496.patch ++++++ >From a245d42f53096b1ae81e6702729f97ca508e5b5b Mon Sep 17 00:00:00 2001 From: Peter Hutterer <peter.hutte...@who-t.net> Date: Thu, 30 Aug 2012 16:38:38 +1000 Subject: [PATCH] Reset num_active_touches on DeviceOff (#52496) When disabling the device, reset num_active_touches to zero. Otherwise, num_active_touches stays at the value it was on DeviceOff(). Future touches add to that value until the index may go past priv->open_slots[]. That causes spurious memory corruption on touch ends. And as of 55fc42e7c9b4948cadd4f98ef7b6a3b12e268e3e we ignore pre-existing touches anyway. Test-case: - place num_touches fingers on the touchpad - xinput disable <device> - lift fingers - xinput enable <device> - place finger on device, num_active_touches is now (num_touches + 1) X.Org Bug 52496 <http://bugs.freedesktop.org/show_bug.cgi?id=52496> Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> Reviewed-by: Chase Douglas <chase.doug...@canonical.com> --- src/synaptics.c | 2 ++ 1 file changed, 2 insertions(+) Index: xf86-input-synaptics-1.6.2/src/synaptics.c =================================================================== --- xf86-input-synaptics-1.6.2.orig/src/synaptics.c +++ xf86-input-synaptics-1.6.2/src/synaptics.c @@ -1154,6 +1154,7 @@ SynapticsReset(SynapticsPrivate * priv) priv->prev_z = 0; priv->prevFingers = 0; #ifdef HAVE_MULTITOUCH + priv->num_active_touches = 0; memset(priv->open_slots, 0, priv->num_slots * sizeof(int)); #endif } @@ -3118,6 +3119,7 @@ UpdateTouchState(InputInfoPtr pInfo, str if (hw->slot_state[i] == SLOTSTATE_OPEN) { priv->open_slots[priv->num_active_touches] = i; priv->num_active_touches++; + BUG_WARN(priv->num_active_touches > priv->num_slots); } else if (hw->slot_state[i] == SLOTSTATE_CLOSE) { Bool found = FALSE; -- To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org For additional commands, e-mail: opensuse-commit+h...@opensuse.org