xorg-server: add a patch from pkgsrc to workaround pointer jumps.

It still happens but not as frequent as before...

--HG--
extra : convert_revision : a262ca7ffd8adb320a54ab67da3fcd4d1eb2e098
This commit is contained in:
Juan RP 2008-10-08 19:32:52 +02:00
parent a71a679744
commit 012beff7ba
2 changed files with 34 additions and 0 deletions

View File

@ -0,0 +1,33 @@
$NetBSD: patch-aa,v 1.4 2008/09/18 20:56:01 bjs Exp $
On Friday 04 July 2008, Joerg Sonnenberger wrote:
> On Thu, Jul 03, 2008 at 07:52:31PM -0600, Sverre Froyen wrote:
> > I've tracked the jumping cursor issue down to the function
> > acceleratePointer in dix/getevents.c.
>
> All this issues in the past happened because some very smart guys
> decided to do random broken things from signal context. Which is why
> this is extremely hard to trace down.
I still see the jumps in 1.4.2. Perhaps my workaround (attached) could be
included until a proper fix is developed?
--- dix/getevents.c.orig 2008-06-29 00:23:13.000000000 -0400
+++ dix/getevents.c
@@ -613,9 +613,15 @@ GetPointerEvents(xEvent *events, DeviceI
clipAxis(pDev, 1, &y);
}
else {
- if (flags & POINTER_ACCELERATE)
+ if (flags & POINTER_ACCELERATE) {
+ int x_in;
+ if (num_valuators >= 1)
+ x_in = valuators[0];
acceleratePointer(pDev, first_valuator, num_valuators,
valuators);
+ if (num_valuators >= 1 && valuators[0] < -3000)
+ valuators[0] = x_in;
+ }
if (pDev->coreEvents) {
/* Get and convert the core pointer coordinate space into

View File

@ -1,6 +1,7 @@
# Template build file for 'xorg-server'.
pkgname=xorg-server
version=1.5.1
patch_files="$pkgname-dix-getevents-c.diff"
extract_sufx=".tar.bz2"
url=http://xorg.freedesktop.org/releases/individual/xserver
build_style=gnu_configure