fixed stride problem in read_R5G6B5_span

This commit is contained in:
Brian Paul 2000-04-11 03:06:07 +00:00
parent 43d8e2123f
commit ff3e00320e

View file

@ -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;