From 3e73c0245b2e24b9d593179d26b4bed80e1ac078 Mon Sep 17 00:00:00 2001 From: Emil Velikov Date: Thu, 11 May 2017 17:13:33 +0100 Subject: [PATCH] egl: split out a dri2_display_destroy() helper Within dri2_display_release() we already tear down all the display specifics. Within the platform specific dri initialize however we badly and partially duplicate that. Let's stop that by fleshing out the required functionality into a helper and using it throughout the codebase. Signed-off-by: Emil Velikov Reviewed-by: Gurchetan Singh Tested-by: Rob Herring --- src/egl/drivers/dri2/egl_dri2.c | 9 ++++++++- src/egl/drivers/dri2/egl_dri2.h | 3 +++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/src/egl/drivers/dri2/egl_dri2.c b/src/egl/drivers/dri2/egl_dri2.c index eefe3bfc583..1c3d00cf8c3 100644 --- a/src/egl/drivers/dri2/egl_dri2.c +++ b/src/egl/drivers/dri2/egl_dri2.c @@ -855,7 +855,6 @@ static void dri2_display_release(_EGLDisplay *disp) { struct dri2_egl_display *dri2_dpy; - unsigned i; if (!disp) return; @@ -869,6 +868,14 @@ dri2_display_release(_EGLDisplay *disp) return; _eglCleanupDisplay(disp); + dri2_display_destroy(disp); +} + +void +dri2_display_destroy(_EGLDisplay *disp) +{ + struct dri2_egl_display *dri2_dpy = dri2_egl_display(disp); + unsigned i; if (dri2_dpy->own_dri_screen) dri2_dpy->core->destroyScreen(dri2_dpy->dri_screen); diff --git a/src/egl/drivers/dri2/egl_dri2.h b/src/egl/drivers/dri2/egl_dri2.h index b3d48488494..c9c064b23fe 100644 --- a/src/egl/drivers/dri2/egl_dri2.h +++ b/src/egl/drivers/dri2/egl_dri2.h @@ -431,4 +431,7 @@ dri2_set_WL_bind_wayland_display(_EGLDriver *drv, _EGLDisplay *disp) #endif } +void +dri2_display_destroy(_EGLDisplay *disp); + #endif /* EGL_DRI2_INCLUDED */ -- 2.30.2