From 3b23e9d89dd285f3bc33a44dc669aebf2fbc1f56 Mon Sep 17 00:00:00 2001 From: Erik Faye-Lund Date: Wed, 21 Feb 2024 12:10:36 +0100 Subject: [PATCH] mesa/main: allow GL_BGRA for FBOs MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The EXT_texture_format_BGRA8888 spec clearly defines GL_BGRA as a color-renderable format, so we need to support it here as well. This has been broken since the day support for the extension was added. Oh well, let's fix it up! Fixes: 1d595c7cd4a ("gles2: Add GL_EXT_texture_format_BGRA8888 support") Reviewed-by: Marek Olšák Part-of: --- src/mesa/main/fbobject.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/mesa/main/fbobject.c b/src/mesa/main/fbobject.c index 38b1ab2a7b9..da47ac15be1 100644 --- a/src/mesa/main/fbobject.c +++ b/src/mesa/main/fbobject.c @@ -2656,6 +2656,16 @@ _mesa_base_fbo_format(const struct gl_context *ctx, GLenum internalFormat) case GL_RGB565: return _mesa_is_gles(ctx) || ctx->Extensions.ARB_ES2_compatibility ? GL_RGB : 0; + + case GL_BGRA: + /* EXT_texture_format_BGRA8888 only adds this as color-renderable for + * GLES 2 and later + */ + if (_mesa_has_EXT_texture_format_BGRA8888(ctx) && _mesa_is_gles2(ctx)) + return GL_RGBA; + else + return 0; + default: return 0; }