Mesa (master): readpix: allow implementation format/type
Matt Turner
mattst88 at kemper.freedesktop.org
Mon Jan 21 03:58:45 UTC 2013
Module: Mesa
Branch: master
Commit: ffdffd834a9b0bc6866331e7ecca995d0eb1c041
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=ffdffd834a9b0bc6866331e7ecca995d0eb1c041
Author: Jordan Justen <jordan.l.justen at intel.com>
Date: Sat Jan 12 01:05:44 2013 -0800
readpix: allow implementation format/type
For GLES2/3 allow reading of pixels with format/type based on:
* GL_IMPLEMENTATION_COLOR_READ_FORMAT
* GL_IMPLEMENTATION_COLOR_READ_TYPE
Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>
Signed-off-by: Jordan Justen <jordan.l.justen at intel.com>
---
src/mesa/main/readpix.c | 7 ++++++-
1 files changed, 6 insertions(+), 1 deletions(-)
diff --git a/src/mesa/main/readpix.c b/src/mesa/main/readpix.c
index 994e589..6b07563 100644
--- a/src/mesa/main/readpix.c
+++ b/src/mesa/main/readpix.c
@@ -773,7 +773,12 @@ _mesa_ReadnPixelsARB( GLint x, GLint y, GLsizei width, GLsizei height,
* combination is, and Mesa can handle anything valid. Just work instead.
*/
if (_mesa_is_gles(ctx)) {
- if (ctx->Version < 30) {
+ if (ctx->API == API_OPENGLES2 &&
+ _mesa_is_color_format(format) &&
+ _mesa_get_color_read_format(ctx) == format &&
+ _mesa_get_color_read_type(ctx) == type) {
+ err = GL_NO_ERROR;
+ } else if (ctx->Version < 30) {
err = _mesa_es_error_check_format_and_type(format, type, 2);
if (err == GL_NO_ERROR) {
if (type == GL_FLOAT || type == GL_HALF_FLOAT_OES) {
More information about the mesa-commit
mailing list