Avoid a segfault when menus are re-shown under Wayland

The surface is destroyed when we hide a window, but
gdk_window_set_opaque_region can be called before the window is
shown again, so we need to ensure the surface exits.

https://bugzilla.gnome.org/show_bug.cgi?id=707328
This commit is contained in:
Matthias Clasen 2013-09-16 19:01:48 -04:00
parent 67f05b995f
commit 11ad337a29

View File

@ -2081,6 +2081,9 @@ gdk_wayland_window_set_opaque_region (GdkWindow *window,
if (GDK_WINDOW_DESTROYED (window))
return;
if (!impl->surface)
gdk_wayland_window_create_surface (window);
wl_region = wl_region_from_cairo_region (GDK_WAYLAND_DISPLAY (gdk_window_get_display (window)), region);
if (wl_region == NULL)
return;