diff options
author | emersion <contact@emersion.fr> | 2018-04-25 08:33:41 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-04-25 08:33:41 +0100 |
commit | 99e9f08c4add8f0d77c94d1b37daaec25809cf26 (patch) | |
tree | 240bcac75264906411ef9f454dced46f71702649 /backend | |
parent | c40f86d27f611a2b34cead63e63c12d6a18263eb (diff) | |
parent | 018b82c01e642aae45dace95c5aae5d489e98853 (diff) |
Merge pull request #903 from emersion/wlr-egl-destroy-surface
render/egl: add wlr_egl_destroy_surface
Diffstat (limited to 'backend')
-rw-r--r-- | backend/drm/renderer.c | 8 | ||||
-rw-r--r-- | backend/headless/output.c | 6 | ||||
-rw-r--r-- | backend/wayland/output.c | 2 | ||||
-rw-r--r-- | backend/x11/output.c | 2 |
4 files changed, 6 insertions, 12 deletions
diff --git a/backend/drm/renderer.c b/backend/drm/renderer.c index f06de1ee..ea46a5e9 100644 --- a/backend/drm/renderer.c +++ b/backend/drm/renderer.c @@ -79,9 +79,7 @@ bool wlr_drm_surface_init(struct wlr_drm_surface *surf, } gbm_surface_destroy(surf->gbm); } - if (surf->egl) { - eglDestroySurface(surf->renderer->egl.display, surf->egl); - } + wlr_egl_destroy_surface(&surf->renderer->egl, surf->egl); surf->gbm = gbm_surface_create(renderer->gbm, width, height, format, GBM_BO_USE_RENDERING | flags); @@ -117,9 +115,7 @@ void wlr_drm_surface_finish(struct wlr_drm_surface *surf) { gbm_surface_release_buffer(surf->gbm, surf->back); } - if (surf->egl) { - eglDestroySurface(surf->renderer->egl.display, surf->egl); - } + wlr_egl_destroy_surface(&surf->renderer->egl, surf->egl); if (surf->gbm) { gbm_surface_destroy(surf->gbm); } diff --git a/backend/headless/output.c b/backend/headless/output.c index 9c479cde..f71b4cdb 100644 --- a/backend/headless/output.c +++ b/backend/headless/output.c @@ -29,9 +29,7 @@ static bool output_set_custom_mode(struct wlr_output *wlr_output, int32_t width, refresh = HEADLESS_DEFAULT_REFRESH; } - if (output->egl_surface) { - eglDestroySurface(backend->egl.display, output->egl_surface); - } + wlr_egl_destroy_surface(&backend->egl, output->egl_surface); output->egl_surface = egl_create_surface(&backend->egl, width, height); if (output->egl_surface == EGL_NO_SURFACE) { @@ -73,7 +71,7 @@ static void output_destroy(struct wlr_output *wlr_output) { wl_event_source_remove(output->frame_timer); - eglDestroySurface(output->backend->egl.display, output->egl_surface); + wlr_egl_destroy_surface(&output->backend->egl, output->egl_surface); free(output); } diff --git a/backend/wayland/output.c b/backend/wayland/output.c index c1fa638a..9391f07f 100644 --- a/backend/wayland/output.c +++ b/backend/wayland/output.c @@ -184,7 +184,7 @@ static void wlr_wl_output_destroy(struct wlr_output *wlr_output) { wl_callback_destroy(output->frame_callback); } - eglDestroySurface(output->backend->egl.display, output->surface); + wlr_egl_destroy_surface(&output->backend->egl, output->egl_surface); wl_egl_window_destroy(output->egl_window); zxdg_toplevel_v6_destroy(output->xdg_toplevel); zxdg_surface_v6_destroy(output->xdg_surface); diff --git a/backend/x11/output.c b/backend/x11/output.c index df4ff043..77b4fb07 100644 --- a/backend/x11/output.c +++ b/backend/x11/output.c @@ -61,7 +61,7 @@ static void output_destroy(struct wlr_output *wlr_output) { wl_list_remove(&output->link); wl_event_source_remove(output->frame_timer); - eglDestroySurface(x11->egl.display, output->surf); + wlr_egl_destroy_surface(&x11->egl, output->surf); xcb_destroy_window(x11->xcb_conn, output->win); xcb_flush(x11->xcb_conn); free(output); |