summaryrefslogtreecommitdiffstats
path: root/package/x11r7/xdriver_xf86-input-evdev/xdriver_xf86-input-evdev-1.1.2-11-bitops-fixes.patch
blob: 91240faa3f2f7972e004e81769a258802186fc1f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
From: Zephaniah E. Hull <warp@aehallh.com>
Date: Mon, 15 May 2006 22:47:23 +0000 (+0000)
Subject: Hopefully fix the bitops stuff to actually _work_.
X-Git-Tag: xf86-video-impact-0_2_0
X-Git-Url: http://gitweb.freedesktop.org/?p=xorg/driver/xf86-input-evdev.git;a=commitdiff;h=1b03250797daa0ac98323a9f43e895dd0b5c7761

Hopefully fix the bitops stuff to actually _work_.
---

--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2006-05-15  Zephaniah E. Hull,,,  <warp@aehallh.com>
+
+	* src/evdev.h:
+	Hopefully fix the bitops stuff to actually _work_.
+
 2006-05-14  Zephaniah E. Hull  <warp@aehallh.com>
 
 	* man/evdev.man:
--- a/src/evdev.h
+++ b/src/evdev.h
@@ -73,15 +73,15 @@
 #include <xf86Xinput.h>
 
 #ifndef BITS_PER_LONG
-#define BITS_PER_LONG		(sizeof(long) * 8)
+#define BITS_PER_LONG		(sizeof(unsigned long) * 8)
 #endif
 
 #define NBITS(x)		((((x)-1)/BITS_PER_LONG)+1)
-#define LONG(x)			((x) >> (sizeof(unsigned long) + 1))
-#define MASK(x)			(1 << ((x) & (sizeof (unsigned long) * 8 - 1)))
+#define LONG(x)			((x)/BITS_PER_LONG)
+#define MASK(x)			(1UL << ((x) & (BITS_PER_LONG - 1)))
 
 #ifndef test_bit
-#define test_bit(bit, array)	(array[LONG(bit)] & MASK(bit))
+#define test_bit(bit, array)	(!!(array[LONG(bit)] & MASK(bit)))
 #endif
 #ifndef set_bit
 #define set_bit(bit, array)	(array[LONG(bit)] |= MASK(bit))