[PATCH] Fix surface_pong when a seat doesn't have a pointer
Hardening
rdp.effort at gmail.com
Fri May 17 09:07:41 PDT 2013
This patch fixes a crash with the surface_pong when one of the
seats doesn't have a pointer. This was the case with the RDP compositor
that use a fake seat with no mouse or keyboard.
---
src/shell.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/src/shell.c b/src/shell.c
index 316cfdc..f5d5bff 100644
--- a/src/shell.c
+++ b/src/shell.c
@@ -1465,8 +1465,10 @@ shell_surface_pong(struct wl_client *client, struct wl_resource *resource,
if (shsurf->ping_timer->serial == serial) {
shsurf->unresponsive = 0;
- wl_list_for_each(seat, &ec->seat_list, link)
- end_busy_cursor(shsurf, seat->pointer);
+ wl_list_for_each(seat, &ec->seat_list, link) {
+ if(seat->pointer)
+ end_busy_cursor(shsurf, seat->pointer);
+ }
ping_timer_destroy(shsurf);
}
}
--
1.8.1.2
More information about the wayland-devel
mailing list