diff --git a/Xi/querydp.c b/Xi/querydp.c index bc6feb1b1..e5bf98d86 100644 --- a/Xi/querydp.c +++ b/Xi/querydp.c @@ -132,7 +132,7 @@ ProcXIQueryPointer(ClientPtr client) if (pDev->button) { int i, down; - rep.buttons_len = ((pDev->button->numButtons/8) + 3)/4; + rep.buttons_len = (((pDev->button->numButtons + 7)/8) + 3)/4; rep.length += rep.buttons_len; buttons = xcalloc(rep.buttons_len, 4); if (!buttons)