]> granicus.if.org Git - imagemagick/commitdiff
(no commit message)
authorcristy <urban-warrior@git.imagemagick.org>
Sun, 14 Dec 2014 17:43:35 +0000 (17:43 +0000)
committercristy <urban-warrior@git.imagemagick.org>
Sun, 14 Dec 2014 17:43:35 +0000 (17:43 +0000)
25 files changed:
Magick++/lib/Image.cpp
MagickCore/cipher.c
MagickCore/quantum.c
MagickCore/quantum.h
MagickCore/stream.c
coders/art.c
coders/bgr.c
coders/cin.c
coders/cmyk.c
coders/dpx.c
coders/fits.c
coders/fpx.c
coders/gray.c
coders/ipl.c
coders/mat.c
coders/miff.c
coders/pdb.c
coders/png.c
coders/pnm.c
coders/psd.c
coders/raw.c
coders/rgb.c
coders/tiff.c
coders/vicar.c
coders/ycbcr.c

index 8bad90e5d70c954f60f6f65aa7679dc79870bf81..11179796916b3da7347e12d34fb02912c6c484e1 100644 (file)
@@ -3923,8 +3923,8 @@ void Magick::Image::readPixels(const Magick::QuantumType quantum_,
   QuantumInfo
     *quantum_info;
 
-  quantum_info=AcquireQuantumInfo(imageInfo(),image());
   GetPPException;
+  quantum_info=AcquireQuantumInfo(imageInfo(),image(), exceptionInfo);
   ImportQuantumPixels(image(),(MagickCore::CacheView *) NULL,quantum_info,
     quantum_,source_,exceptionInfo);
   quantum_info=DestroyQuantumInfo(quantum_info);
@@ -4758,8 +4758,8 @@ void Magick::Image::writePixels(const Magick::QuantumType quantum_,
   QuantumInfo
     *quantum_info;
 
-  quantum_info=AcquireQuantumInfo(imageInfo(),image());
   GetPPException;
+  quantum_info=AcquireQuantumInfo(imageInfo(),image(), exceptionInfo);
   ExportQuantumPixels(image(),(MagickCore::CacheView *) NULL,quantum_info,
     quantum_,destination_, exceptionInfo);
   quantum_info=DestroyQuantumInfo(quantum_info);
index 78224870856e88f1b5f8ed5b8562f523d63f7f2f..1ba0e040ba22bf8d5a31711f5986e56789b6d5a5 100644 (file)
@@ -652,7 +652,7 @@ MagickExport MagickBooleanType PasskeyDecipherImage(Image *image,
   /*
     Convert cipher pixels to plain pixels.
   */
-  quantum_info=AcquireQuantumInfo((const ImageInfo *) NULL,image);
+  quantum_info=AcquireQuantumInfo((const ImageInfo *) NULL,image,exception);
   if (quantum_info == (QuantumInfo *) NULL)
     {
       aes_info=DestroyAESInfo(aes_info);
@@ -872,7 +872,7 @@ MagickExport MagickBooleanType PasskeyEncipherImage(Image *image,
   /*
     Convert plain pixels to cipher pixels.
   */
-  quantum_info=AcquireQuantumInfo((const ImageInfo *) NULL,image);
+  quantum_info=AcquireQuantumInfo((const ImageInfo *) NULL,image,exception);
   if (quantum_info == (QuantumInfo *) NULL)
     {
       aes_info=DestroyAESInfo(aes_info);
index 94d6151fecadf62788d6367c39d7829767035c93..36909e175d8f55dd7ea04ddf5d83670a91160b7e 100644 (file)
@@ -95,7 +95,8 @@ static void
 %
 %  The format of the AcquireQuantumInfo method is:
 %
-%      QuantumInfo *AcquireQuantumInfo(const ImageInfo *image_info,Image *image)
+%      QuantumInfo *AcquireQuantumInfo(const ImageInfo *image_info,Image *image,
+%        ExceptionInfo *exception)
 %
 %  A description of each parameter follows:
 %
@@ -103,9 +104,11 @@ static void
 %
 %    o image: the image.
 %
+%    o exception: return any errors or warnings in this structure.
+%
 */
 MagickExport QuantumInfo *AcquireQuantumInfo(const ImageInfo *image_info,
-  Image *image)
+  Image *image,ExceptionInfo *exception)
 {
   MagickBooleanType
     status;
@@ -113,8 +116,6 @@ MagickExport QuantumInfo *AcquireQuantumInfo(const ImageInfo *image_info,
   QuantumInfo
     *quantum_info;
 
-  if (SyncImagePixelCache(image,&image->exception) == MagickFalse)
-    return(MagickFalse);
   quantum_info=(QuantumInfo *) AcquireMagickMemory(sizeof(*quantum_info));
   if (quantum_info == (QuantumInfo *) NULL)
     ThrowFatalException(ResourceLimitFatalError,"MemoryAllocationFailed");
@@ -122,6 +123,8 @@ MagickExport QuantumInfo *AcquireQuantumInfo(const ImageInfo *image_info,
   GetQuantumInfo(image_info,quantum_info);
   if (image == (const Image *) NULL)
     return(quantum_info);
+  if (SyncImagePixelCache(image,exception) == MagickFalse)
+    return(DestroyQuantumInfo(quantum_info));
   status=SetQuantumDepth(image,quantum_info,image->depth);
   quantum_info->endian=image->endian;
   if (status == MagickFalse)
@@ -511,6 +514,8 @@ MagickExport unsigned char *GetQuantumPixels(const QuantumInfo *quantum_info)
 %
 %    o image: the image.
 %
+%    o exception: return any errors or warnings in this structure.
+%
 */
 MagickExport QuantumType GetQuantumType(Image *image,ExceptionInfo *exception)
 {
index 85a8184913363181f9facf20bc621b11dd93f45d..b0ea6537166dece676f396eddd86c806ca2506ad 100644 (file)
@@ -162,7 +162,7 @@ extern MagickExport QuantumFormatType
   GetQuantumFormat(const QuantumInfo *);
 
 extern MagickExport QuantumInfo
-  *AcquireQuantumInfo(const ImageInfo *,Image *),
+  *AcquireQuantumInfo(const ImageInfo *,Image *,ExceptionInfo *),
   *DestroyQuantumInfo(QuantumInfo *);
 
 extern MagickExport QuantumType
index b1045cec00b71ea69ec245f9b9ea81dca44519fc..46a0b48e8bcc90ecf904522fb6ae9b700d2ed595 100644 (file)
@@ -1251,13 +1251,14 @@ MagickExport Image *StreamImage(const ImageInfo *image_info,
   assert(exception != (ExceptionInfo *) NULL);
   read_info=CloneImageInfo(image_info);
   stream_info->image_info=image_info;
-  stream_info->quantum_info=AcquireQuantumInfo(image_info,(Image *) NULL);
+  stream_info->quantum_info=AcquireQuantumInfo(image_info,(Image *) NULL,
+    exception);
   stream_info->exception=exception;
   read_info->client_data=(void *) stream_info;
   image=ReadStream(read_info,&WriteStreamImage,exception);
   read_info=DestroyImageInfo(read_info);
   stream_info->quantum_info=DestroyQuantumInfo(stream_info->quantum_info);
-  stream_info->quantum_info=AcquireQuantumInfo(image_info,image);
+  stream_info->quantum_info=AcquireQuantumInfo(image_info,image,exception);
   if (stream_info->quantum_info == (QuantumInfo *) NULL)
     image=DestroyImage(image);
   return(image);
index a9392b7ad9000ab21982355764e5d19dfd05b480..3ff9298a23a3a2a534dc4da20797b7bce8cb75f2 100644 (file)
@@ -150,7 +150,7 @@ static Image *ReadARTImage(const ImageInfo *image_info,ExceptionInfo *exception)
     Convert bi-level image to pixel packets.
   */
   SetImageColorspace(image,GRAYColorspace,exception);
-  quantum_info=AcquireQuantumInfo(image_info,image);
+  quantum_info=AcquireQuantumInfo(image_info,image,exception);
   if (quantum_info == (QuantumInfo *) NULL)
     ThrowReaderException(ResourceLimitError,"MemoryAllocationFailed");
   pixels=GetQuantumPixels(quantum_info);
@@ -319,7 +319,7 @@ static MagickBooleanType WriteARTImage(const ImageInfo *image_info,Image *image,
   (void) WriteBlobLSBShort(image,(unsigned short) image->columns);
   (void) WriteBlobLSBShort(image,0);
   (void) WriteBlobLSBShort(image,(unsigned short) image->rows);
-  quantum_info=AcquireQuantumInfo(image_info,image);
+  quantum_info=AcquireQuantumInfo(image_info,image,exception);
   pixels=GetQuantumPixels(quantum_info);
   for (y=0; y < (ssize_t) image->rows; y++)
   {
index 2a70fb05e8d7f3e46bb77cfbba9f7fa56ee54a15..cb638b9a873fbce247a2c76f3b91685bb1e379c6 100644 (file)
@@ -161,7 +161,7 @@ static Image *ReadBGRImage(const ImageInfo *image_info,
     exception);
   (void) SetImageVirtualPixelMethod(canvas_image,BlackVirtualPixelMethod,
     exception);
-  quantum_info=AcquireQuantumInfo(image_info,canvas_image);
+  quantum_info=AcquireQuantumInfo(image_info,canvas_image,exception);
   if (quantum_info == (QuantumInfo *) NULL)
     ThrowReaderException(ResourceLimitError,"MemoryAllocationFailed");
   pixels=GetQuantumPixels(quantum_info);
@@ -1110,7 +1110,7 @@ static MagickBooleanType WriteBGRImage(const ImageInfo *image_info,Image *image,
     if ((LocaleCompare(image_info->magick,"BGRA") == 0) &&
         (image->alpha_trait != BlendPixelTrait))
       (void) SetImageAlphaChannel(image,OpaqueAlphaChannel,exception);
-    quantum_info=AcquireQuantumInfo(image_info,image);
+    quantum_info=AcquireQuantumInfo(image_info,image,exception);
     if (quantum_info == (QuantumInfo *) NULL)
       ThrowWriterException(ResourceLimitError,"MemoryAllocationFailed");
     pixels=GetQuantumPixels(quantum_info);
index d02201c5a72f450bf845d374380079d9865601f4..15dc3e10321c5da4d173f46adfad1fb4906818e5 100644 (file)
@@ -725,7 +725,7 @@ static Image *ReadCINImage(const ImageInfo *image_info,ExceptionInfo *exception)
   /*
     Convert CIN raster image to pixel packets.
   */
-  quantum_info=AcquireQuantumInfo(image_info,image);
+  quantum_info=AcquireQuantumInfo(image_info,image,exception);
   if (quantum_info == (QuantumInfo *) NULL)
     ThrowReaderException(ResourceLimitError,"MemoryAllocationFailed");
   quantum_info->quantum=32;
@@ -1183,7 +1183,7 @@ static MagickBooleanType WriteCINImage(const ImageInfo *image_info,Image *image,
   /*
     Convert pixel packets to CIN raster image.
   */
-  quantum_info=AcquireQuantumInfo(image_info,image);
+  quantum_info=AcquireQuantumInfo(image_info,image,exception);
   if (quantum_info == (QuantumInfo *) NULL)
     ThrowWriterException(ResourceLimitError,"MemoryAllocationFailed");
   quantum_info->quantum=32;
index b47ac1d15ab8f1cd60696eb10818a63ab9471b80..59d31a3e3e976db0b50dc692543cd4087dd6d59e 100644 (file)
@@ -161,7 +161,7 @@ static Image *ReadCMYKImage(const ImageInfo *image_info,
     exception);
   (void) SetImageVirtualPixelMethod(canvas_image,BlackVirtualPixelMethod,
     exception);
-  quantum_info=AcquireQuantumInfo(image_info,canvas_image);
+  quantum_info=AcquireQuantumInfo(image_info,canvas_image,exception);
   if (quantum_info == (QuantumInfo *) NULL)
     ThrowReaderException(ResourceLimitError,"MemoryAllocationFailed");
   pixels=GetQuantumPixels(quantum_info);
@@ -1228,7 +1228,7 @@ static MagickBooleanType WriteCMYKImage(const ImageInfo *image_info,
         if (image->alpha_trait != BlendPixelTrait)
           (void) SetImageAlphaChannel(image,OpaqueAlphaChannel,exception);
       }
-    quantum_info=AcquireQuantumInfo(image_info,image);
+    quantum_info=AcquireQuantumInfo(image_info,image,exception);
     if (quantum_info == (QuantumInfo *) NULL)
       ThrowWriterException(ResourceLimitError,"MemoryAllocationFailed");
     pixels=GetQuantumPixels(quantum_info);
index c86a3754c666be262d690ae898a762e7148131e8..a98d07ff9a481a88036579f2c231eace54276426 100644 (file)
@@ -1206,7 +1206,7 @@ static Image *ReadDPXImage(const ImageInfo *image_info,ExceptionInfo *exception)
     */
     status=MagickTrue;
     row=0;
-    quantum_info=AcquireQuantumInfo(image_info,image);
+    quantum_info=AcquireQuantumInfo(image_info,image,exception);
     if (quantum_info == (QuantumInfo *) NULL)
       ThrowReaderException(ResourceLimitError,"MemoryAllocationFailed");
     SetQuantumQuantum(quantum_info,32);
@@ -1945,7 +1945,7 @@ static MagickBooleanType WriteDPXImage(const ImageInfo *image_info,Image *image,
   /*
     Convert pixel packets to DPX raster image.
   */
-  quantum_info=AcquireQuantumInfo(image_info,image);
+  quantum_info=AcquireQuantumInfo(image_info,image,exception);
   SetQuantumQuantum(quantum_info,32);
   SetQuantumPack(quantum_info,dpx.image.image_element[0].packing == 0 ?
     MagickTrue : MagickFalse);
index 4c3f740b04ea6b3e875c294e181b58b470264c4e..1ea82d0de050215bccae3831130de84b11729010 100644 (file)
@@ -658,7 +658,7 @@ static MagickBooleanType WriteFITSImage(const ImageInfo *image_info,
   */
   image->depth=GetImageQuantumDepth(image,MagickFalse);
   image->endian=MSBEndian;
-  quantum_info=AcquireQuantumInfo((const ImageInfo *) NULL,image);
+  quantum_info=AcquireQuantumInfo(image_info,image,exception);
   if (quantum_info == (QuantumInfo *) NULL)
     ThrowWriterException(ResourceLimitError,"MemoryAllocationFailed");
   offset=0;
index e2beabe07704c09f34516709d2d59d1eaa97e886..3ed3e0da33e135c6b9241d38b39227a1f650a185 100644 (file)
@@ -928,7 +928,7 @@ static MagickBooleanType WriteFPXImage(const ImageInfo *image_info,Image *image,
   /*
     Initialize FlashPix image description.
   */
-  quantum_info=AcquireQuantumInfo(image_info,image);
+  quantum_info=AcquireQuantumInfo(image_info,image,exception);
   if (quantum_info == (QuantumInfo *) NULL)
     ThrowWriterException(ResourceLimitError,"MemoryAllocationFailed");
   pixels=GetQuantumPixels(quantum_info);
index 64e4de03a6023e7a6250f8afe04bb71375adbf4c..22a55778bbdf6af80e182634d26de0896a7f21b3 100644 (file)
@@ -157,7 +157,7 @@ static Image *ReadGRAYImage(const ImageInfo *image_info,
   (void) SetImageVirtualPixelMethod(canvas_image,BlackVirtualPixelMethod,
     exception);
   quantum_type=GrayQuantum;
-  quantum_info=AcquireQuantumInfo(image_info,canvas_image);
+  quantum_info=AcquireQuantumInfo(image_info,canvas_image,exception);
   if (quantum_info == (QuantumInfo *) NULL)
     ThrowReaderException(ResourceLimitError,"MemoryAllocationFailed");
   pixels=GetQuantumPixels(quantum_info);
@@ -415,7 +415,7 @@ static MagickBooleanType WriteGRAYImage(const ImageInfo *image_info,
     */
     (void) TransformImageColorspace(image,sRGBColorspace,exception);
     quantum_type=GrayQuantum;
-    quantum_info=AcquireQuantumInfo(image_info,image);
+    quantum_info=AcquireQuantumInfo(image_info,image,exception);
     if (quantum_info == (QuantumInfo *) NULL)
       ThrowWriterException(ResourceLimitError,"MemoryAllocationFailed");
     pixels=GetQuantumPixels(quantum_info);
index 49d6d06955d77882ded5df81d9112ed09f353b57..c20468397af4b747af4ab253b3bd49a5a7daca78 100644 (file)
@@ -321,7 +321,7 @@ static Image *ReadIPLImage(const ImageInfo *image_info,ExceptionInfo *exception)
    printf("Length: %.20g, Memory size: %.20g\n", (double) length,(double)
      image->depth);
 */
-     quantum_info=AcquireQuantumInfo(image_info,image);
+     quantum_info=AcquireQuantumInfo(image_info,image,exception);
      if (quantum_info == (QuantumInfo *) NULL)
        ThrowReaderException(ResourceLimitError,"MemoryAllocationFailed");
      status=SetQuantumFormat(image,quantum_info,quantum_format);
@@ -540,7 +540,7 @@ static MagickBooleanType WriteIPLImage(const ImageInfo *image_info,Image *image,
   scene=0;
   
 
-  quantum_info=AcquireQuantumInfo(image_info, image);
+  quantum_info=AcquireQuantumInfo(image_info,image,exception);
   if ((quantum_info->format == UndefinedQuantumFormat) &&
       (IsHighDynamicRangeImage(image,exception) != MagickFalse))
     SetQuantumFormat(image,quantum_info,FloatingPointQuantumFormat);
index d5b9e892922b3a0ac88ceea61632766d991a7d8a..4ac2f8e6c370d5cc50e6f617648814b5cfc837dd 100644 (file)
@@ -839,7 +839,7 @@ RestoreMSCWarning
     (void) sample_size;
     image->columns = MATLAB_HDR.SizeX;
     image->rows = MATLAB_HDR.SizeY;    
-    quantum_info=AcquireQuantumInfo(clone_info,image);
+    quantum_info=AcquireQuantumInfo(clone_info,image,exception);
     if (quantum_info == (QuantumInfo *) NULL)
       ThrowReaderException(ResourceLimitError,"MemoryAllocationFailed");
     one=1;
@@ -1270,7 +1270,7 @@ static MagickBooleanType WriteMATImage(const ImageInfo *image_info,Image *image,
     /*
       Store image data.
     */
-    quantum_info=AcquireQuantumInfo(image_info,image);
+    quantum_info=AcquireQuantumInfo(image_info,image,exception);
     if (quantum_info == (QuantumInfo *) NULL)
       ThrowWriterException(ResourceLimitError,"MemoryAllocationFailed");
     pixels=GetQuantumPixels(quantum_info);
index 20b739f5be6cde6bf98b1d8c7487f00e0bfe2644..25a9172a0a70aa2a3a70307dab16910575caf9b8 100644 (file)
@@ -1244,7 +1244,7 @@ static Image *ReadMIFFImage(const ImageInfo *image_info,
     /*
       Allocate image pixels.
     */
-    quantum_info=AcquireQuantumInfo(image_info,image);
+    quantum_info=AcquireQuantumInfo(image_info,image,exception);
     if (quantum_info == (QuantumInfo *) NULL)
       ThrowReaderException(ResourceLimitError,"MemoryAllocationFailed");
     if (quantum_format != UndefinedQuantumFormat)
@@ -1976,7 +1976,7 @@ static MagickBooleanType WriteMIFFImage(const ImageInfo *image_info,
     else
       if (IsGrayColorspace(image->colorspace) == MagickFalse)
         (void) SetImageColorspace(image,GRAYColorspace,exception);
-    quantum_info=AcquireQuantumInfo(image_info,image);
+    quantum_info=AcquireQuantumInfo(image_info,image,exception);
     if (quantum_info == (QuantumInfo *) NULL)
       ThrowWriterException(ResourceLimitError,"MemoryAllocationFailed");
     if ((image->storage_class != PseudoClass) && (image->depth >= 32) &&
index 015727df8ae5bdbe31fdaef0eb028f4e79ba466e..b251fea4a5bebd4ea96e54b8cd8da53e4bfef05a 100644 (file)
@@ -823,7 +823,7 @@ static MagickBooleanType WritePDBImage(const ImageInfo *image_info,Image *image,
   /*
     Convert to GRAY raster scanline.
   */
-  quantum_info=AcquireQuantumInfo(image_info,image);
+  quantum_info=AcquireQuantumInfo(image_info,image,exception);
   if (quantum_info == (QuantumInfo *) NULL)
     ThrowWriterException(ResourceLimitError,"MemoryAllocationFailed");
   bits=8/(int) bits_per_pixel-1;  /* start at most significant bits */
index 462d031e5cb489273cc8576f5539688959facde5..b9a586ae12fa05fdce07193be74aeea392dacd89 100644 (file)
@@ -3156,7 +3156,7 @@ static Image *ReadOnePNGImage(MngInfo *mng_info,
   /*
     Convert PNG pixels to pixel packets.
   */
-  quantum_info=AcquireQuantumInfo(image_info,image);
+  quantum_info=AcquireQuantumInfo(image_info,image,exception);
 
   if (quantum_info == (QuantumInfo *) NULL)
      png_error(ping,"Failed to allocate quantum_info");
@@ -10812,7 +10812,7 @@ static MagickBooleanType WriteOnePNGImage(MngInfo *mng_info,
   /*
     Initialize image scanlines.
   */
-  quantum_info=AcquireQuantumInfo(image_info,image);
+  quantum_info=AcquireQuantumInfo(image_info,image,exception);
   if (quantum_info == (QuantumInfo *) NULL)
     png_error(ping,"Memory allocation for quantum_info failed");
   quantum_info->format=UndefinedQuantumFormat;
index a13dcf935da379534e752861cab63dd280464fdb..c86f398706c1a9c152d645f758a5e02662b72a3b 100644 (file)
@@ -552,7 +552,7 @@ static Image *ReadPNMImage(const ImageInfo *image_info,ExceptionInfo *exception)
         quantum_type=GrayQuantum;
         if (image->storage_class == PseudoClass)
           quantum_type=IndexQuantum;
-        quantum_info=AcquireQuantumInfo(image_info,image);
+        quantum_info=AcquireQuantumInfo(image_info,image,exception);
         if (quantum_info == (QuantumInfo *) NULL)
           ThrowReaderException(ResourceLimitError,"MemoryAllocationFailed");
         SetQuantumMinIsWhite(quantum_info,MagickTrue);
@@ -629,7 +629,7 @@ static Image *ReadPNMImage(const ImageInfo *image_info,ExceptionInfo *exception)
             extent=2*image->columns;
           else
             extent=4*image->columns;
-        quantum_info=AcquireQuantumInfo(image_info,image);
+        quantum_info=AcquireQuantumInfo(image_info,image,exception);
         if (quantum_info == (QuantumInfo *) NULL)
           ThrowReaderException(ResourceLimitError,"MemoryAllocationFailed");
         for (y=0; y < (ssize_t) image->rows; y++)
@@ -747,7 +747,7 @@ static Image *ReadPNMImage(const ImageInfo *image_info,ExceptionInfo *exception)
         */
         quantum_type=RGBQuantum;
         extent=3*(image->depth <= 8 ? 1 : 2)*image->columns;
-        quantum_info=AcquireQuantumInfo(image_info,image);
+        quantum_info=AcquireQuantumInfo(image_info,image,exception);
         if (quantum_info == (QuantumInfo *) NULL)
           ThrowReaderException(ResourceLimitError,"MemoryAllocationFailed");
         (void) SetQuantumEndian(image,quantum_info,MSBEndian);
@@ -950,7 +950,7 @@ static Image *ReadPNMImage(const ImageInfo *image_info,ExceptionInfo *exception)
             extent=2*channels*image->columns;
           else
             extent=4*channels*image->columns;
-        quantum_info=AcquireQuantumInfo(image_info,image);
+        quantum_info=AcquireQuantumInfo(image_info,image,exception);
         if (quantum_info == (QuantumInfo *) NULL)
           ThrowReaderException(ResourceLimitError,"MemoryAllocationFailed");
         for (y=0; y < (ssize_t) image->rows; y++)
@@ -1251,7 +1251,7 @@ static Image *ReadPNMImage(const ImageInfo *image_info,ExceptionInfo *exception)
         quantum_type=format == 'f' ? GrayQuantum : RGBQuantum;
         image->endian=quantum_scale < 0.0 ? LSBEndian : MSBEndian;
         image->depth=32;
-        quantum_info=AcquireQuantumInfo(image_info,image);
+        quantum_info=AcquireQuantumInfo(image_info,image,exception);
         if (quantum_info == (QuantumInfo *) NULL)
           ThrowReaderException(ResourceLimitError,"MemoryAllocationFailed");
         status=SetQuantumDepth(image,quantum_info,32);
@@ -1905,9 +1905,10 @@ static MagickBooleanType WritePNMImage(const ImageInfo *image_info,Image *image,
         */
         (void) SetImageType(image,BilevelType,exception);
         image->depth=1;
-        quantum_info=AcquireQuantumInfo((const ImageInfo *) NULL,image);
+        quantum_info=AcquireQuantumInfo(image_info,image,exception);
         if (quantum_info == (QuantumInfo *) NULL)
           ThrowWriterException(ResourceLimitError,"MemoryAllocationFailed");
+        (void) SetQuantumEndian(image,quantum_info,MSBEndian);
         quantum_info->min_is_white=MagickTrue;
         pixels=GetQuantumPixels(quantum_info);
         for (y=0; y < (ssize_t) image->rows; y++)
@@ -1944,9 +1945,10 @@ static MagickBooleanType WritePNMImage(const ImageInfo *image_info,Image *image,
         (void) FormatLocaleString(buffer,MaxTextExtent,"%.20g\n",(double)
           ((MagickOffsetType) GetQuantumRange(image->depth)));
         (void) WriteBlobString(image,buffer);
-        quantum_info=AcquireQuantumInfo((const ImageInfo *) NULL,image);
+        quantum_info=AcquireQuantumInfo(image_info,image,exception);
         if (quantum_info == (QuantumInfo *) NULL)
           ThrowWriterException(ResourceLimitError,"MemoryAllocationFailed");
+        (void) SetQuantumEndian(image,quantum_info,MSBEndian);
         quantum_info->min_is_white=MagickTrue;
         pixels=GetQuantumPixels(quantum_info);
         extent=GetQuantumExtent(image,quantum_info,GrayQuantum);
@@ -2060,7 +2062,7 @@ static MagickBooleanType WritePNMImage(const ImageInfo *image_info,Image *image,
         (void) FormatLocaleString(buffer,MaxTextExtent,"%.20g\n",(double)
           ((MagickOffsetType) GetQuantumRange(image->depth)));
         (void) WriteBlobString(image,buffer);
-        quantum_info=AcquireQuantumInfo((const ImageInfo *) NULL,image);
+        quantum_info=AcquireQuantumInfo(image_info,image,exception);
         if (quantum_info == (QuantumInfo *) NULL)
           ThrowWriterException(ResourceLimitError,"MemoryAllocationFailed");
         (void) SetQuantumEndian(image,quantum_info,MSBEndian);
@@ -2155,7 +2157,10 @@ static MagickBooleanType WritePNMImage(const ImageInfo *image_info,Image *image,
         */
         if (image->depth > 32)
           image->depth=32;
-        quantum_info=AcquireQuantumInfo((const ImageInfo *) NULL,image);
+        quantum_info=AcquireQuantumInfo(image_info,image,exception);
+        if (quantum_info == (QuantumInfo *) NULL)
+          ThrowWriterException(ResourceLimitError,"MemoryAllocationFailed");
+        (void) SetQuantumEndian(image,quantum_info,MSBEndian);
         pixels=GetQuantumPixels(quantum_info);
         for (y=0; y < (ssize_t) image->rows; y++)
         {
@@ -2398,9 +2403,10 @@ static MagickBooleanType WritePNMImage(const ImageInfo *image_info,Image *image,
           "1.0\n");
         image->depth=32;
         quantum_type=format == 'f' ? GrayQuantum : RGBQuantum;
-        quantum_info=AcquireQuantumInfo((const ImageInfo *) NULL,image);
+        quantum_info=AcquireQuantumInfo(image_info,image,exception);
         if (quantum_info == (QuantumInfo *) NULL)
           ThrowWriterException(ResourceLimitError,"MemoryAllocationFailed");
+        (void) SetQuantumEndian(image,quantum_info,MSBEndian);
         status=SetQuantumFormat(image,quantum_info,FloatingPointQuantumFormat);
         if (status == MagickFalse)
           ThrowWriterException(ResourceLimitError,"MemoryAllocationFailed");
index f97e449431e610904646e25e23945586a0c8a851..fc237dee52d2c08fe45e2a06ccdeee83f54b50bb 100644 (file)
@@ -2095,7 +2095,7 @@ static void WritePackbitsLength(const PSDInfo *psd_info,
     next_image->depth=16;
   packet_size=next_image->depth > 8UL ? 2UL : 1UL;
   (void) packet_size;
-  quantum_info=AcquireQuantumInfo(image_info,image);
+  quantum_info=AcquireQuantumInfo(image_info,image,exception);
   pixels=GetQuantumPixels(quantum_info);
   for (y=0; y < (ssize_t) next_image->rows; y++)
   {
@@ -2148,7 +2148,7 @@ static void WriteOneChannel(const PSDInfo *psd_info,const ImageInfo *image_info,
     MagickTrue : MagickFalse;
   packet_size=next_image->depth > 8UL ? 2UL : 1UL;
   (void) packet_size;
-  quantum_info=AcquireQuantumInfo(image_info,image);
+  quantum_info=AcquireQuantumInfo(image_info,image,exception);
   pixels=GetQuantumPixels(quantum_info);
   for (y=0; y < (ssize_t) next_image->rows; y++)
   {
index ec0dd446e86543a8fe9de6c0951fded2bc6cf9e2..2e878ea1c32405a9362ee85dcc999759a2d768d1 100644 (file)
@@ -152,7 +152,7 @@ static Image *ReadRAWImage(const ImageInfo *image_info,ExceptionInfo *exception)
   (void) SetImageVirtualPixelMethod(canvas_image,BlackVirtualPixelMethod,
     exception);
   quantum_type=GrayQuantum;
-  quantum_info=AcquireQuantumInfo(image_info,canvas_image);
+  quantum_info=AcquireQuantumInfo(image_info,canvas_image,exception);
   if (quantum_info == (QuantumInfo *) NULL)
     ThrowReaderException(ResourceLimitError,"MemoryAllocationFailed");
   pixels=GetQuantumPixels(quantum_info);
@@ -557,7 +557,7 @@ static MagickBooleanType WriteRAWImage(const ImageInfo *image_info,Image *image,
     /*
       Convert image to RAW raster pixels.
     */
-    quantum_info=AcquireQuantumInfo(image_info,image);
+    quantum_info=AcquireQuantumInfo(image_info,image,exception);
     if (quantum_info == (QuantumInfo *) NULL)
       ThrowWriterException(ResourceLimitError,"MemoryAllocationFailed");
     pixels=GetQuantumPixels(quantum_info);
index 74eced2dc2a3fff3e417388fbd29f29f9f293576..2b72c578516b69bc4c89b516628271d29b6a2298 100644 (file)
@@ -160,7 +160,7 @@ static Image *ReadRGBImage(const ImageInfo *image_info,ExceptionInfo *exception)
     exception);
   (void) SetImageVirtualPixelMethod(canvas_image,BlackVirtualPixelMethod,
     exception);
-  quantum_info=AcquireQuantumInfo(image_info,canvas_image);
+  quantum_info=AcquireQuantumInfo(image_info,canvas_image,exception);
   if (quantum_info == (QuantumInfo *) NULL)
     ThrowReaderException(ResourceLimitError,"MemoryAllocationFailed");
   pixels=GetQuantumPixels(quantum_info);
@@ -1113,7 +1113,7 @@ static MagickBooleanType WriteRGBImage(const ImageInfo *image_info,
     if ((LocaleCompare(image_info->magick,"RGBA") == 0) &&
         (image->alpha_trait != BlendPixelTrait))
       (void) SetImageAlphaChannel(image,OpaqueAlphaChannel,exception);
-    quantum_info=AcquireQuantumInfo(image_info,image);
+    quantum_info=AcquireQuantumInfo(image_info,image,exception);
     if (quantum_info == (QuantumInfo *) NULL)
       ThrowWriterException(ResourceLimitError,"MemoryAllocationFailed");
     pixels=GetQuantumPixels(quantum_info);
index dd87750a5cbd9f6fc1ce2f515ef7ad44f5f08055..d23263a8f72f607d98f8375cc2bc606711bcb83f 100644 (file)
@@ -1327,7 +1327,7 @@ RestoreMSCWarning
     /*
       Allocate memory for the image and pixel buffer.
     */
-    quantum_info=AcquireQuantumInfo(image_info,image);
+    quantum_info=AcquireQuantumInfo(image_info,image,exception);
     if (quantum_info == (QuantumInfo *) NULL)
       {
         TIFFClose(tiff);
@@ -3075,7 +3075,7 @@ static MagickBooleanType WriteTIFFImage(const ImageInfo *image_info,
       default:
         break;
     }
-    quantum_info=AcquireQuantumInfo(image_info,image);
+    quantum_info=AcquireQuantumInfo(image_info,image,exception);
     if (quantum_info == (QuantumInfo *) NULL)
       ThrowWriterException(ResourceLimitError,"MemoryAllocationFailed");
     if ((image->storage_class != PseudoClass) && (image->depth >= 32) &&
index 7800fbc8460a387ce64fea5325eef086bdc421f0..d9cec729157b7e6660e3870e4e027e1e518a693d 100644 (file)
@@ -291,7 +291,7 @@ static Image *ReadVICARImage(const ImageInfo *image_info,
   */
   (void) SetImageColorspace(image,GRAYColorspace,exception);
   quantum_type=GrayQuantum;
-  quantum_info=AcquireQuantumInfo(image_info,image);
+  quantum_info=AcquireQuantumInfo(image_info,image,exception);
   if (quantum_info == (QuantumInfo *) NULL)
     ThrowReaderException(ResourceLimitError,"MemoryAllocationFailed");
   pixels=GetQuantumPixels(quantum_info);
@@ -472,7 +472,7 @@ static MagickBooleanType WriteVICARImage(const ImageInfo *image_info,
     Write VICAR pixels.
   */
   image->depth=8;
-  quantum_info=AcquireQuantumInfo(image_info,image);
+  quantum_info=AcquireQuantumInfo(image_info,image,exception);
   if (quantum_info == (QuantumInfo *) NULL)
     ThrowWriterException(ResourceLimitError,"MemoryAllocationFailed");
   pixels=GetQuantumPixels(quantum_info);
index bc57872ab4a9c45855c3c051b38b77e08a35d7b7..05342d56428c5f16f468d9f357659c5ac9eb6c0b 100644 (file)
@@ -168,7 +168,7 @@ static Image *ReadYCBCRImage(const ImageInfo *image_info,
     exception);
   (void) SetImageVirtualPixelMethod(canvas_image,BlackVirtualPixelMethod,
     exception);
-  quantum_info=AcquireQuantumInfo(image_info,canvas_image);
+  quantum_info=AcquireQuantumInfo(image_info,canvas_image,exception);
   if (quantum_info == (QuantumInfo *) NULL)
     ThrowReaderException(ResourceLimitError,"MemoryAllocationFailed");
   pixels=GetQuantumPixels(quantum_info);
@@ -1020,7 +1020,7 @@ static MagickBooleanType WriteYCBCRImage(const ImageInfo *image_info,
     if ((LocaleCompare(image_info->magick,"YCbCrA") == 0) &&
         (image->alpha_trait != BlendPixelTrait))
       (void) SetImageAlphaChannel(image,OpaqueAlphaChannel,exception);
-    quantum_info=AcquireQuantumInfo(image_info,image);
+    quantum_info=AcquireQuantumInfo(image_info,image,exception);
     if (quantum_info == (QuantumInfo *) NULL)
       ThrowWriterException(ResourceLimitError,"MemoryAllocationFailed");
     pixels=GetQuantumPixels(quantum_info);