summaryrefslogtreecommitdiffstats
path: root/src/mesa/main/texgetimage.c
diff options
context:
space:
mode:
authorMichel Dänzer <[email protected]>2011-03-30 10:48:37 +0200
committerMichel Dänzer <[email protected]>2011-03-30 10:48:37 +0200
commit72e82418ef035dd4fb502e7f0a7e2e869ce8a444 (patch)
treee944c95711fe515b02204b2b8784b77c5b516e1e /src/mesa/main/texgetimage.c
parentb082e04619224b0affc46fb6953c0efd5685fc17 (diff)
Use row stride instead of width when getting colour index texels.
Untested, noticed while working on the depth/stencil fix.
Diffstat (limited to 'src/mesa/main/texgetimage.c')
-rw-r--r--src/mesa/main/texgetimage.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/mesa/main/texgetimage.c b/src/mesa/main/texgetimage.c
index db2cc840e5e..7070a29fb9d 100644
--- a/src/mesa/main/texgetimage.c
+++ b/src/mesa/main/texgetimage.c
@@ -74,6 +74,7 @@ get_tex_color_index(struct gl_context *ctx, GLuint dimensions,
const GLint width = texImage->Width;
const GLint height = texImage->Height;
const GLint depth = texImage->Depth;
+ const GLint rowstride = texImage->RowStride;
const GLuint indexBits =
_mesa_get_format_bits(texImage->TexFormat, GL_TEXTURE_INDEX_SIZE_EXT);
const GLbitfield transferOps = 0x0;
@@ -89,14 +90,14 @@ get_tex_color_index(struct gl_context *ctx, GLuint dimensions,
if (indexBits == 8) {
const GLubyte *src = (const GLubyte *) texImage->Data;
- src += width * (img * texImage->Height + row);
+ src += rowstride * (img * height + row);
for (col = 0; col < width; col++) {
indexRow[col] = src[col];
}
}
else if (indexBits == 16) {
const GLushort *src = (const GLushort *) texImage->Data;
- src += width * (img * texImage->Height + row);
+ src += rowstride * (img * height + row);
for (col = 0; col < width; col++) {
indexRow[col] = src[col];
}