Fix surface_pong when a seat doesn't have a pointer

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.
This commit is contained in:
Hardening 2013-05-17 18:07:41 +02:00 committed by Kristian Høgsberg
parent ff3230952a
commit eb1e13044f
1 changed files with 4 additions and 2 deletions

View File

@ -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);
}
}