diff options
author | Simon Ser <contact@emersion.fr> | 2020-05-19 11:54:59 +0200 |
---|---|---|
committer | Drew DeVault <sir@cmpwn.com> | 2020-05-19 14:56:20 +0200 |
commit | 1edc42157bbb01b25ec27750f883fd84ee5908d6 (patch) | |
tree | 068205ea52bf4c76a86e96f19862f794852937d0 /include/wlr | |
parent | 781ed1ff02e38dffdfebca0fa80baa1791849c3b (diff) |
render/egl: introduce wlr_egl_unset_current
This function can be called after wlr_egl_make_current to cleanup the
EGL context. This avoids having lingering EGL contexts that make things
work by chance.
Closes: https://github.com/swaywm/wlroots/issues/2197
Diffstat (limited to 'include/wlr')
-rw-r--r-- | include/wlr/render/egl.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/include/wlr/render/egl.h b/include/wlr/render/egl.h index c810b08e..627e9aaf 100644 --- a/include/wlr/render/egl.h +++ b/include/wlr/render/egl.h @@ -122,9 +122,18 @@ bool wlr_egl_export_image_to_dmabuf(struct wlr_egl *egl, EGLImageKHR image, */ bool wlr_egl_destroy_image(struct wlr_egl *egl, EGLImageKHR image); +/** + * Make the EGL context current. The provided surface will be made current + * unless EGL_NO_SURFACE. + * + * Callers are expected to clear the current context when they are done by + * calling wlr_egl_unset_current. + */ bool wlr_egl_make_current(struct wlr_egl *egl, EGLSurface surface, int *buffer_age); +bool wlr_egl_unset_current(struct wlr_egl *egl); + bool wlr_egl_is_current(struct wlr_egl *egl); bool wlr_egl_swap_buffers(struct wlr_egl *egl, EGLSurface surface, |