aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/evdev.c16
-rw-r--r--src/evdev.h14
2 files changed, 16 insertions, 14 deletions
diff --git a/src/evdev.c b/src/evdev.c
index c1712f4..38f9c08 100644
--- a/src/evdev.c
+++ b/src/evdev.c
@@ -1223,11 +1223,11 @@ EvdevCacheCompare(InputInfoPtr pInfo, BOOL compare)
int i;
char name[1024] = {0};
- long bitmask[NBITS(EV_MAX)] = {0};
- long key_bitmask[NBITS(KEY_MAX)] = {0};
- long rel_bitmask[NBITS(REL_MAX)] = {0};
- long abs_bitmask[NBITS(ABS_MAX)] = {0};
- long led_bitmask[NBITS(LED_MAX)] = {0};
+ long bitmask[NLONGS(EV_MAX)] = {0};
+ long key_bitmask[NLONGS(KEY_MAX)] = {0};
+ long rel_bitmask[NLONGS(REL_MAX)] = {0};
+ long abs_bitmask[NLONGS(ABS_MAX)] = {0};
+ long led_bitmask[NLONGS(LED_MAX)] = {0};
struct input_absinfo absinfo[ABS_MAX];
if (ioctl(pInfo->fd,
@@ -1323,9 +1323,9 @@ error:
static int
EvdevProbe(InputInfoPtr pInfo)
{
- long key_bitmask[NBITS(KEY_MAX)] = {0};
- long rel_bitmask[NBITS(REL_MAX)] = {0};
- long abs_bitmask[NBITS(ABS_MAX)] = {0};
+ long key_bitmask[NLONGS(KEY_MAX)] = {0};
+ long rel_bitmask[NLONGS(REL_MAX)] = {0};
+ long abs_bitmask[NLONGS(ABS_MAX)] = {0};
int i, has_axes, has_keys, num_buttons, has_scroll;
int kernel24 = 0;
EvdevPtr pEvdev = pInfo->private;
diff --git a/src/evdev.h b/src/evdev.h
index 231ea66..2f58ae8 100644
--- a/src/evdev.h
+++ b/src/evdev.h
@@ -47,7 +47,9 @@
#endif
#define LONG_BITS (sizeof(long) * 8)
-#define NBITS(x) (((x) + LONG_BITS - 1) / LONG_BITS)
+
+/* Number of longs needed to hold the given number of bits */
+#define NLONGS(x) (((x) + LONG_BITS - 1) / LONG_BITS)
/* axis specific data for wheel emulation */
typedef struct {
@@ -121,11 +123,11 @@ typedef struct {
/* Cached info from device. */
char name[1024];
- long bitmask[NBITS(EV_MAX)];
- long key_bitmask[NBITS(KEY_MAX)];
- long rel_bitmask[NBITS(REL_MAX)];
- long abs_bitmask[NBITS(ABS_MAX)];
- long led_bitmask[NBITS(LED_MAX)];
+ long bitmask[NLONGS(EV_MAX)];
+ long key_bitmask[NLONGS(KEY_MAX)];
+ long rel_bitmask[NLONGS(REL_MAX)];
+ long abs_bitmask[NLONGS(ABS_MAX)];
+ long led_bitmask[NLONGS(LED_MAX)];
struct input_absinfo absinfo[ABS_MAX];
/* minor/major number */