diff --git a/src/compositor.c b/src/compositor.c index 4f5388df..9891b3c3 100644 --- a/src/compositor.c +++ b/src/compositor.c @@ -2213,7 +2213,7 @@ pointer_set_cursor(struct wl_client *client, struct wl_resource *resource, surface = container_of(surface_resource->data, struct weston_surface, surface); - if (serial < seat->seat.pointer->focus_serial) + if (seat->seat.pointer->focus_serial - serial > UINT32_MAX / 2) return; if (surface && surface != seat->sprite) {