X server testing
Simon Thum
simon.thum at gmx.de
Tue Jun 23 05:15:28 PDT 2009
Simon Thum wrote:
> Peter Hutterer wrote:
>> On Mon, Jun 22, 2009 at 07:13:12PM -0400, Thomas Jaeger wrote:
>>> typedef void (*PointerAccelSchemeProc)(
>>> DeviceIntPtr /*pDev*/,
>>> int /*first_valuator*/,
>>> int /*num_valuators*/,
>>> int* /*valuators*/,
>>> float* /*x_frac*/,
>>> float* /*y_frac*/,
>>> int /*evtime*/
>>> );
>>
>> punting this to simon (cc'd)
> A good idea at first glance; I aligned to the scheme modifying valuators
> and remainder in-place simply because that is how it was done. But,
> aside for being cleaner in some way, what does it buy us? It's also
> harder to optimize the no-op case since you always need to copy back.
Crap, I missed you could still do in-place of course, so this last thing
is not a valid argument. Still, I'd prefer a more general solution as
advertised in the previous mail.
Also, if we have a pointer to axes we could strip first_valuator as we
could as well modify the pointer and num_valuators. But TBH I don't even
know first_valuators raison d'être. I was able to uncover 2(!) obscure
sites (vuidFlushAbsEvents in sun_mouse.c and one in jstk.c) where it
could get non-zero under circumstances. In contrast, the server is
stuffed with non-obvious logic(to me, at least) depending on it.
So if we get out of this in-place business, this would be worthwhile to
unify, e.g. in xf86PostMotionEventP.
Cheers,
Simon
More information about the xorg-devel
mailing list