xwayland: Fix crashes when there is no pointer
When running with a weston session without a pointer device (thus with
the wl_seat not having a pointer) xwayland pointer warping and pointer
confining should simply be ignored to avoid crashes.
Signed-off-by: Sjoerd Simons <sjoerd@collabora.com>
(cherry picked from commit d35f68336b
)
This commit is contained in:
parent
3aa31823db
commit
533cc6ca04
|
@ -2782,6 +2782,9 @@ xwl_seat_can_emulate_pointer_warp(struct xwl_seat *xwl_seat)
|
|||
{
|
||||
struct xwl_screen *xwl_screen = xwl_seat->xwl_screen;
|
||||
|
||||
if (!xwl_seat->pointer)
|
||||
return FALSE;
|
||||
|
||||
if (!xwl_screen->relative_pointer_manager)
|
||||
return FALSE;
|
||||
|
||||
|
@ -2874,6 +2877,9 @@ xwl_seat_confine_pointer(struct xwl_seat *xwl_seat,
|
|||
if (!pointer_constraints)
|
||||
return;
|
||||
|
||||
if (!xwl_seat->wl_pointer)
|
||||
return;
|
||||
|
||||
if (xwl_seat->cursor_confinement_window == xwl_window &&
|
||||
xwl_seat->confined_pointer)
|
||||
return;
|
||||
|
|
Loading…
Reference in New Issue
Block a user