diff options
author | Emil Velikov <[email protected]> | 2017-05-11 17:13:33 +0100 |
---|---|---|
committer | Emil Velikov <[email protected]> | 2017-05-29 16:49:52 +0100 |
commit | 3e73c0245b2e24b9d593179d26b4bed80e1ac078 (patch) | |
tree | a4c2bdfadd30a04ec53915535c366ac33d704974 | |
parent | 12196d1b76898bc51ad55e2ad69689df35b29494 (diff) |
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 <[email protected]>
Reviewed-by: Gurchetan Singh <[email protected]>
Tested-by: Rob Herring <[email protected]>
-rw-r--r-- | src/egl/drivers/dri2/egl_dri2.c | 9 | ||||
-rw-r--r-- | src/egl/drivers/dri2/egl_dri2.h | 3 |
2 files changed, 11 insertions, 1 deletions
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 */ |