mirror of
https://github.com/brl/mutter.git
synced 2024-12-26 12:52:14 +00:00
window-wayland: Don't insist if the window gives us a bad buffer
This is an easy way to get into an infinite loop where we're constantly re-sending stuff to the window. If it worked once, it probably won't work again.
This commit is contained in:
parent
e6558f838e
commit
6c5595fa9c
@ -203,26 +203,28 @@ meta_window_wayland_move_resize_internal (MetaWindow *window,
|
||||
* new position the client wants. */
|
||||
can_move_now = TRUE;
|
||||
}
|
||||
|
||||
if (constrained_rect.width != window->rect.width ||
|
||||
constrained_rect.height != window->rect.height)
|
||||
{
|
||||
wl_window->last_sent_width = constrained_rect.width;
|
||||
wl_window->last_sent_height = constrained_rect.height;
|
||||
|
||||
meta_wayland_surface_configure_notify (window->surface,
|
||||
constrained_rect.width,
|
||||
constrained_rect.height,
|
||||
&wl_window->pending_configure_serial);
|
||||
|
||||
/* We need to wait until the resize completes before we can move */
|
||||
can_move_now = FALSE;
|
||||
}
|
||||
else
|
||||
{
|
||||
/* We're just moving the window, so we don't need to wait for a configure
|
||||
* and then ack to simply move the window. */
|
||||
can_move_now = TRUE;
|
||||
if (constrained_rect.width != window->rect.width ||
|
||||
constrained_rect.height != window->rect.height)
|
||||
{
|
||||
wl_window->last_sent_width = constrained_rect.width;
|
||||
wl_window->last_sent_height = constrained_rect.height;
|
||||
|
||||
meta_wayland_surface_configure_notify (window->surface,
|
||||
constrained_rect.width,
|
||||
constrained_rect.height,
|
||||
&wl_window->pending_configure_serial);
|
||||
|
||||
/* We need to wait until the resize completes before we can move */
|
||||
can_move_now = FALSE;
|
||||
}
|
||||
else
|
||||
{
|
||||
/* We're just moving the window, so we don't need to wait for a configure
|
||||
* and then ack to simply move the window. */
|
||||
can_move_now = TRUE;
|
||||
}
|
||||
}
|
||||
|
||||
if (can_move_now)
|
||||
|
Loading…
Reference in New Issue
Block a user