mirror of
https://github.com/brl/mutter.git
synced 2024-11-22 08:00:42 -05:00
wayland: Check the drag focus before processing XDND dest-side messages
If the drag dest surface suddenly disappears, we may find ourselves processing an XdndPosition message that was sent before the X11 drag source had an opportunity to find out. In that case mutter does know, so double check before processing the messages.
This commit is contained in:
parent
ebeca983c7
commit
6f64d6b0aa
@ -1284,6 +1284,9 @@ meta_xwayland_selection_handle_client_message (MetaWaylandCompositor *compositor
|
|||||||
MetaWaylandDragGrab *drag_grab = compositor->seat->data_device.current_grab;
|
MetaWaylandDragGrab *drag_grab = compositor->seat->data_device.current_grab;
|
||||||
MetaWaylandSurface *drag_focus = meta_wayland_drag_grab_get_focus (drag_grab);
|
MetaWaylandSurface *drag_focus = meta_wayland_drag_grab_get_focus (drag_grab);
|
||||||
|
|
||||||
|
if (!drag_focus)
|
||||||
|
return FALSE;
|
||||||
|
|
||||||
if (event->message_type == xdnd_atoms[ATOM_DND_ENTER])
|
if (event->message_type == xdnd_atoms[ATOM_DND_ENTER])
|
||||||
{
|
{
|
||||||
/* Bit 1 in data.l[1] determines whether there's 3 or less mimetype
|
/* Bit 1 in data.l[1] determines whether there's 3 or less mimetype
|
||||||
|
Loading…
Reference in New Issue
Block a user