Fix problem reported by Bill Newman in read_rgba_pixels for 16 and 32 bit (GDI driver...
authorKarl Schultz <kschultz@freedesktop.org>
Mon, 3 Apr 2006 16:54:25 +0000 (16:54 +0000)
committerKarl Schultz <kschultz@freedesktop.org>
Mon, 3 Apr 2006 16:54:25 +0000 (16:54 +0000)
src/mesa/drivers/windows/gdi/wmesa.c

index 21292494242185208f20122ed07ab983eb1d49b4..8e861da5081b9c9e76325f10136cf9b243cf70d2 100644 (file)
@@ -782,7 +782,7 @@ static void read_rgba_pixels_32(const GLcontext *ctx,
     for (i=0; i<n; i++) {
        GLint y2 = FLIP(y[i]);
        lpdw = ((LPDWORD)(pwfb->pbPixels + pwfb->ScanWidth * y2)) + x[i];
-       pixel = lpdw[i];
+       pixel = *lpdw;
        rgba[i][RCOMP] = (pixel & 0x00ff0000) >> 16;
        rgba[i][GCOMP] = (pixel & 0x0000ff00) >> 8;
        rgba[i][BCOMP] = (pixel & 0x000000ff);
@@ -966,7 +966,7 @@ static void read_rgba_pixels_16(const GLcontext *ctx,
     for (i=0; i<n; i++) {
        GLint y2 = FLIP(y[i]);
        lpw = ((LPWORD)(pwfb->pbPixels + pwfb->ScanWidth * y2)) + x[i];
-       pixel = lpw[i];
+       pixel = *lpw;
        /* Windows uses 5,5,5 for 16-bit */
        rgba[i][RCOMP] = (pixel & 0x7c00) >> 7;
        rgba[i][GCOMP] = (pixel & 0x03e0) >> 2;