summaryrefslogtreecommitdiff
path: root/lib/mesa/src/egl/drivers
diff options
context:
space:
mode:
authorJonathan Gray <jsg@cvs.openbsd.org>2017-02-26 12:14:54 +0000
committerJonathan Gray <jsg@cvs.openbsd.org>2017-02-26 12:14:54 +0000
commitb5fce4e6eb297a6f7fabd0d6c6b4ffdfefa6ad8b (patch)
tree4c21fc3859e4eae3a2968dcd5f8b5bf23198b8a5 /lib/mesa/src/egl/drivers
parent04c9eaba81433c32fe1a68ad44c3e2023eac56b4 (diff)
Import Mesa 13.0.5
Diffstat (limited to 'lib/mesa/src/egl/drivers')
-rw-r--r--lib/mesa/src/egl/drivers/dri2/platform_wayland.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/lib/mesa/src/egl/drivers/dri2/platform_wayland.c b/lib/mesa/src/egl/drivers/dri2/platform_wayland.c
index 789e03559..27baec348 100644
--- a/lib/mesa/src/egl/drivers/dri2/platform_wayland.c
+++ b/lib/mesa/src/egl/drivers/dri2/platform_wayland.c
@@ -1081,6 +1081,7 @@ static struct dri2_egl_display_vtbl dri2_wl_display_vtbl = {
static const __DRIextension *dri2_loader_extensions[] = {
&dri2_loader_extension.base,
+ &image_loader_extension.base,
&image_lookup_extension.base,
&use_invalidate.base,
NULL,
@@ -1283,6 +1284,8 @@ dri2_initialize_wayland_drm(_EGLDriver *drv, _EGLDisplay *disp)
cleanup_registry:
wl_registry_destroy(dri2_dpy->wl_registry);
wl_event_queue_destroy(dri2_dpy->wl_queue);
+ if (disp->PlatformDisplay == NULL)
+ wl_display_disconnect(dri2_dpy->wl_dpy);
cleanup_dpy:
free(dri2_dpy);
disp->DriverData = NULL;
@@ -1742,6 +1745,8 @@ dri2_wl_swrast_create_window_surface(_EGLDriver *drv, _EGLDisplay *disp,
dri2_surf->format = WL_SHM_FORMAT_ARGB8888;
dri2_surf->wl_win = window;
+ dri2_surf->wl_win->private = dri2_surf;
+ dri2_surf->wl_win->destroy_window_callback = destroy_window_callback;
dri2_surf->base.Width = -1;
dri2_surf->base.Height = -1;
@@ -1924,6 +1929,8 @@ dri2_initialize_wayland_swrast(_EGLDriver *drv, _EGLDisplay *disp)
cleanup_registry:
wl_registry_destroy(dri2_dpy->wl_registry);
wl_event_queue_destroy(dri2_dpy->wl_queue);
+ if (disp->PlatformDisplay == NULL)
+ wl_display_disconnect(dri2_dpy->wl_dpy);
cleanup_dpy:
free(dri2_dpy);
disp->DriverData = NULL;