moused and x

YONETANI Tomokazu qhwt+dfly at les.ath.cx
Mon May 16 07:29:22 PDT 2005


On Mon, May 02, 2005 at 11:37:42PM +0200, Jeroen Ruigrok/asmodai wrote:
> 
> Reduced to 6406
> 
> http://www.in-nomine.org/~asmodai/xorg.diff
> 
> I'm finding a lot of issues in the x sources which have nothing to do with
> this issue though. :S

Ok, I think I've found it from the above diff! Please save the attached
patch as:
/usr/dfports/x11-servers/xorg-server/files/patch-programs-Xserver-hw-xfree86-common-xf86Xinput.c

and reinstall your xorg-server.
--- programs/Xserver/hw/xfree86/common/xf86Xinput.c.orig	2005-05-16 23:20:56.000000000 +0900
+++ programs/Xserver/hw/xfree86/common/xf86Xinput.c	2005-05-16 23:23:25.000000000 +0900
@@ -932,15 +932,10 @@
 		    /* modeled from xf86Events.c */
 		    if (device->ptrfeed->ctrl.threshold) {
 			if ((abs(dx) + abs(dy)) >= device->ptrfeed->ctrl.threshold) {
-			    local->dxremaind = ((float)dx * (float)(device->ptrfeed->ctrl.num)) /
-			        (float)(device->ptrfeed->ctrl.den) + local->dxremaind;
-			    valuator[0] = (int)local->dxremaind;
-			    local->dxremaind = local->dxremaind - (float)valuator[0];
-			    
-			    local->dyremaind = ((float)dy * (float)(device->ptrfeed->ctrl.num)) /
-			        (float)(device->ptrfeed->ctrl.den) + local->dyremaind;
-			    valuator[1] = (int)local->dyremaind;
-			    local->dyremaind = local->dyremaind - (float)valuator[1];
+			    valuator[0] = (dx * device->ptrfeed->ctrl.num) /
+					   device->ptrfeed->ctrl.den;
+			    valuator[1] = (dy * device->ptrfeed->ctrl.num) /
+					   device->ptrfeed->ctrl.den;
 			}
 		    }
 		    else if (dx || dy) {




More information about the Bugs mailing list