From: Chris Bagwell <ch...@cnpbagwell.com> The check to find event sync windows with to little information was to agressive. For example, if only pressure is changing then only two events will be sent: ABS_PRESSURE and EV_SYN.
The previous logic would discard in this case. This is also in preparation for simplier tools which do not report serial numbers and in general will send small total events per sync window. Also, fixed comment since MSC_SERIAL events are not strictly required. Signed-off-by: Chris Bagwell <ch...@cnpbagwell.com> --- src/wcmUSB.c | 7 ++++--- 1 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/wcmUSB.c b/src/wcmUSB.c index 4b1806f..72adb0b 100644 --- a/src/wcmUSB.c +++ b/src/wcmUSB.c @@ -814,9 +814,10 @@ static void usbParseEvent(InputInfoPtr pInfo, wcmUSBData* private = common->private; DBG(10, common, "\n"); + /* store events until we receive the MSC_SERIAL containing - * the serial number; without it we cannot determine the - * correct channel. */ + * the serial number or a SYN_REPORT. + */ /* space left? bail if not. */ if (private->wcmEventCnt >= @@ -871,7 +872,7 @@ static void usbParseEvent(InputInfoPtr pInfo, } /* ignore events without information */ - if ((private->wcmEventCnt <= 2) && private->wcmLastToolSerial) + if ((private->wcmEventCnt < 2) && private->wcmLastToolSerial) { DBG(3, common, "%s: dropping empty event" " for serial %d\n", pInfo->name, -- 1.7.2.2 ------------------------------------------------------------------------------ This SF.net Dev2Dev email is sponsored by: Show off your parallel programming skills. Enter the Intel(R) Threading Challenge 2010. http://p.sf.net/sfu/intel-thread-sfd _______________________________________________ Linuxwacom-devel mailing list Linuxwacom-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel