[PATCH weston 7/8] simple-touch: fix off-by-one in position checks

Pekka Paalanen ppaalanen at gmail.com
Tue Jul 31 03:21:12 PDT 2012


Fix the off by one error in checking whether we can draw the marker
without exceeding buffer dimensions.

Fixes a segfault.

Signed-off-by: Pekka Paalanen <ppaalanen at gmail.com>
---
 clients/simple-touch.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/clients/simple-touch.c b/clients/simple-touch.c
index 3a1d940..f8afbb0 100644
--- a/clients/simple-touch.c
+++ b/clients/simple-touch.c
@@ -118,8 +118,8 @@ touch_paint(struct touch *touch, int32_t x, int32_t y, int32_t id)
 	else
 		c = 0xffffffff;
 
-	if (x < 2 || touch->width - 2 < x ||
-	    y < 2 || touch->height - 2 < y)
+	if (x < 2 || x >= touch->width - 2 ||
+	    y < 2 || y >= touch->height - 2)
 		return;
 
 	p = (uint32_t *) touch->data + (x - 2) + (y - 2) * touch->width;
-- 
1.7.8.6



More information about the wayland-devel mailing list