aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHaixia Shi <[email protected]>2016-08-12 15:34:09 -0700
committerChad Versace <[email protected]>2016-08-12 15:34:09 -0700
commit8c56ff643b1d6d18d81d82a4d23103a1cd51500a (patch)
treeecbfa1ff2d4840400e94a360d7b9da65ba2612cf
parent0bf531aee6a2e6556a6c54f55c2ad23298677adb (diff)
mesa: change state query return value for RGB565
The GL_BGR and GL_UNSIGNED_SHORT_5_6_5_REV are not defined anywhere in OpenGL ES 3.2 (or earlier) specification, and there are no known extensions in the Khronos registry that would add these enums as valid responses for glGetIntegerv(GL_IMPLEMENTATION_COLOR_READ_TYPE) and glGetIntegerv(GL_IMPLEMENTATION_COLOR_READ_FORMAT) queries. Note that this patch does not change the bit layout returned by the query. As defined by the GL spec, the bit layout of GL_RGB + GL_UNSIGNED_SHORT_5_6_5 and GL_BGR + GL_UNSIGNED_SHORT_5_6_5_REV are identical. TEST=dEQP-GLES3.functional.state_query.integers.* Signed-off-by: Haixia Shi <[email protected]> Reviewed-by: Chad Versace <[email protected]> Reviewed-by: Jason Ekstrand <[email protected]> Cc: Stéphane Marchesin <[email protected]> Change-Id: I81bbc8ccdc7e125edaeae443baf6fa8fdefcc6b6
-rw-r--r--src/mesa/main/framebuffer.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/mesa/main/framebuffer.c b/src/mesa/main/framebuffer.c
index 38bd6806056..f024f5e9337 100644
--- a/src/mesa/main/framebuffer.c
+++ b/src/mesa/main/framebuffer.c
@@ -857,7 +857,7 @@ _mesa_get_color_read_format(struct gl_context *ctx)
if (format == MESA_FORMAT_B8G8R8A8_UNORM)
return GL_BGRA;
else if (format == MESA_FORMAT_B5G6R5_UNORM)
- return GL_BGR;
+ return GL_RGB;
else if (format == MESA_FORMAT_R_UNORM8)
return GL_RED;
@@ -892,7 +892,7 @@ _mesa_get_color_read_type(struct gl_context *ctx)
const GLenum data_type = _mesa_get_format_datatype(format);
if (format == MESA_FORMAT_B5G6R5_UNORM)
- return GL_UNSIGNED_SHORT_5_6_5_REV;
+ return GL_UNSIGNED_SHORT_5_6_5;
switch (data_type) {
case GL_SIGNED_NORMALIZED: