• Olivier Fourdan's avatar
    wayland: Drop cairo surfaces when withdrawing · 3bd7b379
    Olivier Fourdan authored
    If a window is unmapped by the client while gdk is processing updates,
    (for example Firefox un-mapping its window on Expose events), the
    windowing backend resources might be lost (for example with Wayland)
    which can cause a crash in end_paint().
    
    Make sure we drop the cairo surfaces as well when hiding the surface,
    that will avoid the crash in gdk_window_impl_wayland_end_paint() when
    trying to attach the staging cairo surface to a released wl_surface,
    these will be recreated when needed when the surface becomes visible
    again and there is no need to keep such buffers around for a surface
    which is not visible anyway.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=793062
    3bd7b379
Name
Last commit
Last update
.gitlab-ci Loading commit data...
build Loading commit data...
demos Loading commit data...
docs Loading commit data...
examples Loading commit data...
gdk Loading commit data...
gtk Loading commit data...
libgail-util Loading commit data...
m4 Loading commit data...
m4macros Loading commit data...
modules Loading commit data...
po Loading commit data...
po-properties Loading commit data...
tests Loading commit data...
testsuite Loading commit data...
.gitlab-ci.yml Loading commit data...
AUTHORS Loading commit data...
COPYING Loading commit data...
HACKING Loading commit data...
INSTALL.in Loading commit data...
MAINTAINERS Loading commit data...
Makefile.am Loading commit data...
Makefile.decl Loading commit data...
NEWS Loading commit data...
NEWS.pre-1-0 Loading commit data...
README.commits Loading commit data...
README.in Loading commit data...
README.win32 Loading commit data...
acinclude.m4 Loading commit data...
autogen.sh Loading commit data...
config.h.win32.in Loading commit data...
configure.ac Loading commit data...
gail-3.0.pc.in Loading commit data...
gdk-3.0.pc.in Loading commit data...
git.mk Loading commit data...
gtk+-3.0.pc.in Loading commit data...
gtk+-unix-print-3.0.pc.in Loading commit data...
gtk+.doap Loading commit data...
gtk-zip.sh.in Loading commit data...
make-pot Loading commit data...
makefile.msc Loading commit data...
sanitize-la.sh Loading commit data...