From: Brian Paul Date: Tue, 11 Apr 2000 03:06:07 +0000 (+0000) Subject: fixed stride problem in read_R5G6B5_span X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=ff3e00320e3d9a9a047dd8516ae92cadaa1e21fc;p=mesa.git fixed stride problem in read_R5G6B5_span --- diff --git a/src/mesa/drivers/glide/fxddspan.c b/src/mesa/drivers/glide/fxddspan.c index 8939b1eea6f..c6fcb2ea2e5 100644 --- a/src/mesa/drivers/glide/fxddspan.c +++ b/src/mesa/drivers/glide/fxddspan.c @@ -370,10 +370,14 @@ static void read_R5G6B5_span(const GLcontext *ctx, &info)) { const GLint winX = fxMesa->x_offset; const GLint winY = fxMesa->y_offset + fxMesa->height - 1; - const GLint dstStride = (fxMesa->glCtx->Color.DrawBuffer == GL_FRONT) +#ifdef XF86DRI + const GLint srcStride = (fxMesa->glCtx->Color.DrawBuffer == GL_FRONT) ? (fxMesa->screen_width) : (info.strideInBytes / 2); +#else + const GLint srcStride = info.strideInBytes / 2; /* stride in GLushorts */ +#endif const GLushort *data16 = (const GLushort *) info.lfbPtr - + (winY - y) * dstStride + + (winY - y) * srcStride + (winX + x); const GLuint *data32 = (const GLuint *) data16; GLuint i, j;