From 236ea7900ff263fdb3d01e1a904c43c600e2654d Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Tue, 30 Apr 2013 13:35:23 -0600 Subject: [PATCH] swrast: add casts for ImageSlices pointer arithmetic MSVC doesn't like pointer arithmetic with void * so use GLubyte *. Reviewed-by: Jose Fonseca --- src/mesa/swrast/s_texfetch_tmp.h | 6 +++--- src/mesa/swrast/s_texfilter.c | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/mesa/swrast/s_texfetch_tmp.h b/src/mesa/swrast/s_texfetch_tmp.h index c9991cd84d9..44fa8170b2c 100644 --- a/src/mesa/swrast/s_texfetch_tmp.h +++ b/src/mesa/swrast/s_texfetch_tmp.h @@ -51,8 +51,8 @@ #elif DIM == 2 #define TEXEL_ADDR( type, image, i, j, k, size ) \ - ((void) (k), \ - ((type *)((image)->ImageSlices[0] + (image)->RowStride * (j)) + \ + ((void) (k), \ + ((type *)((GLubyte *) (image)->ImageSlices[0] + (image)->RowStride * (j)) + \ (i) * (size))) #define FETCH(x) fetch_texel_2d_##x @@ -60,7 +60,7 @@ #elif DIM == 3 #define TEXEL_ADDR( type, image, i, j, k, size ) \ - ((type *)((image)->ImageSlices[k] + \ + ((type *)((GLubyte *) (image)->ImageSlices[k] + \ (image)->RowStride * (j)) + (i) * (size)) #define FETCH(x) fetch_texel_3d_##x diff --git a/src/mesa/swrast/s_texfilter.c b/src/mesa/swrast/s_texfilter.c index c8ea26adae8..fba8e6cba80 100644 --- a/src/mesa/swrast/s_texfilter.c +++ b/src/mesa/swrast/s_texfilter.c @@ -1436,7 +1436,7 @@ opt_sample_rgb_2d(struct gl_context *ctx, GLint i = IFLOOR(texcoords[k][0] * width) & colMask; GLint j = IFLOOR(texcoords[k][1] * height) & rowMask; GLint pos = (j << shift) | i; - GLubyte *texel = swImg->ImageSlices[0] + 3 * pos; + GLubyte *texel = (GLubyte *) swImg->ImageSlices[0] + 3 * pos; rgba[k][RCOMP] = UBYTE_TO_FLOAT(texel[2]); rgba[k][GCOMP] = UBYTE_TO_FLOAT(texel[1]); rgba[k][BCOMP] = UBYTE_TO_FLOAT(texel[0]); -- 2.30.2