From 6ae19d3da23ec6d32c9f8cc4d5aa70d88a9f8805 Mon Sep 17 00:00:00 2001 From: Erik Faye-Lund Date: Fri, 7 Dec 2018 12:55:24 +0100 Subject: [PATCH] vrend: restore GL_FRAMEBUFFER after clobbering Both of these functions clobber the framebuffer-binding on general-purpose GL contexts, which is bad for performance. Tested-by: Jakob Bornecrantz Reviewed-by: Gurchetan Singh Signed-off-by: Erik Faye-Lund Signed-off-by: Jakob Bornecrantz Signed-off-by: Dave Airlie --- src/vrend_renderer.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/vrend_renderer.c b/src/vrend_renderer.c index 0ad9166..17c0850 100644 --- a/src/vrend_renderer.c +++ b/src/vrend_renderer.c @@ -7275,7 +7275,7 @@ void vrend_renderer_resource_copy_region(struct vrend_context *ctx, dstx + src_box->width, dy2, glmask, GL_NEAREST); - + glBindFramebuffer(GL_FRAMEBUFFER, ctx->sub->fb_id); } static void vrend_renderer_blit_int(struct vrend_context *ctx, @@ -7482,6 +7482,7 @@ static void vrend_renderer_blit_int(struct vrend_context *ctx, dst_y2, glmask, filter); } + glBindFramebuffer(GL_FRAMEBUFFER, ctx->sub->fb_id); if (make_intermediate_copy) { vrend_renderer_resource_destroy(intermediate_copy, false);