aboutsummaryrefslogtreecommitdiff
path: root/render
diff options
context:
space:
mode:
Diffstat (limited to 'render')
-rw-r--r--render/gles2/renderer.c2
-rw-r--r--render/gles2/texture.c6
2 files changed, 8 insertions, 0 deletions
diff --git a/render/gles2/renderer.c b/render/gles2/renderer.c
index b5855d4e..65c2b801 100644
--- a/render/gles2/renderer.c
+++ b/render/gles2/renderer.c
@@ -163,6 +163,8 @@ static bool gles2_render_texture_with_matrix(struct wlr_renderer *wlr_renderer,
draw_quad();
+ glBindTexture(texture->target, 0);
+
POP_GLES2_DEBUG;
return true;
}
diff --git a/render/gles2/texture.c b/render/gles2/texture.c
index 7beb0672..d987678b 100644
--- a/render/gles2/texture.c
+++ b/render/gles2/texture.c
@@ -79,6 +79,8 @@ static bool gles2_texture_write_pixels(struct wlr_texture *wlr_texture,
glPixelStorei(GL_UNPACK_SKIP_PIXELS_EXT, 0);
glPixelStorei(GL_UNPACK_SKIP_ROWS_EXT, 0);
+ glBindTexture(GL_TEXTURE_2D, 0);
+
POP_GLES2_DEBUG;
return true;
}
@@ -177,6 +179,8 @@ struct wlr_texture *wlr_gles2_texture_from_pixels(struct wlr_egl *egl,
fmt->gl_format, fmt->gl_type, data);
glPixelStorei(GL_UNPACK_ROW_LENGTH_EXT, 0);
+ glBindTexture(GL_TEXTURE_2D, 0);
+
POP_GLES2_DEBUG;
return &texture->wlr_texture;
}
@@ -231,6 +235,7 @@ struct wlr_texture *wlr_gles2_texture_from_wl_drm(struct wlr_egl *egl,
glBindTexture(GL_TEXTURE_EXTERNAL_OES, texture->tex);
gles2_procs.glEGLImageTargetTexture2DOES(GL_TEXTURE_EXTERNAL_OES,
texture->image);
+ glBindTexture(GL_TEXTURE_EXTERNAL_OES, 0);
POP_GLES2_DEBUG;
return &texture->wlr_texture;
@@ -292,6 +297,7 @@ struct wlr_texture *wlr_gles2_texture_from_dmabuf(struct wlr_egl *egl,
glBindTexture(GL_TEXTURE_EXTERNAL_OES, texture->tex);
gles2_procs.glEGLImageTargetTexture2DOES(GL_TEXTURE_EXTERNAL_OES,
texture->image);
+ glBindTexture(GL_TEXTURE_EXTERNAL_OES, 0);
POP_GLES2_DEBUG;
return &texture->wlr_texture;