From: cristy Date: Sat, 17 Nov 2012 19:40:21 +0000 (+0000) Subject: (no commit message) X-Git-Tag: 7.0.1-0~4703 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=70d7eae4562548cbf4f42eb3678e61bdff593e13;p=imagemagick --- diff --git a/MagickCore/quantum-private.h b/MagickCore/quantum-private.h index 69490a1af..10f0f9e6c 100644 --- a/MagickCore/quantum-private.h +++ b/MagickCore/quantum-private.h @@ -238,14 +238,13 @@ static inline const unsigned char *PushLongPixel(const EndianType endian, quantum|=(unsigned int) (*pixels++ << 16); quantum|=(unsigned int) (*pixels++ << 8); quantum|=(unsigned int) (*pixels++); + *pixel=(unsigned int) (quantum & 0xffffffff); + return(pixels); } - else - { - quantum=(unsigned int) (*pixels++); - quantum|=(unsigned int) (*pixels++ << 8); - quantum|=(unsigned int) (*pixels++ << 16); - quantum|=(unsigned int) (*pixels++ << 24); - } + quantum=(unsigned int) (*pixels++); + quantum|=(unsigned int) (*pixels++ << 8); + quantum|=(unsigned int) (*pixels++ << 16); + quantum|=(unsigned int) (*pixels++ << 24); *pixel=(unsigned int) (quantum & 0xffffffff); return(pixels); } @@ -260,12 +259,11 @@ static inline const unsigned char *PushShortPixel(const EndianType endian, { quantum=(unsigned int) (*pixels++ << 8); quantum|=(unsigned int) *pixels++; + *pixel=(unsigned short) (quantum & 0xffff); + return(pixels); } - else - { - quantum=(unsigned int) *pixels++; - quantum|=(unsigned int) (*pixels++ << 8); - } + quantum=(unsigned int) *pixels++; + quantum|=(unsigned int) (*pixels++ << 8); *pixel=(unsigned short) (quantum & 0xffff); return(pixels); } diff --git a/coders/pnm.c b/coders/pnm.c index 60c97b5b9..d778d7ad1 100644 --- a/coders/pnm.c +++ b/coders/pnm.c @@ -775,6 +775,7 @@ static Image *ReadPNMImage(const ImageInfo *image_info,ExceptionInfo *exception) quantum_info=AcquireQuantumInfo(image_info,image); if (quantum_info == (QuantumInfo *) NULL) ThrowReaderException(ResourceLimitError,"MemoryAllocationFailed"); + (void) SetQuantumEndian(image,quantum_info,MSBEndian); for (y=0; y < (ssize_t) image->rows; y++) { MagickBooleanType @@ -1919,6 +1920,7 @@ static MagickBooleanType WritePNMImage(const ImageInfo *image_info,Image *image, quantum_info=AcquireQuantumInfo((const ImageInfo *) NULL,image); if (quantum_info == (QuantumInfo *) NULL) ThrowWriterException(ResourceLimitError,"MemoryAllocationFailed"); + (void) SetQuantumEndian(image,quantum_info,MSBEndian); pixels=GetQuantumPixels(quantum_info); extent=GetQuantumExtent(image,quantum_info,quantum_type); range=GetQuantumRange(image->depth);