Pointer math
Gregg Mattinson
gm138242 at scot.canada.sun.com
Tue Jul 2 14:44:31 CDT 2002
changelog: debugger/module.c dlls/dplayx/dplayx_global.c dlls/msvcrt/file.c
dlls/msvcrt/misc.c dlls/shlwapi/ordinal.c dlls/wininet/http.c
dlls/winmm/lolvldrv.c files/smb.c graphics/x11drv/dib.c
memory/global.c memory/selector.c memory/virtual.c
tools/winedump/pe.c windows/syscolor.c
- Forte C does not support addition or subtraction with void* pointers, so I
casted them all to char*.
Gregg Mattinson
Co-op Developer
Sun Microsystems of Canada
-------------- next part --------------
Index: debugger/module.c
===================================================================
RCS file: /opcom/comp/ws/wine/CVSROOT/wine/debugger/module.c,v
retrieving revision 1.1
diff -u -r1.1 module.c
--- /tmp/T06PaqqF Tue Jul 2 13:49:57 2002
+++ module.c Mon Jun 24 16:33:29 2002
@@ -519,8 +519,8 @@
*/
static int DEBUG_ModuleCompare(const void* p1, const void* p2)
{
- return (*((const DBG_MODULE**)p1))->load_addr -
- (*((const DBG_MODULE**)p2))->load_addr;
+ return (char*)(*((const DBG_MODULE**)p1))->load_addr -
+ (char*)(*((const DBG_MODULE**)p2))->load_addr;
}
/***********************************************************************
Index: dlls/dplayx/dplayx_global.c
===================================================================
RCS file: /opcom/comp/ws/wine/CVSROOT/wine/dlls/dplayx/dplayx_global.c,v
retrieving revision 1.1
diff -u -r1.1 dplayx_global.c
--- /tmp/T07ZaivF Tue Jul 2 13:50:26 2002
+++ dplayx_global.c Tue Jun 25 08:12:19 2002
@@ -90,7 +90,7 @@
return;
}
- lpAddrStart = addr - sizeof(DWORD); /* Find block header */
+ lpAddrStart = (char*)addr - sizeof(DWORD); /* Find block header */
dwBlockUsed = ((BYTE*)lpAddrStart - (BYTE*)lpMemArea)/dwBlockSize;
lpMemArea[ dwBlockUsed ].used = 0;
Index: dlls/msvcrt/file.c
===================================================================
RCS file: /opcom/comp/ws/wine/CVSROOT/wine/dlls/msvcrt/file.c,v
retrieving revision 1.1
diff -u -r1.1 file.c
--- /tmp/T0XIaa_F Tue Jul 2 14:04:29 2002
+++ file.c Tue Jul 2 14:02:40 2002
@@ -1771,7 +1771,7 @@
file->_ptr += pcnt;
read += pcnt ;
rcnt -= pcnt ;
- ptr += pcnt;
+ ptr = (char*)ptr + pcnt;
} else if(!(file->_flag & MSVCRT__IOREAD )) {
if(file->_flag & MSVCRT__IORW) {
file->_flag |= MSVCRT__IOREAD;
@@ -2164,7 +2164,7 @@
file->_ptr += pcnt;
written = pcnt;
wrcnt -= pcnt;
- ptr += pcnt;
+ ptr = (char*)ptr + pcnt;
} else if(!(file->_flag & MSVCRT__IOWRT)) {
if(file->_flag & MSVCRT__IORW) {
file->_flag |= MSVCRT__IOWRT;
Index: dlls/msvcrt/misc.c
===================================================================
RCS file: /opcom/comp/ws/wine/CVSROOT/wine/dlls/msvcrt/misc.c,v
retrieving revision 1.1
diff -u -r1.1 misc.c
--- /tmp/T0d0aybG Tue Jul 2 14:06:00 2002
+++ misc.c Tue Jul 2 14:04:13 2002
@@ -68,7 +68,7 @@
{
if (cf(match, start) == 0)
return (void *)start; /* found */
- start += elem_size;
+ start = (char*)start + elem_size;
} while (--size);
return NULL;
}
@@ -86,7 +86,7 @@
{
if (cf(match, start) == 0)
return start; /* found */
- start += elem_size;
+ start = (char*)start + elem_size;
} while (--size);
/* not found, add to end */
Index: dlls/shlwapi/ordinal.c
===================================================================
RCS file: /opcom/comp/ws/wine/CVSROOT/wine/dlls/shlwapi/ordinal.c,v
retrieving revision 1.1
diff -u -r1.1 ordinal.c
--- /tmp/T0gWaaCF Tue Jul 2 13:51:48 2002
+++ ordinal.c Tue Jun 25 08:02:16 2002
@@ -1937,7 +1937,7 @@
LPVOID z) /* [in/out] buffer (+0x208 sent to GetFileVersionInfoA) */
{
GET_FUNC(pGetFileVersionInfoW, version, "GetFileVersionInfoW", 0);
- return pGetFileVersionInfoW(w, x, y-0x208, z+0x208);
+ return pGetFileVersionInfoW(w, x, y-0x208, (char*)z+0x208);
}
/*************************************************************************
@@ -1953,7 +1953,7 @@
UINT* z) /* [in] ver length - passed to VerQueryValueA as #4 */
{
GET_FUNC(pVerQueryValueW, version, "VerQueryValueW", 0);
- return pVerQueryValueW(w+0x208, x, y, z);
+ return pVerQueryValueW((char*)w+0x208, x, y, z);
}
/**************************************************************************
Index: dlls/wininet/http.c
===================================================================
RCS file: /opcom/comp/ws/wine/CVSROOT/wine/dlls/wininet/http.c,v
retrieving revision 1.1
diff -u -r1.1 http.c
--- /tmp/T0X6aiDF Tue Jul 2 13:52:17 2002
+++ http.c Tue Jun 25 08:43:20 2002
@@ -384,7 +384,7 @@
lpwhr->StdHeaders[i].lpszField &&
lpwhr->StdHeaders[i].lpszValue)
{
- cnt += sprintf(lpBuffer + cnt, "%s: %s%s", lpwhr->StdHeaders[i].lpszField, lpwhr->StdHeaders[i].lpszValue,
+ cnt += sprintf((char*)lpBuffer + cnt, "%s: %s%s", lpwhr->StdHeaders[i].lpszField, lpwhr->StdHeaders[i].lpszValue,
index == HTTP_QUERY_RAW_HEADERS_CRLF ? "\r\n" : "\0");
}
}
@@ -396,13 +396,13 @@
lpwhr->pCustHeaders[i].lpszField &&
lpwhr->pCustHeaders[i].lpszValue)
{
- cnt += sprintf(lpBuffer + cnt, "%s: %s%s",
+ cnt += sprintf((char*)lpBuffer + cnt, "%s: %s%s",
lpwhr->pCustHeaders[i].lpszField, lpwhr->pCustHeaders[i].lpszValue,
index == HTTP_QUERY_RAW_HEADERS_CRLF ? "\r\n" : "\0");
}
}
- strcpy(lpBuffer + cnt, index == HTTP_QUERY_RAW_HEADERS_CRLF ? "\r\n" : "");
+ strcpy((char*)lpBuffer + cnt, index == HTTP_QUERY_RAW_HEADERS_CRLF ? "\r\n" : "");
*lpdwBufferLength = cnt + delim;
bSuccess = TRUE;
Index: dlls/winmm/lolvldrv.c
===================================================================
RCS file: /opcom/comp/ws/wine/CVSROOT/wine/dlls/winmm/lolvldrv.c,v
retrieving revision 1.1
diff -u -r1.1 lolvldrv.c
--- /tmp/T0TAaGDF Tue Jul 2 13:52:19 2002
+++ lolvldrv.c Tue Jun 25 07:54:11 2002
@@ -690,7 +690,7 @@
if (ptr) {
SEGPTR segptr = MapLS(ptr);
*(LPMIDIOPENDESC*)ptr = mod32;
- *(LPDWORD)(ptr + sizeof(LPMIDIOPENDESC)) = *lpdwUser;
+ *(LPDWORD)((char*)ptr + sizeof(LPMIDIOPENDESC)) = *lpdwUser;
mod16 = (LPMIDIOPENDESC16)((LPSTR)ptr + sizeof(LPMIDIOPENDESC) + 2*sizeof(DWORD));
mod16->hMidi = mod32->hMidi;
@@ -1067,7 +1067,7 @@
if (ptr) {
SEGPTR seg_ptr = MapLS( ptr );
*(LPWAVEOPENDESC*)ptr = wod32;
- *(LPDWORD)(ptr + sizeof(LPWAVEOPENDESC)) = *lpdwUser;
+ *(LPDWORD)((char*)ptr + sizeof(LPWAVEOPENDESC)) = *lpdwUser;
wod16 = (LPWAVEOPENDESC16)((LPSTR)ptr + sizeof(LPWAVEOPENDESC) + 2*sizeof(DWORD));
wod16->hWave = wod32->hWave;
@@ -1626,7 +1626,7 @@
if (ptr) {
SEGPTR seg_ptr = MapLS( ptr );
*(LPWAVEOPENDESC*)ptr = wod32;
- *(LPDWORD)(ptr + sizeof(LPWAVEOPENDESC)) = *lpdwUser;
+ *(LPDWORD)((char*)ptr + sizeof(LPWAVEOPENDESC)) = *lpdwUser;
wod16 = (LPWAVEOPENDESC16)((LPSTR)ptr + sizeof(LPWAVEOPENDESC) + 2*sizeof(DWORD));
wod16->hWave = wod32->hWave;
Index: files/smb.c
===================================================================
RCS file: /opcom/comp/ws/wine/CVSROOT/wine/files/smb.c,v
retrieving revision 1.1
diff -u -r1.1 smb.c
--- /tmp/T0i.aqdG Tue Jul 2 14:14:04 2002
+++ smb.c Tue Jul 2 14:11:43 2002
@@ -1107,7 +1107,7 @@
if(!read)
break;
total += read;
- buffer += read;
+ buffer = (char*)buffer + read;
offset += read;
if(total>=bytesToRead)
break;
Index: graphics/x11drv/dib.c
===================================================================
RCS file: /opcom/comp/ws/wine/CVSROOT/wine/graphics/x11drv/dib.c,v
retrieving revision 1.1
diff -u -r1.1 dib.c
--- /tmp/T0Ola4jG Tue Jul 2 14:29:02 2002
+++ dib.c Tue Jul 2 14:26:28 2002
@@ -353,8 +353,8 @@
width*=bytes_per_pixel;
for (y=0; y<height; y++) {
memcpy(dstbits, srcbits, width);
- srcbits += srclinebytes;
- dstbits += dstlinebytes;
+ srcbits = (char*)srcbits + srclinebytes;
+ dstbits = (char*)dstbits + dstlinebytes;
}
}
@@ -389,8 +389,8 @@
( srcval & 0x03e0) | /* g */
((srcval >> 10) & 0x001f); /* l */
}
- srcbits += srclinebytes;
- dstbits += dstlinebytes;
+ srcbits = (char*)srcbits + srclinebytes;
+ dstbits = (char*)dstbits + dstlinebytes;
}
}
@@ -421,8 +421,8 @@
((srcval >> 4) & 0x0020) | /* g - 1 bit */
(srcval & 0x001f); /* l */
}
- srcbits += srclinebytes;
- dstbits += dstlinebytes;
+ srcbits = (char*)srcbits + srclinebytes;
+ dstbits = (char*)dstbits + dstlinebytes;
}
}
@@ -455,8 +455,8 @@
((srcval >> 4) & 0x0020) | /* g - 1 bit */
((srcval << 11) & 0xf800); /* l */
}
- srcbits += srclinebytes;
- dstbits += dstlinebytes;
+ srcbits = (char*)srcbits + srclinebytes;
+ dstbits = (char*)dstbits + dstlinebytes;
}
}
@@ -482,8 +482,8 @@
((srcval >> 12) & 0x07); /* h - 3 bits */
dstpixel+=3;
}
- srcbits += srclinebytes;
- dstbits += dstlinebytes;
+ srcbits = (char*)srcbits + srclinebytes;
+ dstbits = (char*)dstbits + dstlinebytes;
}
}
@@ -509,8 +509,8 @@
((srcval >> 2) & 0x07); /* l - 3 bits */
dstpixel+=3;
}
- srcbits += srclinebytes;
- dstbits += dstlinebytes;
+ srcbits = (char*)srcbits + srclinebytes;
+ dstbits = (char*)dstbits + dstlinebytes;
}
}
@@ -535,8 +535,8 @@
((srcval << 3) & 0x0000f8) | /* l */
((srcval >> 2) & 0x000007); /* l - 3 bits */
}
- srcbits += srclinebytes;
- dstbits += dstlinebytes;
+ srcbits = (char*)srcbits + srclinebytes;
+ dstbits = (char*)dstbits + dstlinebytes;
}
}
@@ -561,8 +561,8 @@
((srcval << 19) & 0xf80000) | /* l */
((srcval << 14) & 0x070000); /* l - 3 bits */
}
- srcbits += srclinebytes;
- dstbits += dstlinebytes;
+ srcbits = (char*)srcbits + srclinebytes;
+ dstbits = (char*)dstbits + dstlinebytes;
}
}
@@ -622,8 +622,8 @@
(green << gLeftShift) |
(blue << bLeftShift);
}
- srcbits += srclinebytes;
- dstbits += dstlinebytes;
+ srcbits = (char*)srcbits + srclinebytes;
+ dstbits = (char*)dstbits + dstlinebytes;
}
}
@@ -658,8 +658,8 @@
( srcval & 0x07e0) | /* g */
((srcval >> 11) & 0x001f); /* l */
}
- srcbits += srclinebytes;
- dstbits += dstlinebytes;
+ srcbits = (char*)srcbits + srclinebytes;
+ dstbits = (char*)dstbits + dstlinebytes;
}
}
@@ -688,8 +688,8 @@
*((WORD*)dstpixel)=((srcval >> 1) & 0x7fe0) | /* h, g */
( srcval & 0x001f); /* l */
}
- srcbits += srclinebytes;
- dstbits += dstlinebytes;
+ srcbits = (char*)srcbits + srclinebytes;
+ dstbits = (char*)dstbits + dstlinebytes;
}
}
@@ -720,8 +720,8 @@
((srcval >> 1) & 0x03e0) | /* g */
((srcval << 10) & 0x7c00); /* l */
}
- srcbits += srclinebytes;
- dstbits += dstlinebytes;
+ srcbits = (char*)srcbits + srclinebytes;
+ dstbits = (char*)dstbits + dstlinebytes;
}
}
@@ -747,8 +747,8 @@
((srcval >> 13) & 0x07); /* h - 3 bits */
dstpixel+=3;
}
- srcbits += srclinebytes;
- dstbits += dstlinebytes;
+ srcbits = (char*)srcbits + srclinebytes;
+ dstbits = (char*)dstbits + dstlinebytes;
}
}
@@ -774,8 +774,8 @@
((srcval >> 2) & 0x07); /* l - 3 bits */
dstpixel+=3;
}
- srcbits += srclinebytes;
- dstbits += dstlinebytes;
+ srcbits = (char*)srcbits + srclinebytes;
+ dstbits = (char*)dstbits + dstlinebytes;
}
}
@@ -800,8 +800,8 @@
((srcval << 3) & 0x0000f8) | /* l */
((srcval >> 2) & 0x000007); /* l - 3 bits */
}
- srcbits += srclinebytes;
- dstbits += dstlinebytes;
+ srcbits = (char*)srcbits + srclinebytes;
+ dstbits = (char*)dstbits + dstlinebytes;
}
}
@@ -826,8 +826,8 @@
((srcval << 19) & 0xf80000) | /* l */
((srcval << 14) & 0x070000); /* l - 3 bits */
}
- srcbits += srclinebytes;
- dstbits += dstlinebytes;
+ srcbits = (char*)srcbits + srclinebytes;
+ dstbits = (char*)dstbits + dstlinebytes;
}
}
@@ -853,8 +853,8 @@
srcpixel+=3;
dstpixel+=3;
}
- srcbits += srclinebytes;
- dstbits += dstlinebytes;
+ srcbits = (char*)srcbits + srclinebytes;
+ dstbits = (char*)dstbits + dstlinebytes;
}
}
@@ -904,8 +904,8 @@
*dstpixel++=dstval;
srcbyte+=3;
}
- srcbits += srclinebytes;
- dstbits += dstlinebytes;
+ srcbits = (char*)srcbits + srclinebytes;
+ dstbits = (char*)dstbits + dstlinebytes;
}
}
@@ -954,9 +954,9 @@
dstval|=((srcbyte[2] >> 3) & 0x001f); /* h */
*dstpixel++=dstval;
srcbyte+=3;
- }
- srcbits += srclinebytes;
- dstbits += dstlinebytes;
+ }
+ srcbits = (char*)srcbits + srclinebytes;
+ dstbits = (char*)dstbits + dstlinebytes;
}
}
@@ -1006,8 +1006,8 @@
*dstpixel++=dstval;
srcbyte+=3;
}
- srcbits += srclinebytes;
- dstbits += dstlinebytes;
+ srcbits = (char*)srcbits + srclinebytes;
+ dstbits = (char*)dstbits + dstlinebytes;
}
}
@@ -1057,8 +1057,8 @@
*dstpixel++=dstval;
srcbyte+=3;
}
- srcbits += srclinebytes;
- dstbits += dstlinebytes;
+ srcbits = (char*)srcbits + srclinebytes;
+ dstbits = (char*)dstbits + dstlinebytes;
}
}
@@ -1098,8 +1098,8 @@
srcpixel=(LPDWORD)(((char*)srcpixel)+3);
*dstpixel++=( srcval & 0x00ffffff); /* h, g, l */
}
- srcbits += srclinebytes;
- dstbits += dstlinebytes;
+ srcbits = (char*)srcbits + srclinebytes;
+ dstbits = (char*)dstbits + dstlinebytes;
}
}
@@ -1148,8 +1148,8 @@
( srcval & 0x00ff00) | /* g */
((srcval << 16) & 0xff0000); /* l */
}
- srcbits += srclinebytes;
- dstbits += dstlinebytes;
+ srcbits = (char*)srcbits + srclinebytes;
+ dstbits = (char*)dstbits + dstlinebytes;
}
}
@@ -1175,8 +1175,8 @@
(srcpixel[2] << rLeftShift); /* r */
srcpixel+=3;
}
- srcbits += srclinebytes;
- dstbits += dstlinebytes;
+ srcbits = (char*)srcbits + srclinebytes;
+ dstbits = (char*)dstbits + dstlinebytes;
}
}
@@ -1202,8 +1202,8 @@
(srcpixel[2] << bLeftShift); /* b */
srcpixel+=3;
}
- srcbits += srclinebytes;
- dstbits += dstlinebytes;
+ srcbits = (char*)srcbits + srclinebytes;
+ dstbits = (char*)dstbits + dstlinebytes;
}
}
@@ -1229,8 +1229,8 @@
( srcval & 0x0000ff00) | /* g */
((srcval >> 16) & 0x000000ff); /* l */
}
- srcbits += srclinebytes;
- dstbits += dstlinebytes;
+ srcbits = (char*)srcbits + srclinebytes;
+ dstbits = (char*)dstbits + dstlinebytes;
}
}
@@ -1262,8 +1262,8 @@
(((srcval >> gRightShift) & 0xff) << gLeftShift) |
(((srcval >> bRightShift) & 0xff) << bLeftShift);
}
- srcbits += srclinebytes;
- dstbits += dstlinebytes;
+ srcbits = (char*)srcbits + srclinebytes;
+ dstbits = (char*)dstbits + dstlinebytes;
}
}
@@ -1285,8 +1285,8 @@
((srcval >> 6) & 0x03e0) | /* g */
((srcval >> 3) & 0x001f); /* l */
}
- srcbits += srclinebytes;
- dstbits += dstlinebytes;
+ srcbits = (char*)srcbits + srclinebytes;
+ dstbits = (char*)dstbits + dstlinebytes;
}
}
@@ -1308,8 +1308,8 @@
((srcval >> 6) & 0x03e0) | /* g */
((srcval << 7) & 0x7c00); /* l */
}
- srcbits += srclinebytes;
- dstbits += dstlinebytes;
+ srcbits = (char*)srcbits + srclinebytes;
+ dstbits = (char*)dstbits + dstlinebytes;
}
}
@@ -1331,8 +1331,8 @@
((srcval >> 5) & 0x07e0) | /* g */
((srcval >> 3) & 0x001f); /* l */
}
- srcbits += srclinebytes;
- dstbits += dstlinebytes;
+ srcbits = (char*)srcbits + srclinebytes;
+ dstbits = (char*)dstbits + dstlinebytes;
}
}
@@ -1354,8 +1354,8 @@
((srcval >> 5) & 0x07e0) | /* g */
((srcval << 8) & 0xf800); /* l */
}
- srcbits += srclinebytes;
- dstbits += dstlinebytes;
+ srcbits = (char*)srcbits + srclinebytes;
+ dstbits = (char*)dstbits + dstlinebytes;
}
}
@@ -1404,8 +1404,8 @@
(((srcval >> gRightShift) & gdst) << gLeftShift) |
(((srcval >> bRightShift) & bdst) << bLeftShift);
}
- srcbits += srclinebytes;
- dstbits += dstlinebytes;
+ srcbits = (char*)srcbits + srclinebytes;
+ dstbits = (char*)dstbits + dstlinebytes;
}
}
@@ -1442,8 +1442,8 @@
*((WORD*)dstbyte)++=srcval; /* h, g */
*dstbyte++=srcval >> 16; /* l */
}
- srcbits += srclinebytes;
- dstbits += dstlinebytes;
+ srcbits = (char*)srcbits + srclinebytes;
+ dstbits = (char*)dstbits + dstlinebytes;
}
}
@@ -1494,8 +1494,8 @@
(srcval & 0xff00); /* g */
*dstbyte++=srcval; /* l */
}
- srcbits += srclinebytes;
- dstbits += dstlinebytes;
+ srcbits = (char*)srcbits + srclinebytes;
+ dstbits = (char*)dstbits + dstlinebytes;
}
}
@@ -1523,8 +1523,8 @@
dstpixel[2]=(srcval >> rRightShift); /* r */
dstpixel+=3;
}
- srcbits += srclinebytes;
- dstbits += dstlinebytes;
+ srcbits = (char*)srcbits + srclinebytes;
+ dstbits = (char*)dstbits + dstlinebytes;
}
}
@@ -1552,8 +1552,8 @@
dstpixel[2]=(srcval >> bRightShift); /* b */
dstpixel+=3;
}
- srcbits += srclinebytes;
- dstbits += dstlinebytes;
+ srcbits = (char*)srcbits + srclinebytes;
+ dstbits = (char*)dstbits + dstlinebytes;
}
}
@@ -1697,7 +1697,7 @@
if ((dstwidth&7)!=0) {
*dstbyte=dstval;
}
- srcbits -= bmpImage->bytes_per_line;
+ srcbits = (char*)srcbits - bmpImage->bytes_per_line;
dstbits += linebytes;
}
} else {
@@ -1741,7 +1741,7 @@
if ((dstwidth&7)!=0) {
*dstbyte=dstval;
}
- srcbits -= bmpImage->bytes_per_line;
+ srcbits = (char*)srcbits - bmpImage->bytes_per_line;
dstbits += linebytes;
}
} else if (bmpImage->blue_mask==0x7c00) {
@@ -1770,7 +1770,7 @@
if ((dstwidth&7)!=0) {
*dstbyte=dstval;
}
- srcbits -= bmpImage->bytes_per_line;
+ srcbits = (char*)srcbits - bmpImage->bytes_per_line;
dstbits += linebytes;
}
} else {
@@ -1803,7 +1803,7 @@
if ((dstwidth&7)!=0) {
*dstbyte=dstval;
}
- srcbits -= bmpImage->bytes_per_line;
+ srcbits = (char*)srcbits - bmpImage->bytes_per_line;
dstbits += linebytes;
}
} else if (bmpImage->blue_mask==0xf800) {
@@ -1832,7 +1832,7 @@
if ((dstwidth&7)!=0) {
*dstbyte=dstval;
}
- srcbits -= bmpImage->bytes_per_line;
+ srcbits = (char*)srcbits - bmpImage->bytes_per_line;
dstbits += linebytes;
}
} else {
@@ -1880,7 +1880,7 @@
if ((dstwidth&7)!=0) {
*dstbyte=dstval;
}
- srcbits -= bmpImage->bytes_per_line;
+ srcbits = (char*)srcbits - bmpImage->bytes_per_line;
dstbits += linebytes;
}
} else {
@@ -1905,7 +1905,7 @@
if ((dstwidth&7)!=0) {
*dstbyte=dstval;
}
- srcbits -= bmpImage->bytes_per_line;
+ srcbits = (char*)srcbits - bmpImage->bytes_per_line;
dstbits += linebytes;
}
}
@@ -2071,7 +2071,7 @@
if ((dstwidth&1)!=0) {
*dstbyte=dstval;
}
- srcbits -= bmpImage->bytes_per_line;
+ srcbits = (char*)srcbits - bmpImage->bytes_per_line;
dstbits += linebytes;
}
} else {
@@ -2115,7 +2115,7 @@
if ((dstwidth&1)!=0) {
*dstbyte=dstval;
}
- srcbits -= bmpImage->bytes_per_line;
+ srcbits = (char*)srcbits - bmpImage->bytes_per_line;
dstbits += linebytes;
}
} else if (bmpImage->blue_mask==0x7c00) {
@@ -2144,7 +2144,7 @@
if ((dstwidth&1)!=0) {
*dstbyte=dstval;
}
- srcbits -= bmpImage->bytes_per_line;
+ srcbits = (char*)srcbits - bmpImage->bytes_per_line;
dstbits += linebytes;
}
} else {
@@ -2177,7 +2177,7 @@
if ((dstwidth&1)!=0) {
*dstbyte=dstval;
}
- srcbits -= bmpImage->bytes_per_line;
+ srcbits = (char*)srcbits - bmpImage->bytes_per_line;
dstbits += linebytes;
}
} else if (bmpImage->blue_mask==0xf800) {
@@ -2206,7 +2206,7 @@
if ((dstwidth&1)!=0) {
*dstbyte=dstval;
}
- srcbits -= bmpImage->bytes_per_line;
+ srcbits = (char*)srcbits - bmpImage->bytes_per_line;
dstbits += linebytes;
}
} else {
@@ -2256,7 +2256,7 @@
srcbyte[1],
srcbyte[0]) << 4);
}
- srcbits -= bmpImage->bytes_per_line;
+ srcbits = (char*)srcbits - bmpImage->bytes_per_line;
dstbits += linebytes;
}
} else {
@@ -2286,7 +2286,7 @@
srcbyte[1],
srcbyte[2]) << 4);
}
- srcbits -= bmpImage->bytes_per_line;
+ srcbits = (char*)srcbits - bmpImage->bytes_per_line;
dstbits += linebytes;
}
}
@@ -2332,7 +2332,7 @@
srcbyte[1],
srcbyte[0]) << 4);
}
- srcbits -= bmpImage->bytes_per_line;
+ srcbits = (char*)srcbits - bmpImage->bytes_per_line;
dstbits += linebytes;
}
} else {
@@ -2362,7 +2362,7 @@
srcbyte[1],
srcbyte[2]) << 4);
}
- srcbits -= bmpImage->bytes_per_line;
+ srcbits = (char*)srcbits - bmpImage->bytes_per_line;
dstbits += linebytes;
}
}
@@ -2631,7 +2631,7 @@
srcval.peGreen,
srcval.peBlue);
}
- srcbits -= bmpImage->bytes_per_line;
+ srcbits = (char*)srcbits - bmpImage->bytes_per_line;
dstbits += linebytes;
}
} else {
@@ -2666,7 +2666,7 @@
((srcval << 3) & 0xf8) | /* b */
((srcval >> 2) & 0x07) );
}
- srcbits -= bmpImage->bytes_per_line;
+ srcbits = (char*)srcbits - bmpImage->bytes_per_line;
dstbits += linebytes;
}
} else if (bmpImage->blue_mask==0x7c00) {
@@ -2686,7 +2686,7 @@
((srcval >> 7) & 0xf8) | /* b */
((srcval >> 12) & 0x07) );
}
- srcbits -= bmpImage->bytes_per_line;
+ srcbits = (char*)srcbits - bmpImage->bytes_per_line;
dstbits += linebytes;
}
} else {
@@ -2710,7 +2710,7 @@
((srcval << 3) & 0xf8) | /* b */
((srcval >> 2) & 0x07) );
}
- srcbits -= bmpImage->bytes_per_line;
+ srcbits = (char*)srcbits - bmpImage->bytes_per_line;
dstbits += linebytes;
}
} else if (bmpImage->blue_mask==0xf800) {
@@ -2730,7 +2730,7 @@
((srcval >> 8) & 0xf8) | /* b */
((srcval >> 13) & 0x07) );
}
- srcbits -= bmpImage->bytes_per_line;
+ srcbits = (char*)srcbits - bmpImage->bytes_per_line;
dstbits += linebytes;
}
} else {
@@ -2769,7 +2769,7 @@
srcbyte[0]);
srcbyte+=bytes_per_pixel;
}
- srcbits -= bmpImage->bytes_per_line;
+ srcbits = (char*)srcbits - bmpImage->bytes_per_line;
dstbits += linebytes;
}
} else {
@@ -2785,7 +2785,7 @@
srcbyte[2]);
srcbyte+=bytes_per_pixel;
}
- srcbits -= bmpImage->bytes_per_line;
+ srcbits = (char*)srcbits - bmpImage->bytes_per_line;
dstbits += linebytes;
}
}
@@ -3857,7 +3857,7 @@
dstbyte[2]=srcval.peRed;
dstbyte+=3;
}
- srcbits -= bmpImage->bytes_per_line;
+ srcbits = (char*)srcbits - bmpImage->bytes_per_line;
dstbits += linebytes;
}
} else {
@@ -4436,7 +4436,7 @@
(srcval.peGreen << gShift) |
(srcval.peBlue << bShift);
}
- srcbits -= bmpImage->bytes_per_line;
+ srcbits = (char*)srcbits - bmpImage->bytes_per_line;
dstbits += linebytes;
}
} else {
Index: memory/global.c
===================================================================
RCS file: /opcom/comp/ws/wine/CVSROOT/wine/memory/global.c,v
retrieving revision 1.1
diff -u -r1.1 global.c
--- /tmp/T0lJa4PF Tue Jul 2 13:53:38 2002
+++ global.c Mon Jun 24 15:14:14 2002
@@ -1621,7 +1621,7 @@
#endif
/* FIXME: should do something for other systems */
GetSystemInfo(&si);
- lpmem->dwTotalVirtual = si.lpMaximumApplicationAddress-si.lpMinimumApplicationAddress;
+ lpmem->dwTotalVirtual = (char*)si.lpMaximumApplicationAddress-(char*)si.lpMinimumApplicationAddress;
/* FIXME: we should track down all the already allocated VM pages and substract them, for now arbitrarily remove 64KB so that it matches NT */
lpmem->dwAvailVirtual = lpmem->dwTotalVirtual-64*1024;
memcpy(&cached_memstatus,lpmem,sizeof(MEMORYSTATUS));
Index: memory/selector.c
===================================================================
RCS file: /opcom/comp/ws/wine/CVSROOT/wine/memory/selector.c,v
retrieving revision 1.1
diff -u -r1.1 selector.c
--- /tmp/T0xeaOQF Tue Jul 2 13:53:40 2002
+++ selector.c Tue Jun 25 09:51:39 2002
@@ -168,7 +168,7 @@
for (i = 0; i < count; i++)
{
wine_ldt_set_entry( sel + (i << __AHSHIFT), &entry );
- wine_ldt_set_base( &entry, wine_ldt_get_base(&entry) + 0x10000 );
+ wine_ldt_set_base( &entry, (char*)wine_ldt_get_base(&entry) + 0x10000);
/* yep, Windows sets limit like that, not 64K sel units */
wine_ldt_set_limit( &entry, wine_ldt_get_limit(&entry) - 0x10000 );
}
Index: memory/virtual.c
===================================================================
RCS file: /opcom/comp/ws/wine/CVSROOT/wine/memory/virtual.c,v
retrieving revision 1.1
diff -u -r1.1 virtual.c
--- /tmp/T0zsaaRF Tue Jul 2 13:53:41 2002
+++ virtual.c Mon Jun 24 15:20:51 2002
@@ -221,7 +221,7 @@
view = NULL;
break;
}
- if (view->base + view->size > addr) break;
+ if ((char*)view->base + view->size > addr) break;
view = view->next;
}
LeaveCriticalSection(&csVirtual);
Index: tools/winedump/pe.c
===================================================================
RCS file: /opcom/comp/ws/wine/CVSROOT/wine/tools/winedump/pe.c,v
retrieving revision 1.1
diff -u -r1.1 pe.c
--- /tmp/T06Qa46F Tue Jul 2 13:54:56 2002
+++ pe.c Mon Jun 24 13:56:39 2002
@@ -81,8 +81,8 @@
unsigned long Offset(void* ptr)
{
if (ptr < base) {printf("<<<<<ptr below\n");return 0;}
- if (ptr >= base + total_len) {printf("<<<<<ptr above\n");return 0;}
- return ptr - base;
+ if (ptr >= (char*)base + total_len) {printf("<<<<<ptr above\n");return 0;}
+ return (char*)ptr - (char*)base;
}
void* RVA(unsigned long rva, unsigned long len)
Index: windows/syscolor.c
===================================================================
RCS file: /opcom/comp/ws/wine/CVSROOT/wine/windows/syscolor.c,v
retrieving revision 1.1
diff -u -r1.1 syscolor.c
--- /tmp/T023aOtG Tue Jul 2 15:16:19 2002
+++ syscolor.c Tue Jul 2 15:14:52 2002
@@ -328,9 +328,9 @@
/* allocate our structure to remember old colors */
LPVOID pOldCol = HeapAlloc(GetProcessHeap(), 0, sizeof(DWORD)+n*sizeof(HPEN)+n*sizeof(HBRUSH));
LPVOID p = pOldCol;
- *(DWORD *)p = n; p += sizeof(DWORD);
- memcpy(p, SysColorPens, n*sizeof(HPEN)); p += n*sizeof(HPEN);
- memcpy(p, SysColorBrushes, n*sizeof(HBRUSH)); p += n*sizeof(HBRUSH);
+ *(DWORD *)p = n; p = (char*)p + sizeof(DWORD);
+ memcpy(p, SysColorPens, n*sizeof(HPEN)); p = (char*)p + n*sizeof(HPEN);
+ memcpy(p, SysColorBrushes, n*sizeof(HBRUSH)); p = (char*)p + n*sizeof(HBRUSH);
for (i=0; i < n; i++)
{
@@ -345,16 +345,16 @@
LPVOID pOldCol = (LPVOID)n;
LPVOID p = pOldCol;
DWORD nCount = *(DWORD *)p;
- p += sizeof(DWORD);
+ p = (char*)p + sizeof(DWORD);
for (i=0; i < nCount; i++)
{
DeleteObject(SysColorPens[i]);
- SysColorPens[i] = *(HPEN *)p; p += sizeof(HPEN);
+ SysColorPens[i] = *(HPEN *)p; p = (char*)p + sizeof(HPEN);
}
for (i=0; i < nCount; i++)
{
- SysColorBrushes[i] = *(HBRUSH *)p; p += sizeof(HBRUSH);
+ SysColorBrushes[i] = *(HBRUSH *)p; p = (char*)p + sizeof(HBRUSH);
}
/* get rid of storage structure */
HeapFree(GetProcessHeap(), 0, pOldCol);
More information about the wine-patches
mailing list