}
j++;
}
- for ( ; x < (ssize_t) length; x++)
+ while (x < (ssize_t) length)
{
+ x++;
if (*pixels == *previous_pixels)
break;
i++;
(void) WriteBlobString(image,"\033*r1A"); /* start raster graphics */
(void) WriteBlobString(image,"\033*b0Y"); /* set y offset */
length=(image->columns*bits_per_pixel+7)/8;
- pixels=(unsigned char *) AcquireQuantumMemory(length+256,sizeof(*pixels));
+ pixels=(unsigned char *) AcquireQuantumMemory(length+1,sizeof(*pixels));
if (pixels == (unsigned char *) NULL)
ThrowWriterException(ResourceLimitError,"MemoryAllocationFailed");
- (void) ResetMagickMemory(pixels,0,(length+256)*sizeof(*pixels));
+ (void) ResetMagickMemory(pixels,0,(length+1)*sizeof(*pixels));
compress_pixels=(unsigned char *) NULL;
previous_pixels=(unsigned char *) NULL;
switch (image->compression)
}
default:
{
- compress_pixels=(unsigned char *) AcquireQuantumMemory(length+
- (length >> 3)+256,sizeof(*compress_pixels));
+ compress_pixels=(unsigned char *) AcquireQuantumMemory(length+32,
+ sizeof(*compress_pixels));
if (compress_pixels == (unsigned char *) NULL)
{
pixels=(unsigned char *) RelinquishMagickMemory(pixels);
ThrowWriterException(ResourceLimitError,"MemoryAllocationFailed");
}
- (void) ResetMagickMemory(compress_pixels,0,(length+(length >> 3)+256)*
+ (void) ResetMagickMemory(compress_pixels,0,(length+32)*
sizeof(*compress_pixels));
- previous_pixels=(unsigned char *) AcquireQuantumMemory(length+256,
+ previous_pixels=(unsigned char *) AcquireQuantumMemory(length+1,
sizeof(*previous_pixels));
if (previous_pixels == (unsigned char *) NULL)
{
pixels=(unsigned char *) RelinquishMagickMemory(pixels);
ThrowWriterException(ResourceLimitError,"MemoryAllocationFailed");
}
- (void) ResetMagickMemory(previous_pixels,0,(length+256)*
+ (void) ResetMagickMemory(previous_pixels,0,(length+1)*
sizeof(*previous_pixels));
(void) FormatMagickString(buffer,MaxTextExtent,"\033*b3M");
(void) WriteBlobString(image,buffer);