Changeset 13927
- Timestamp:
- 03/04/08 16:03:55 (2 months ago)
- Files:
-
- branches/1.5/gdal/gcore/rasterio.cpp (modified) (6 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
branches/1.5/gdal/gcore/rasterio.cpp
r12863 r13927 108 108 { 109 109 if( eRWFlag == GF_Read ) 110 memcpy( ((GByte *) pData) + iBufYOff * nLineSpace,110 memcpy( ((GByte *) pData) + (size_t)iBufYOff * nLineSpace, 111 111 pabySrcBlock + nSrcByteOffset, 112 112 nLineSpace ); 113 113 else 114 114 memcpy( pabySrcBlock + nSrcByteOffset, 115 ((GByte *) pData) + iBufYOff * nLineSpace,115 ((GByte *) pData) + (size_t)iBufYOff * nLineSpace, 116 116 nLineSpace ); 117 117 } … … 123 123 GDALCopyWords( pabySrcBlock + nSrcByteOffset, 124 124 eDataType, nBandDataSize, 125 ((GByte *) pData) + iBufYOff * nLineSpace,125 ((GByte *) pData) + (size_t)iBufYOff * nLineSpace, 126 126 eBufType, nPixelSpace, nBufXSize ); 127 127 else 128 GDALCopyWords( ((GByte *) pData) + iBufYOff * nLineSpace,128 GDALCopyWords( ((GByte *) pData) + (size_t)iBufYOff * nLineSpace, 129 129 eBufType, nPixelSpace, 130 130 pabySrcBlock + nSrcByteOffset, … … 177 177 for( iBufYOff = 0, iSrcY = nYOff; iBufYOff < nBufYSize; iBufYOff++, iSrcY++ ) 178 178 { 179 int iBufOffset, iSrcOffset, nXSpan; 180 181 iBufOffset = iBufYOff * nLineSpace; 179 size_t iBufOffset, iSrcOffset; 180 int nXSpan; 181 182 iBufOffset = (size_t)iBufYOff * nLineSpace; 182 183 nLBlockY = iSrcY / nBlockYSize; 183 184 nLBlockX = nLBlockXStart; … … 230 231 /* Copy over this chunk of data. */ 231 232 /* -------------------------------------------------------------------- */ 232 iSrcOffset = ( iSrcX -nLBlockX*nBlockXSize233 + ( iSrcY -nLBlockY*nBlockYSize) * nBlockXSize)*nBandDataSize;233 iSrcOffset = ((size_t)iSrcX - (size_t)nLBlockX*nBlockXSize 234 + ((size_t)iSrcY - (size_t)nLBlockY*nBlockYSize) * nBlockXSize)*nBandDataSize; 234 235 235 236 if( eDataType == eBufType … … 294 295 for( iBufYOff = 0; iBufYOff < nBufYSize; iBufYOff++ ) 295 296 { 296 intiBufOffset, iSrcOffset;297 size_t iBufOffset, iSrcOffset; 297 298 298 299 dfSrcY = (iBufYOff+0.5) * dfSrcYInc + nYOff; 299 300 iSrcY = (int) dfSrcY; 300 301 301 iBufOffset = iBufYOff * nLineSpace;302 iBufOffset = (size_t)iBufYOff * nLineSpace; 302 303 303 304 for( iBufXOff = 0; iBufXOff < nBufXSize; iBufXOff++ ) … … 349 350 /* Copy over this pixel of data. */ 350 351 /* -------------------------------------------------------------------- */ 351 iSrcOffset = ( iSrcX -nLBlockX*nBlockXSize352 + ( iSrcY -nLBlockY*nBlockYSize) * nBlockXSize)*nBandDataSize;352 iSrcOffset = ((size_t)iSrcX - (size_t)nLBlockX*nBlockXSize 353 + ((size_t)iSrcY - (size_t)nLBlockY*nBlockYSize) * nBlockXSize)*nBandDataSize; 353 354 354 355 if( eDataType == eBufType )
