-
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