On 2018-06-08 04:13 PM, Olivier Fourdan wrote: > If the pixmap size does not match the present box size, flickering > occurs. > > This can happen when the client changes its size (e.g. switching to > fullscreen), and since the buffer is kept as long as the pixmap is > valid, once the buffer is created, it remains at the wrong (old) size > and causes continuous flickering. > > Use the actual pixmap's drawable size instead of the present box to > create the buffer so that it's sized appropriately. > > Bugzilla: https://bugs.freedesktop.org/106841 > Signed-off-by: Olivier Fourdan <ofour...@redhat.com> > --- > hw/xwayland/xwayland-present.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/hw/xwayland/xwayland-present.c b/hw/xwayland/xwayland-present.c > index 4db0d1efc..32727310f 100644 > --- a/hw/xwayland/xwayland-present.c > +++ b/hw/xwayland/xwayland-present.c > @@ -458,8 +458,8 @@ xwl_present_flip(WindowPtr present_window, > xwl_window->present_window = present_window; > > buffer = xwl_glamor_pixmap_get_wl_buffer(pixmap, > - present_box->x2 - > present_box->x1, > - present_box->y2 - > present_box->y1, > + pixmap->drawable.width, > + pixmap->drawable.height, > &buffer_created); > > event->event_id = event_id; >
Please remove the present_box local, it's unused now. With that, Reviewed-by: Michel Dänzer <michel.daen...@amd.com> -- Earthling Michel Dänzer | http://www.amd.com Libre software enthusiast | Mesa and X developer _______________________________________________ xorg-devel@lists.x.org: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: https://lists.x.org/mailman/listinfo/xorg-devel