summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorEric Anholt <[email protected]>2011-11-15 12:22:15 -0800
committerEric Anholt <[email protected]>2011-11-15 17:38:41 -0800
commitd4df6318a1014ad99149fd13d0d90ef6c0c0fb31 (patch)
treef5f2ff008795b583579d87af1c0f1dbe6a2a70ae /src
parent2bf9aeaa19f75816c6342fe564ad7c4bcdc97e12 (diff)
mesa: Fix a couple of missed conversion to arrays in format_unpack.
Fixes regression in piglit: ARB_color_buffer_float/GL_RGBA16F-getteximage ARB_color_buffer_float/GL_RGBA16F-readpixels ARB_color_buffer_float/GL_RGBA32F-getteximage ARB_color_buffer_float/GL_RGBA32F-readpixels Reviewed-by: Brian Paul <[email protected]>
Diffstat (limited to 'src')
-rw-r--r--src/mesa/main/format_unpack.c22
1 files changed, 11 insertions, 11 deletions
diff --git a/src/mesa/main/format_unpack.c b/src/mesa/main/format_unpack.c
index af89be92619..6e2ce7a0516 100644
--- a/src/mesa/main/format_unpack.c
+++ b/src/mesa/main/format_unpack.c
@@ -790,10 +790,10 @@ unpack_RGBA_FLOAT32(const void *src, GLfloat dst[][4], GLuint n)
const GLfloat *s = (const GLfloat *) src;
GLuint i;
for (i = 0; i < n; i++) {
- dst[i][RCOMP] = s[0];
- dst[i][GCOMP] = s[1];
- dst[i][BCOMP] = s[2];
- dst[i][ACOMP] = s[3];
+ dst[i][RCOMP] = s[i*4+0];
+ dst[i][GCOMP] = s[i*4+1];
+ dst[i][BCOMP] = s[i*4+2];
+ dst[i][ACOMP] = s[i*4+3];
}
}
@@ -803,10 +803,10 @@ unpack_RGBA_FLOAT16(const void *src, GLfloat dst[][4], GLuint n)
const GLhalfARB *s = (const GLhalfARB *) src;
GLuint i;
for (i = 0; i < n; i++) {
- dst[i][RCOMP] = _mesa_half_to_float(s[0]);
- dst[i][GCOMP] = _mesa_half_to_float(s[1]);
- dst[i][BCOMP] = _mesa_half_to_float(s[2]);
- dst[i][ACOMP] = _mesa_half_to_float(s[3]);
+ dst[i][RCOMP] = _mesa_half_to_float(s[i*4+0]);
+ dst[i][GCOMP] = _mesa_half_to_float(s[i*4+1]);
+ dst[i][BCOMP] = _mesa_half_to_float(s[i*4+2]);
+ dst[i][ACOMP] = _mesa_half_to_float(s[i*4+3]);
}
}
@@ -816,9 +816,9 @@ unpack_RGB_FLOAT32(const void *src, GLfloat dst[][4], GLuint n)
const GLfloat *s = (const GLfloat *) src;
GLuint i;
for (i = 0; i < n; i++) {
- dst[i][RCOMP] = s[0];
- dst[i][GCOMP] = s[1];
- dst[i][BCOMP] = s[2];
+ dst[i][RCOMP] = s[i*3+0];
+ dst[i][GCOMP] = s[i*3+1];
+ dst[i][BCOMP] = s[i*3+2];
dst[i][ACOMP] = 1.0F;
}
}