// Decision variables for Bresenham algorithm
int incX1 = 2 * (srcWidth-1);
int incX2 = incX1 - 2 * (width-1);
- int dX = incX1 - (width-1);
for( int y = 0; y < height; y++ )
{
+ int dX = incX1 - (width-1);
uint32_t yOffset = ((y * srcHeight) / height) * srcWidth;
pSrcData = ((uint32_t*)rBitmap.getData()) + yOffset;
// Decision variables for Bresenham algorithm
int incX1 = 2 * (width-1);
int incX2 = incX1 - 2 * (srcWidth-1);
- int dX = incX1 - (srcWidth-1);
for( int y = 0; y < height; y++ )
{
+ int dX = incX1 - (srcWidth-1);
uint32_t yOffset = ((y * srcHeight) / height) * srcWidth;
pSrcData = ((uint32_t*)rBitmap.getData()) + yOffset;
- for( int x = 0; x < width; x++ )
+ *(pDestData++) = *(pSrcData++);
+ // Don't start with x=0 to avoid an infinite loop if width==1
+ for( int x = 1; x < width; x++ )
{
*(pDestData++) = *(pSrcData++);