From d28cc798bdf10c7e85189dc2dc3461d63e2fbfc7 Mon Sep 17 00:00:00 2001 From: Marek Olšák Date: Tue, 20 Jun 2017 13:44:31 +0200 Subject: meta: do the full FBO completeness check in decompress_texture_image _mesa_update_state will no longer recompute Width/Height if the framebuffer is complete. We now rely on the FBO completeness check to do it. The only code that needs to be fixed seems to be this one. Reviewed-by: Ian Romanick Tested-by: Ian Romanick --- src/mesa/drivers/common/meta.c | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'src') diff --git a/src/mesa/drivers/common/meta.c b/src/mesa/drivers/common/meta.c index 39499c736bb..87f656062bd 100644 --- a/src/mesa/drivers/common/meta.c +++ b/src/mesa/drivers/common/meta.c @@ -3064,6 +3064,11 @@ decompress_texture_image(struct gl_context *ctx, if (width > decompress_fbo->Width || height > decompress_fbo->Height) { _mesa_renderbuffer_storage(ctx, decompress_fbo->rb, rbFormat, width, height, 0); + + /* Do the full completeness check to recompute + * ctx->DrawBuffer->Width/Height. + */ + ctx->DrawBuffer->_Status = GL_FRAMEBUFFER_UNDEFINED; status = _mesa_check_framebuffer_status(ctx, ctx->DrawBuffer); if (status != GL_FRAMEBUFFER_COMPLETE) { /* If the framebuffer isn't complete then we'll leave -- cgit v1.2.3