render/gles2: don't unset the current EGL surface when destroying texture

When a texture is destroyed between wlr_egl_make_current and
wlr_egl_swap_buffers, it resets the current EGL surface to NULL. This
makes wlr_egl_swap_buffers fail.

If the EGL context is already current, there's no need to reset it.
This commit is contained in:
Simon Ser 2019-09-30 11:32:19 +03:00 committed by Drew DeVault
parent 5bddb5a909
commit 6bb7639a0f
1 changed files with 3 additions and 1 deletions

View File

@ -115,7 +115,9 @@ static void gles2_texture_destroy(struct wlr_texture *wlr_texture) {
struct wlr_gles2_texture *texture = gles2_get_texture(wlr_texture);
wlr_egl_make_current(texture->egl, EGL_NO_SURFACE, NULL);
if (!wlr_egl_is_current(texture->egl)) {
wlr_egl_make_current(texture->egl, EGL_NO_SURFACE, NULL);
}
PUSH_GLES2_DEBUG;