From: Brian Paul Date: Thu, 1 Mar 2012 03:55:50 +0000 (-0700) Subject: mesa: use _mesa_rebase_rgba_float/uint() in glReadPixels code X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=ad897fff7730298c21289768d9b1b55f3d166ac5;p=mesa.git mesa: use _mesa_rebase_rgba_float/uint() in glReadPixels code See the comments for _mesa_rebase_rgba_float() for details. Fixes https://bugs.freedesktop.org/show_bug.cgi?id=46679 NOTE: This is a candidate for the 8.0 branch. Reviewed-by: José Fonseca --- diff --git a/src/mesa/main/readpix.c b/src/mesa/main/readpix.c index 3384d8a3824..4918549556f 100644 --- a/src/mesa/main/readpix.c +++ b/src/mesa/main/readpix.c @@ -291,10 +291,14 @@ slow_read_rgba_pixels( struct gl_context *ctx, for (j = 0; j < height; j++) { if (_mesa_is_integer_format(format)) { _mesa_unpack_uint_rgba_row(rbFormat, width, map, (GLuint (*)[4]) rgba); + _mesa_rebase_rgba_uint(width, (GLuint (*)[4]) rgba, + rb->_BaseFormat); _mesa_pack_rgba_span_int(ctx, width, (GLuint (*)[4]) rgba, format, type, dst); } else { _mesa_unpack_rgba_row(rbFormat, width, map, (GLfloat (*)[4]) rgba); + _mesa_rebase_rgba_float(width, (GLfloat (*)[4]) rgba, + rb->_BaseFormat); _mesa_pack_rgba_span_float(ctx, width, (GLfloat (*)[4]) rgba, format, type, dst, packing, transferOps); }