From 26e009cd9cde4d1a82448cbb99fb68df5ef15b5e Mon Sep 17 00:00:00 2001 From: Rob Bradford Date: Wed, 5 Dec 2012 18:47:05 +0000 Subject: [PATCH] compositor: Avoid sending event for invalid point Avoid sending a touch down event using uninitialised surface x/y co-ordinates. Instead present a log message about this unexpected case. --- src/compositor.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/compositor.c b/src/compositor.c index d62a7400f..d6e833f9f 100644 --- a/src/compositor.c +++ b/src/compositor.c @@ -2043,6 +2043,13 @@ notify_touch(struct weston_seat *seat, uint32_t time, int touch_id, } else if (touch->focus) { es = (struct weston_surface *) touch->focus; weston_surface_from_global_fixed(es, x, y, &sx, &sy); + } else { + /* Unexpected condition: We have non-initial touch but + * there is no focused surface. + */ + weston_log("touch event received with %d points down" + "but no surface focused\n", seat->num_tp); + return; } grab->interface->down(grab, time, touch_id, sx, sy);