--- src/mesa/main/readpix.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/src/mesa/main/readpix.c b/src/mesa/main/readpix.c index 349b0bc..0f5c84c 100644 --- a/src/mesa/main/readpix.c +++ b/src/mesa/main/readpix.c @@ -285,11 +285,12 @@ fast_read_rgba_pixels_memcpy( struct gl_context *ctx, } } else if (copy_xrgb) { /* convert xrgb -> argb */ + int alphaOffset = texelBytes - 1; for (j = 0; j < height; j++) { - GLuint *dst4 = (GLuint *) dst, *map4 = (GLuint *) map; + memcpy(dst, map, width * texelBytes); int i; for (i = 0; i < width; i++) { - dst4[i] = map4[i] | 0xff000000; /* set A=0xff */ + dst[i * texelBytes + alphaOffset] = 0xff; /* set A=0xff */ } dst += dstStride; map += stride; -- 1.8.1.5 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev