[Mesa-dev] [PATCH] wayland/egl: Ensure EGL surface is resized on DRI update_buffers()

Juan A. Suarez Romero jasuarez at igalia.com
Mon Dec 3 18:01:54 UTC 2018


On Mon, 2018-12-03 at 17:08 +0000, Emil Velikov wrote:
> Hi Carlos,
> 
> On Mon, 3 Dec 2018 at 08:09, Carlos Garnacho <carlosg at gnome.org> wrote:
> > Fullscreening and unfullscreening a totem window while playing a video
> > sometimes results in the video subsurface not changing size along. This
> > is also reproducible with epiphany.
> > 
> > If a surface gets resized while we have an active back buffer for it, the
> > resized dimensions won't get neither immediately applied on the resize
> > callback, nor correctly synchronized on update_buffers(), as the
> > (now stale) surface size and currently attached buffer size still do match.
> > 
> > There's actually 2 things to synchronize here, first the surface query
> > size might not be updated yet to the wl_egl_window's (i.e. resize_callback
> > happened while there is a back buffer), and second the wayland buffers
> > would need dropping if new surface size differs with the currently attached
> > buffer. These are done in separate steps now.
> > 
> > https://bugzilla.redhat.com/show_bug.cgi?id=1650929
> > 
> > Signed-off-by: Carlos Garnacho <carlosg at gnome.org>
> > Tested-by: Bastien Nocera <hadess at hadess.net>
> 
> Please check if commit a9fb331ea7d1a78936ea8d8385e44cfd66f835c1 has
> any effect on the issue at hand.
> Does it resolve it, or perhaps it makes it more prominent?
> 

Actually, the commit a9fb331ea7 seems the one causing this bug. So this should
include:

Fixes: a9fb331ea7d ("wayland/egl: update surface size on window resize")


> That said,  Cc-ing Daniel/Juan as the people who discussed this in great length.
> 
> HTH
> Emil
> 



More information about the mesa-dev mailing list