From: Brian Paul Date: Thu, 8 Jan 2015 21:10:12 +0000 (-0700) Subject: mesa: compute row stride outside of loop and fix MSVC compilation error X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=df461ac952859a3608b93651fbc4160883b2dd99;p=mesa.git mesa: compute row stride outside of loop and fix MSVC compilation error Can't do void pointer arithmetic with MSVC. Reviewed-by: Jose Fonseca --- diff --git a/src/mesa/main/teximage.c b/src/mesa/main/teximage.c index e41ce32806a..b3c668f9e54 100644 --- a/src/mesa/main/teximage.c +++ b/src/mesa/main/teximage.c @@ -3543,6 +3543,7 @@ texturesubimage(struct gl_context *ctx, GLuint dims, /* Must handle special case GL_TEXTURE_CUBE_MAP. */ if (texObj->Target == GL_TEXTURE_CUBE_MAP) { + GLint rowStride; /* Error checking */ if (texObj->NumLayers < 6) { @@ -3594,6 +3595,8 @@ texturesubimage(struct gl_context *ctx, GLuint dims, return; } + rowStride = _mesa_image_image_stride(&ctx->Unpack, width, height, + format, type); /* Copy in each face. */ for (i = 0; i < 6; ++i) { texImage = texObj->Image[i][level]; @@ -3601,8 +3604,7 @@ texturesubimage(struct gl_context *ctx, GLuint dims, level, xoffset, yoffset, zoffset, width, height, 1, format, type, pixels, true); - pixels += _mesa_image_image_stride(&ctx->Unpack, width, height, - format, type); + pixels = (GLubyte *) pixels + rowStride; } } else {