static MagickBooleanType DecodeImage(Image *image,unsigned char *luma,
unsigned char *chroma1,unsigned char *chroma2,ExceptionInfo *exception)
{
-#define IsSync ((sum & 0xffffff00UL) == 0xfffffe00UL)
+#define IsSync(sum) ((sum & 0xffffff00UL) == 0xfffffe00UL)
#define PCDGetBits(n) \
{ \
sum=(sum << n) & 0xffffffff; \
PCDGetBits(16);
while ((sum & 0x00fff000UL) != 0x00fff000UL)
PCDGetBits(8);
- while (IsSync == 0)
+ while (IsSync(sum) == 0)
PCDGetBits(1);
/*
Recover the Huffman encoded luminance and chrominance deltas.
q=luma;
for ( ; ; )
{
- if (IsSync != 0)
+ if (IsSync(sum) != 0)
{
/*
Determine plane and row number.
CorruptImageWarning,"SkipToSyncByte","`%s'",image->filename);
while ((sum & 0x00fff000) != 0x00fff000)
PCDGetBits(8);
- while (IsSync == 0)
+ while (IsSync(sum) == 0)
PCDGetBits(1);
continue;
}
count=ReadBlob(image,3*0x800,header);
overview=LocaleNCompare((char *) header,"PCD_OPA",7) == 0;
if ((count == 0) ||
- ((LocaleNCompare((char *) header+0x800,"PCD",3) != 0) && !overview))
+ ((LocaleNCompare((char *) header+0x800,"PCD",3) != 0) && (overview ==0)))
ThrowReaderException(CorruptImageError,"ImproperImageHeader");
rotate=header[0x0e02] & 0x03;
number_images=(header[10] << 8) | header[11];
}
if (image_info->number_scenes != 0)
scene=(size_t) MagickMin(image_info->scene,6);
- if (overview)
+ if (overview != 0)
scene=1;
/*
Initialize image structure.
if (number_pixels != (size_t) number_pixels)
ThrowReaderException(ResourceLimitError,"MemoryAllocationFailed");
chroma1=(unsigned char *) AcquireQuantumMemory(image->columns+1UL,image->rows*
- sizeof(*chroma1));
+ 10*sizeof(*chroma1));
chroma2=(unsigned char *) AcquireQuantumMemory(image->columns+1UL,image->rows*
- sizeof(*chroma2));
+ 10*sizeof(*chroma2));
luma=(unsigned char *) AcquireQuantumMemory(image->columns+1UL,image->rows*
- sizeof(*luma));
+ 10*sizeof(*luma));
if ((chroma1 == (unsigned char *) NULL) ||
(chroma2 == (unsigned char *) NULL) || (luma == (unsigned char *) NULL))
ThrowReaderException(ResourceLimitError,"MemoryAllocationFailed");
Advance to image data.
*/
offset=93;
- if (overview)
+ if (overview != 0)
offset=2;
else
if (scene == 2)
offset=1;
for (i=0; i < (ssize_t) (offset*0x800); i++)
(void) ReadBlobByte(image);
- if (overview)
+ if (overview != 0)
{
Image
*overview_image;