On Wed, Mar 07, 2012 at 02:52:54PM -0800, Chase Douglas wrote: > This fixes scroll class increment values on 32-bit machines. Performing > 1UL << 32 shifts the bit off the end of a 32-bit unsigned long value. By > expanding to 1ULL, we have the full 64-bits of an unsigned long long > including on 32-bit machines. > > Before this change, xinput list --long would output scroll increment > values of -nan. > > Signed-off-by: Chase Douglas <[email protected]> > --- > This is likely the cause of bad scrolling behavior in GTK+ master. > > src/XExtInt.c | 2 +- > 1 files changed, 1 insertions(+), 1 deletions(-) > > diff --git a/src/XExtInt.c b/src/XExtInt.c > index 7694f06..89c0894 100644 > --- a/src/XExtInt.c > +++ b/src/XExtInt.c > @@ -1695,7 +1695,7 @@ copy_classes(XIDeviceInfo* to, xXIAnyInfo* from, int > *nclasses) > cls_lib->scroll_type= cls_wire->scroll_type; > cls_lib->flags = cls_wire->flags; > cls_lib->increment = cls_wire->increment.integral; > - cls_lib->increment += (unsigned > int)cls_wire->increment.frac/(double)(1UL << 32); > + cls_lib->increment += (unsigned > int)cls_wire->increment.frac/(double)(1ULL << 32); > > to->classes[cls_idx++] = any_lib; > } > -- > 1.7.9
applied, thanks. Cheers, Peter _______________________________________________ [email protected]: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
