diff --git a/coders/aai.c b/coders/aai.c
index 214b175..caed05c 100644
--- a/coders/aai.c
+++ b/coders/aai.c
@@ -65,7 +65,7 @@
Forward declarations.
*/
static MagickBooleanType
- WriteAAIImage(const ImageInfo *,Image *);
+ WriteAAIImage(const ImageInfo *,Image *,ExceptionInfo *);
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -307,7 +307,8 @@
%
% The format of the WriteAAIImage method is:
%
-% MagickBooleanType WriteAAIImage(const ImageInfo *image_info,Image *image)
+% MagickBooleanType WriteAAIImage(const ImageInfo *image_info,
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -315,8 +316,11 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
-static MagickBooleanType WriteAAIImage(const ImageInfo *image_info,Image *image)
+static MagickBooleanType WriteAAIImage(const ImageInfo *image_info,Image *image,
+ ExceptionInfo *exception)
{
MagickBooleanType
status;
@@ -349,7 +353,7 @@
assert(image->signature == MagickSignature);
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
scene=0;
@@ -374,7 +378,7 @@
*/
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
q=pixels;
diff --git a/coders/art.c b/coders/art.c
index bb9f8ae..c0f0621 100644
--- a/coders/art.c
+++ b/coders/art.c
@@ -65,7 +65,7 @@
Forward declarations.
*/
static MagickBooleanType
- WriteARTImage(const ImageInfo *,Image *);
+ WriteARTImage(const ImageInfo *,Image *,ExceptionInfo *);
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -266,7 +266,8 @@
%
% The format of the WriteARTImage method is:
%
-% MagickBooleanType WriteARTImage(const ImageInfo *image_info,Image *image)
+% MagickBooleanType WriteARTImage(const ImageInfo *image_info,
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -274,8 +275,11 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
-static MagickBooleanType WriteARTImage(const ImageInfo *image_info,Image *image)
+static MagickBooleanType WriteARTImage(const ImageInfo *image_info,Image *image,
+ ExceptionInfo *exception)
{
MagickBooleanType
status;
@@ -305,7 +309,7 @@
assert(image->signature == MagickSignature);
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
if ((image->columns > 65535UL) || (image->rows > 65535UL))
@@ -329,11 +333,11 @@
quantum_info=AcquireQuantumInfo(image_info,image);
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
(void) ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
- GrayQuantum,pixels,&image->exception);
+ GrayQuantum,pixels,exception);
count=WriteBlob(image,length,pixels);
if (count != (ssize_t) length)
ThrowWriterException(CorruptImageError,"UnableToWriteImageData");
diff --git a/coders/avs.c b/coders/avs.c
index 5f8441b..afc8c9a 100644
--- a/coders/avs.c
+++ b/coders/avs.c
@@ -64,7 +64,7 @@
Forward declarations.
*/
static MagickBooleanType
- WriteAVSImage(const ImageInfo *,Image *);
+ WriteAVSImage(const ImageInfo *,Image *,ExceptionInfo *);
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -304,7 +304,8 @@
%
% The format of the WriteAVSImage method is:
%
-% MagickBooleanType WriteAVSImage(const ImageInfo *image_info,Image *image)
+% MagickBooleanType WriteAVSImage(const ImageInfo *image_info,
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -312,8 +313,11 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
-static MagickBooleanType WriteAVSImage(const ImageInfo *image_info,Image *image)
+static MagickBooleanType WriteAVSImage(const ImageInfo *image_info,Image *image,
+ ExceptionInfo *exception)
{
MagickBooleanType
status;
@@ -346,7 +350,7 @@
assert(image->signature == MagickSignature);
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
scene=0;
@@ -371,7 +375,7 @@
*/
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
q=pixels;
diff --git a/coders/bgr.c b/coders/bgr.c
index 2d14405..5f6efa7 100644
--- a/coders/bgr.c
+++ b/coders/bgr.c
@@ -67,7 +67,7 @@
Forward declarations.
*/
static MagickBooleanType
- WriteBGRImage(const ImageInfo *,Image *);
+ WriteBGRImage(const ImageInfo *,Image *,ExceptionInfo *);
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -1039,7 +1039,7 @@
% The format of the WriteBGRImage method is:
%
% MagickBooleanType WriteBGRImage(const ImageInfo *image_info,
-% Image *image)
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -1047,8 +1047,11 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
-static MagickBooleanType WriteBGRImage(const ImageInfo *image_info,Image *image)
+static MagickBooleanType WriteBGRImage(const ImageInfo *image_info,Image *image,
+ ExceptionInfo *exception)
{
MagickBooleanType
status;
@@ -1086,7 +1089,7 @@
/*
Open output image file.
*/
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
}
@@ -1106,7 +1109,7 @@
(void) TransformImageColorspace(image,RGBColorspace);
if ((LocaleCompare(image_info->magick,"BGRA") == 0) &&
(image->matte == MagickFalse))
- (void) SetImageAlphaChannel(image,OpaqueAlphaChannel,&image->exception);
+ (void) SetImageAlphaChannel(image,OpaqueAlphaChannel,exception);
quantum_info=AcquireQuantumInfo(image_info,image);
if (quantum_info == (QuantumInfo *) NULL)
ThrowWriterException(ResourceLimitError,"MemoryAllocationFailed");
@@ -1124,11 +1127,11 @@
register const Quantum
*restrict p;
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
length=ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
- quantum_type,pixels,&image->exception);
+ quantum_type,pixels,exception);
count=WriteBlob(image,length,pixels);
if (count != (ssize_t) length)
break;
@@ -1152,28 +1155,28 @@
register const Quantum
*restrict p;
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
length=ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
- BlueQuantum,pixels,&image->exception);
+ BlueQuantum,pixels,exception);
count=WriteBlob(image,length,pixels);
if (count != (ssize_t) length)
break;
length=ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
- GreenQuantum,pixels,&image->exception);
+ GreenQuantum,pixels,exception);
count=WriteBlob(image,length,pixels);
if (count != (ssize_t) length)
break;
length=ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
- RedQuantum,pixels,&image->exception);
+ RedQuantum,pixels,exception);
count=WriteBlob(image,length,pixels);
if (count != (ssize_t) length)
break;
if (quantum_type == BGRAQuantum)
{
length=ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
- AlphaQuantum,pixels,&image->exception);
+ AlphaQuantum,pixels,exception);
count=WriteBlob(image,length,pixels);
if (count != (ssize_t) length)
break;
@@ -1198,11 +1201,11 @@
register const Quantum
*restrict p;
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
length=ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
- RedQuantum,pixels,&image->exception);
+ RedQuantum,pixels,exception);
count=WriteBlob(image,length,pixels);
if (count != (ssize_t) length)
break;
@@ -1218,11 +1221,11 @@
register const Quantum
*restrict p;
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
length=ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
- GreenQuantum,pixels,&image->exception);
+ GreenQuantum,pixels,exception);
count=WriteBlob(image,length,pixels);
if (count != (ssize_t) length)
break;
@@ -1238,11 +1241,11 @@
register const Quantum
*restrict p;
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
length=ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
- BlueQuantum,pixels,&image->exception);
+ BlueQuantum,pixels,exception);
count=WriteBlob(image,length,pixels);
if (count != (ssize_t) length)
break;
@@ -1260,11 +1263,11 @@
register const Quantum
*restrict p;
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
length=ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
- AlphaQuantum,pixels,&image->exception);
+ AlphaQuantum,pixels,exception);
count=WriteBlob(image,length,pixels);
if (count != (ssize_t) length)
break;
@@ -1294,7 +1297,7 @@
*/
AppendImageFormat("B",image->filename);
status=OpenBlob(image_info,image,scene == 0 ? WriteBinaryBlobMode :
- AppendBinaryBlobMode,&image->exception);
+ AppendBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
for (y=0; y < (ssize_t) image->rows; y++)
@@ -1302,11 +1305,11 @@
register const Quantum
*restrict p;
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
length=ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
- BlueQuantum,pixels,&image->exception);
+ BlueQuantum,pixels,exception);
count=WriteBlob(image,length,pixels);
if (count != (ssize_t) length)
break;
@@ -1320,7 +1323,7 @@
(void) CloseBlob(image);
AppendImageFormat("G",image->filename);
status=OpenBlob(image_info,image,scene == 0 ? WriteBinaryBlobMode :
- AppendBinaryBlobMode,&image->exception);
+ AppendBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
for (y=0; y < (ssize_t) image->rows; y++)
@@ -1328,11 +1331,11 @@
register const Quantum
*restrict p;
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
length=ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
- GreenQuantum,pixels,&image->exception);
+ GreenQuantum,pixels,exception);
count=WriteBlob(image,length,pixels);
if (count != (ssize_t) length)
break;
@@ -1346,7 +1349,7 @@
(void) CloseBlob(image);
AppendImageFormat("R",image->filename);
status=OpenBlob(image_info,image,scene == 0 ? WriteBinaryBlobMode :
- AppendBinaryBlobMode,&image->exception);
+ AppendBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
for (y=0; y < (ssize_t) image->rows; y++)
@@ -1354,11 +1357,11 @@
register const Quantum
*restrict p;
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
length=ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
- RedQuantum,pixels,&image->exception);
+ RedQuantum,pixels,exception);
count=WriteBlob(image,length,pixels);
if (count != (ssize_t) length)
break;
@@ -1375,7 +1378,7 @@
(void) CloseBlob(image);
AppendImageFormat("A",image->filename);
status=OpenBlob(image_info,image,scene == 0 ? WriteBinaryBlobMode :
- AppendBinaryBlobMode,&image->exception);
+ AppendBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
for (y=0; y < (ssize_t) image->rows; y++)
@@ -1383,12 +1386,11 @@
register const Quantum
*restrict p;
- p=GetVirtualPixels(image,0,y,image->columns,1,
- &image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
length=ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
- AlphaQuantum,pixels,&image->exception);
+ AlphaQuantum,pixels,exception);
count=WriteBlob(image,length,pixels);
if (count != (ssize_t) length)
break;
diff --git a/coders/bmp.c b/coders/bmp.c
index bd5bc3a..7c47cfa 100644
--- a/coders/bmp.c
+++ b/coders/bmp.c
@@ -137,7 +137,7 @@
Forward declarations.
*/
static MagickBooleanType
- WriteBMPImage(const ImageInfo *,Image *);
+ WriteBMPImage(const ImageInfo *,Image *,ExceptionInfo *);
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -1439,7 +1439,8 @@
%
% The format of the WriteBMPImage method is:
%
-% MagickBooleanType WriteBMPImage(const ImageInfo *image_info,Image *image)
+% MagickBooleanType WriteBMPImage(const ImageInfo *image_info,
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -1447,8 +1448,11 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
-static MagickBooleanType WriteBMPImage(const ImageInfo *image_info,Image *image)
+static MagickBooleanType WriteBMPImage(const ImageInfo *image_info,Image *image,
+ ExceptionInfo *exception)
{
BMPInfo
bmp_info;
@@ -1493,7 +1497,7 @@
assert(image->signature == MagickSignature);
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
type=4;
@@ -1517,7 +1521,7 @@
bmp_info.offset_bits=bmp_info.file_size;
bmp_info.compression=BI_RGB;
if ((image->storage_class == PseudoClass) && (image->colors > 256))
- (void) SetImageStorageClass(image,DirectClass,&image->exception);
+ (void) SetImageStorageClass(image,DirectClass,exception);
if (image->storage_class != DirectClass)
{
/*
@@ -1536,10 +1540,10 @@
bmp_info.bits_per_pixel=8;
bmp_info.number_colors=1U << bmp_info.bits_per_pixel;
if (image->matte != MagickFalse)
- (void) SetImageStorageClass(image,DirectClass,&image->exception);
+ (void) SetImageStorageClass(image,DirectClass,exception);
else
if ((size_t) bmp_info.number_colors < image->colors)
- (void) SetImageStorageClass(image,DirectClass,&image->exception);
+ (void) SetImageStorageClass(image,DirectClass,exception);
else
{
bmp_info.file_size+=3*(1UL << bmp_info.bits_per_pixel);
@@ -1641,7 +1645,7 @@
ssize_t
offset;
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
q=pixels+(image->rows-y-1)*bytes_per_line;
@@ -1690,7 +1694,7 @@
*/
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
q=pixels+(image->rows-y-1)*bytes_per_line;
@@ -1734,7 +1738,7 @@
*/
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
q=pixels+(image->rows-y-1)*bytes_per_line;
@@ -1762,7 +1766,7 @@
*/
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
q=pixels+(image->rows-y-1)*bytes_per_line;
@@ -1792,7 +1796,7 @@
*/
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
q=pixels+(image->rows-y-1)*bytes_per_line;
diff --git a/coders/braille.c b/coders/braille.c
index 7da9ada..358e625 100644
--- a/coders/braille.c
+++ b/coders/braille.c
@@ -65,7 +65,7 @@
Forward declarations.
*/
static MagickBooleanType
- WriteBRAILLEImage(const ImageInfo *,Image *);
+ WriteBRAILLEImage(const ImageInfo *,Image *,ExceptionInfo *);
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -158,7 +158,7 @@
% The format of the WriteBRAILLEImage method is:
%
% MagickBooleanType WriteBRAILLEImage(const ImageInfo *image_info,
-% Image *image)
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -166,9 +166,11 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
static MagickBooleanType WriteBRAILLEImage(const ImageInfo *image_info,
- Image *image)
+ Image *image,ExceptionInfo *exception)
{
char
buffer[MaxTextExtent];
@@ -214,7 +216,7 @@
cell_height=3;
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
if (!iso_11548_1)
@@ -259,7 +261,7 @@
if ((y+cell_height) > image->rows)
cell_height = (size_t) (image->rows-y);
- p=GetVirtualPixels(image,0,y,image->columns,cell_height,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,cell_height,exception);
if (p == (const Quantum *) NULL)
break;
for (x=0; x < (ssize_t) image->columns; x+=2)
diff --git a/coders/cals.c b/coders/cals.c
index 8e88534..281b5b1 100644
--- a/coders/cals.c
+++ b/coders/cals.c
@@ -71,7 +71,7 @@
Forward declarations.
*/
static MagickBooleanType
- WriteCALSImage(const ImageInfo *,Image *);
+ WriteCALSImage(const ImageInfo *,Image *,ExceptionInfo *);
#endif
/*
@@ -389,7 +389,7 @@
% The format of the WriteCALSImage method is:
%
% MagickBooleanType WriteCALSImage(const ImageInfo *image_info,
-% Image *image)
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -397,6 +397,8 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
static ssize_t WriteCALSRecord(Image *image,const char *data)
@@ -430,7 +432,7 @@
}
static MagickBooleanType WriteCALSImage(const ImageInfo *image_info,
- Image *image)
+ Image *image,ExceptionInfo *exception)
{
char
header[129];
@@ -468,7 +470,7 @@
assert(image->signature == MagickSignature);
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
/*
@@ -558,14 +560,14 @@
write_info=CloneImageInfo(image_info);
(void) CopyMagickString(write_info->filename,"GROUP4:",MaxTextExtent);
(void) CopyMagickString(write_info->magick,"GROUP4",MaxTextExtent);
- group4_image=CloneImage(image,0,0,MagickTrue,&image->exception);
+ group4_image=CloneImage(image,0,0,MagickTrue,exception);
if (group4_image == (Image *) NULL)
{
(void) CloseBlob(image);
return(MagickFalse);
}
group4=(unsigned char *) ImageToBlob(write_info,group4_image,&length,
- &image->exception);
+ exception);
group4_image=DestroyImage(group4_image);
if (group4 == (unsigned char *) NULL)
{
diff --git a/coders/cin.c b/coders/cin.c
index 1f07ed3..040cd44 100644
--- a/coders/cin.c
+++ b/coders/cin.c
@@ -227,7 +227,7 @@
Forward declaractions.
*/
static MagickBooleanType
- WriteCINImage(const ImageInfo *,Image *);
+ WriteCINImage(const ImageInfo *,Image *,ExceptionInfo *);
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -811,7 +811,8 @@
%
% The format of the WriteCINImage method is:
%
-% MagickBooleanType WriteCINImage(const ImageInfo *image_info,Image *image)
+% MagickBooleanType WriteCINImage(const ImageInfo *image_info,
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -819,6 +820,8 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
static inline const char *GetCINProperty(const ImageInfo *image_info,
@@ -833,7 +836,8 @@
return(GetImageProperty(image,property));
}
-static MagickBooleanType WriteCINImage(const ImageInfo *image_info,Image *image)
+static MagickBooleanType WriteCINImage(const ImageInfo *image_info,Image *image,
+ ExceptionInfo *exception)
{
const char
*value;
@@ -887,7 +891,7 @@
assert(image->signature == MagickSignature);
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
if (image->colorspace != LogColorspace)
@@ -1148,11 +1152,11 @@
}
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
(void) ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
- quantum_type,pixels,&image->exception);
+ quantum_type,pixels,exception);
count=WriteBlob(image,length,pixels);
if (count != (ssize_t) length)
break;
diff --git a/coders/cip.c b/coders/cip.c
index 5dcf3a3..be916cb 100644
--- a/coders/cip.c
+++ b/coders/cip.c
@@ -68,7 +68,7 @@
Forward declarations.
*/
static MagickBooleanType
- WriteCIPImage(const ImageInfo *,Image *);
+ WriteCIPImage(const ImageInfo *,Image *,ExceptionInfo *);
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -147,7 +147,8 @@
%
% The format of the WriteCIPImage method is:
%
-% MagickBooleanType WriteCIPImage(const ImageInfo *image_info,Image *image)
+% MagickBooleanType WriteCIPImage(const ImageInfo *image_info,
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -155,6 +156,8 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
static inline ssize_t MagickMin(const ssize_t x,const ssize_t y)
@@ -164,7 +167,8 @@
return(y);
}
-static MagickBooleanType WriteCIPImage(const ImageInfo *image_info,Image *image)
+static MagickBooleanType WriteCIPImage(const ImageInfo *image_info,Image *image,
+ ExceptionInfo *exception)
{
char
buffer[MaxTextExtent];
@@ -197,7 +201,7 @@
assert(image->signature == MagickSignature);
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
(void) WriteBlobString(image,"<CiscoIPPhoneImage>\n");
@@ -233,7 +237,7 @@
(void) TransformImageColorspace(image,RGBColorspace);
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
for (x=0; x < ((ssize_t) image->columns-3); x+=4)
diff --git a/coders/clip.c b/coders/clip.c
index 294bb34..f43d925 100644
--- a/coders/clip.c
+++ b/coders/clip.c
@@ -58,7 +58,7 @@
Forward declarations.
*/
static MagickBooleanType
- WriteCLIPImage(const ImageInfo *,Image *);
+ WriteCLIPImage(const ImageInfo *,Image *,ExceptionInfo *);
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -137,7 +137,7 @@
% The format of the WriteCLIPImage method is:
%
% MagickBooleanType WriteCLIPImage(const ImageInfo *image_info,
-% Image *image)
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -145,9 +145,11 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
static MagickBooleanType WriteCLIPImage(const ImageInfo *image_info,
- Image *image)
+ Image *image,ExceptionInfo *exception)
{
Image
*clip_image;
@@ -162,17 +164,17 @@
(void) ClipImage(image);
if (image->clip_mask == (Image *) NULL)
ThrowWriterException(CoderError,"ImageDoesNotHaveAClipMask");
- clip_image=CloneImage(image->clip_mask,0,0,MagickTrue,&image->exception);
+ clip_image=CloneImage(image->clip_mask,0,0,MagickTrue,exception);
if (clip_image == (Image *) NULL)
return(MagickFalse);
(void) SetImageType(clip_image,TrueColorType);
(void) CopyMagickString(clip_image->filename,image->filename,MaxTextExtent);
write_info=CloneImageInfo(image_info);
- (void) SetImageInfo(write_info,1,&image->exception);
+ (void) SetImageInfo(write_info,1,exception);
if (LocaleCompare(write_info->magick,"CLIP") == 0)
(void) FormatLocaleString(clip_image->filename,MaxTextExtent,"miff:%s",
write_info->filename);
- status=WriteImage(write_info,clip_image,&image->exception);
+ status=WriteImage(write_info,clip_image,exception);
clip_image=DestroyImage(clip_image);
write_info=DestroyImageInfo(write_info);
return(status);
diff --git a/coders/clipboard.c b/coders/clipboard.c
index 2158455..59792ab 100644
--- a/coders/clipboard.c
+++ b/coders/clipboard.c
@@ -70,7 +70,7 @@
*/
#if defined(MAGICKCORE_WINGDI32_DELEGATE)
static MagickBooleanType
- WriteCLIPBOARDImage(const ImageInfo *,Image *);
+ WriteCLIPBOARDImage(const ImageInfo *,Image *,ExceptionInfo *);
#endif
/*
@@ -314,7 +314,7 @@
% The format of the WriteCLIPBOARDImage method is:
%
% MagickBooleanType WriteCLIPBOARDImage(const ImageInfo *image_info,
-% Image *image)
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -322,10 +322,12 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
#if defined(MAGICKCORE_WINGDI32_DELEGATE)
static MagickBooleanType WriteCLIPBOARDImage(const ImageInfo *image_info,
- Image *image)
+ Image *image,ExceptionInfo *exception)
{
/*
Allocate memory for pixels.
@@ -349,4 +351,3 @@
return(MagickTrue);
}
#endif /* MAGICKCORE_WINGDI32_DELEGATE */
-
diff --git a/coders/cmyk.c b/coders/cmyk.c
index 2d15985..77eb47e 100644
--- a/coders/cmyk.c
+++ b/coders/cmyk.c
@@ -66,7 +66,7 @@
Forward declarations.
*/
static MagickBooleanType
- WriteCMYKImage(const ImageInfo *,Image *);
+ WriteCMYKImage(const ImageInfo *,Image *,ExceptionInfo *);
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -1158,7 +1158,7 @@
% The format of the WriteCMYKImage method is:
%
% MagickBooleanType WriteCMYKImage(const ImageInfo *image_info,
-% Image *image)
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -1166,9 +1166,11 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
static MagickBooleanType WriteCMYKImage(const ImageInfo *image_info,
- Image *image)
+ Image *image,ExceptionInfo *exception)
{
MagickBooleanType
status;
@@ -1182,13 +1184,13 @@
QuantumType
quantum_type;
+ size_t
+ length;
+
ssize_t
count,
y;
- size_t
- length;
-
unsigned char
*pixels;
@@ -1206,7 +1208,7 @@
/*
Open output image file.
*/
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
}
@@ -1226,7 +1228,7 @@
(void) TransformImageColorspace(image,CMYKColorspace);
if ((LocaleCompare(image_info->magick,"CMYKA") == 0) &&
(image->matte == MagickFalse))
- (void) SetImageAlphaChannel(image,OpaqueAlphaChannel,&image->exception);
+ (void) SetImageAlphaChannel(image,OpaqueAlphaChannel,exception);
quantum_info=AcquireQuantumInfo(image_info,image);
if (quantum_info == (QuantumInfo *) NULL)
ThrowWriterException(ResourceLimitError,"MemoryAllocationFailed");
@@ -1244,11 +1246,11 @@
register const Quantum
*restrict p;
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
length=ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
- quantum_type,pixels,&image->exception);
+ quantum_type,pixels,exception);
count=WriteBlob(image,length,pixels);
if (count != (ssize_t) length)
break;
@@ -1272,33 +1274,33 @@
register const Quantum
*restrict p;
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
length=ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
- CyanQuantum,pixels,&image->exception);
+ CyanQuantum,pixels,exception);
count=WriteBlob(image,length,pixels);
if (count != (ssize_t) length)
break;
length=ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
- MagentaQuantum,pixels,&image->exception);
+ MagentaQuantum,pixels,exception);
count=WriteBlob(image,length,pixels);
if (count != (ssize_t) length)
break;
length=ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
- YellowQuantum,pixels,&image->exception);
+ YellowQuantum,pixels,exception);
count=WriteBlob(image,length,pixels);
if (count != (ssize_t) length)
break;
length=ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
- BlackQuantum,pixels,&image->exception);
+ BlackQuantum,pixels,exception);
count=WriteBlob(image,length,pixels);
if (count != (ssize_t) length)
break;
if (quantum_type == CMYKAQuantum)
{
length=ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
- AlphaQuantum,pixels,&image->exception);
+ AlphaQuantum,pixels,exception);
count=WriteBlob(image,length,pixels);
if (count != (ssize_t) length)
break;
@@ -1323,11 +1325,11 @@
register const Quantum
*restrict p;
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
length=ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
- CyanQuantum,pixels,&image->exception);
+ CyanQuantum,pixels,exception);
count=WriteBlob(image,length,pixels);
if (count != (ssize_t) length)
break;
@@ -1343,11 +1345,11 @@
register const Quantum
*restrict p;
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
length=ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
- MagentaQuantum,pixels,&image->exception);
+ MagentaQuantum,pixels,exception);
count=WriteBlob(image,length,pixels);
if (count != (ssize_t) length)
break;
@@ -1363,11 +1365,11 @@
register const Quantum
*restrict p;
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
length=ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
- YellowQuantum,pixels,&image->exception);
+ YellowQuantum,pixels,exception);
count=WriteBlob(image,length,pixels);
if (count != (ssize_t) length)
break;
@@ -1383,11 +1385,11 @@
register const Quantum
*restrict p;
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
length=ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
- BlackQuantum,pixels,&image->exception);
+ BlackQuantum,pixels,exception);
count=WriteBlob(image,length,pixels);
if (count != (ssize_t) length)
break;
@@ -1405,11 +1407,11 @@
register const Quantum
*restrict p;
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
length=ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
- AlphaQuantum,pixels,&image->exception);
+ AlphaQuantum,pixels,exception);
count=WriteBlob(image,length,pixels);
if (count != (ssize_t) length)
break;
@@ -1439,7 +1441,7 @@
*/
AppendImageFormat("C",image->filename);
status=OpenBlob(image_info,image,scene == 0 ? WriteBinaryBlobMode :
- AppendBinaryBlobMode,&image->exception);
+ AppendBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
for (y=0; y < (ssize_t) image->rows; y++)
@@ -1447,11 +1449,11 @@
register const Quantum
*restrict p;
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
length=ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
- CyanQuantum,pixels,&image->exception);
+ CyanQuantum,pixels,exception);
count=WriteBlob(image,length,pixels);
if (count != (ssize_t) length)
break;
@@ -1465,7 +1467,7 @@
(void) CloseBlob(image);
AppendImageFormat("M",image->filename);
status=OpenBlob(image_info,image,scene == 0 ? WriteBinaryBlobMode :
- AppendBinaryBlobMode,&image->exception);
+ AppendBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
for (y=0; y < (ssize_t) image->rows; y++)
@@ -1473,11 +1475,11 @@
register const Quantum
*restrict p;
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
length=ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
- MagentaQuantum,pixels,&image->exception);
+ MagentaQuantum,pixels,exception);
count=WriteBlob(image,length,pixels);
if (count != (ssize_t) length)
break;
@@ -1491,7 +1493,7 @@
(void) CloseBlob(image);
AppendImageFormat("Y",image->filename);
status=OpenBlob(image_info,image,scene == 0 ? WriteBinaryBlobMode :
- AppendBinaryBlobMode,&image->exception);
+ AppendBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
for (y=0; y < (ssize_t) image->rows; y++)
@@ -1499,11 +1501,11 @@
register const Quantum
*restrict p;
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
length=ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
- YellowQuantum,pixels,&image->exception);
+ YellowQuantum,pixels,exception);
count=WriteBlob(image,length,pixels);
if (count != (ssize_t) length)
break;
@@ -1517,7 +1519,7 @@
(void) CloseBlob(image);
AppendImageFormat("K",image->filename);
status=OpenBlob(image_info,image,scene == 0 ? WriteBinaryBlobMode :
- AppendBinaryBlobMode,&image->exception);
+ AppendBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
for (y=0; y < (ssize_t) image->rows; y++)
@@ -1525,11 +1527,11 @@
register const Quantum
*restrict p;
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
length=ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
- BlackQuantum,pixels,&image->exception);
+ BlackQuantum,pixels,exception);
count=WriteBlob(image,length,pixels);
if (count != (ssize_t) length)
break;
@@ -1545,7 +1547,7 @@
(void) CloseBlob(image);
AppendImageFormat("A",image->filename);
status=OpenBlob(image_info,image,scene == 0 ? WriteBinaryBlobMode :
- AppendBinaryBlobMode,&image->exception);
+ AppendBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
for (y=0; y < (ssize_t) image->rows; y++)
@@ -1553,12 +1555,11 @@
register const Quantum
*restrict p;
- p=GetVirtualPixels(image,0,y,image->columns,1,
- &image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
length=ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
- AlphaQuantum,pixels,&image->exception);
+ AlphaQuantum,pixels,exception);
count=WriteBlob(image,length,pixels);
if (count != (ssize_t) length)
break;
diff --git a/coders/debug.c b/coders/debug.c
index 1fb6753..b287e6c 100644
--- a/coders/debug.c
+++ b/coders/debug.c
@@ -72,7 +72,7 @@
Forward declarations.
*/
static MagickBooleanType
- WriteDEBUGImage(const ImageInfo *,Image *);
+ WriteDEBUGImage(const ImageInfo *,Image *,ExceptionInfo *);
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -152,7 +152,7 @@
% The format of the WriteDEBUGImage method is:
%
% MagickBooleanType WriteDEBUGImage(const ImageInfo *image_info,
-% Image *image)
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -160,9 +160,11 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
static MagickBooleanType WriteDEBUGImage(const ImageInfo *image_info,
- Image *image)
+ Image *image,ExceptionInfo *exception)
{
char
buffer[MaxTextExtent],
@@ -196,7 +198,7 @@
assert(image->signature == MagickSignature);
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
- status=OpenBlob(image_info,image,WriteBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBlobMode,exception);
if (status == MagickFalse)
return(status);
scene=0;
@@ -216,7 +218,7 @@
GetPixelInfo(image,&pixel);
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
for (x=0; x < (ssize_t) image->columns; x++)
diff --git a/coders/dib.c b/coders/dib.c
index 658a7ac..e4e1f04 100644
--- a/coders/dib.c
+++ b/coders/dib.c
@@ -111,7 +111,7 @@
Forward declarations.
*/
static MagickBooleanType
- WriteDIBImage(const ImageInfo *,Image *);
+ WriteDIBImage(const ImageInfo *,Image *,ExceptionInfo *);
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -952,7 +952,8 @@
%
% The format of the WriteDIBImage method is:
%
-% MagickBooleanType WriteDIBImage(const ImageInfo *image_info,Image *image)
+% MagickBooleanType WriteDIBImage(const ImageInfo *image_info,
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -960,8 +961,11 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
-static MagickBooleanType WriteDIBImage(const ImageInfo *image_info,Image *image)
+static MagickBooleanType WriteDIBImage(const ImageInfo *image_info,Image *image,
+ ExceptionInfo *exception)
{
DIBInfo
dib_info;
@@ -998,7 +1002,7 @@
assert(image->signature == MagickSignature);
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
/*
@@ -1022,7 +1026,7 @@
dib_info.bits_per_pixel=8;
if (image_info->depth > 8)
dib_info.bits_per_pixel=16;
- if (IsImageMonochrome(image,&image->exception) != MagickFalse)
+ if (IsImageMonochrome(image,exception) != MagickFalse)
dib_info.bits_per_pixel=1;
dib_info.number_colors=(dib_info.bits_per_pixel == 16) ? 0 :
(1UL << dib_info.bits_per_pixel);
@@ -1075,7 +1079,7 @@
*/
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
q=pixels+(image->rows-y-1)*bytes_per_line;
@@ -1115,7 +1119,7 @@
*/
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
q=pixels+(image->rows-y-1)*bytes_per_line;
@@ -1142,7 +1146,7 @@
*/
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
q=pixels+(image->rows-y-1)*bytes_per_line;
@@ -1174,7 +1178,7 @@
*/
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
q=pixels+(image->rows-y-1)*bytes_per_line;
diff --git a/coders/dpx.c b/coders/dpx.c
index a4155c0..e2c0237 100644
--- a/coders/dpx.c
+++ b/coders/dpx.c
@@ -306,7 +306,7 @@
Forward declaractions.
*/
static MagickBooleanType
- WriteDPXImage(const ImageInfo *,Image *);
+ WriteDPXImage(const ImageInfo *,Image *,ExceptionInfo *);
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -1221,7 +1221,8 @@
%
% The format of the WriteDPXImage method is:
%
-% MagickBooleanType WriteDPXImage(const ImageInfo *image_info,Image *image)
+% MagickBooleanType WriteDPXImage(const ImageInfo *image_info,
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -1229,6 +1230,8 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
static inline const char *GetDPXProperty(const ImageInfo *image_info,
@@ -1272,7 +1275,8 @@
return(value);
}
-static MagickBooleanType WriteDPXImage(const ImageInfo *image_info,Image *image)
+static MagickBooleanType WriteDPXImage(const ImageInfo *image_info,Image *image,
+ ExceptionInfo *exception)
{
const char
*value;
@@ -1307,15 +1311,15 @@
register ssize_t
i;
+ size_t
+ extent;
+
ssize_t
count,
horizontal_factor,
vertical_factor,
y;
- size_t
- extent;
-
time_t
seconds;
@@ -1355,7 +1359,7 @@
((horizontal_factor == 2) || (vertical_factor == 2)))
if ((image->columns % 2) != 0)
image->columns++;
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
/*
@@ -1469,7 +1473,7 @@
dpx.image.image_element[i].descriptor=RGBAComponentType;
if ((image_info->type != TrueColorType) &&
(image->matte == MagickFalse) &&
- (IsImageGray(image,&image->exception) != MagickFalse))
+ (IsImageGray(image,exception) != MagickFalse))
dpx.image.image_element[i].descriptor=LumaComponentType;
break;
}
@@ -1773,7 +1777,7 @@
count=WriteBlobByte(image,0x00);
if (count != 1)
{
- ThrowFileException(&image->exception,FileOpenError,"UnableToWriteFile",
+ ThrowFileException(exception,FileOpenError,"UnableToWriteFile",
image->filename);
break;
}
@@ -1801,7 +1805,7 @@
image->depth,MagickTrue);
if ((image_info->type != UndefinedType) &&
(image_info->type != TrueColorType) && (image->matte == MagickFalse) &&
- (IsImageGray(image,&image->exception) != MagickFalse))
+ (IsImageGray(image,exception) != MagickFalse))
{
quantum_type=GrayQuantum;
extent=GetBytesPerRow(image->columns,1UL,image->depth,MagickTrue);
@@ -1809,11 +1813,11 @@
pixels=GetQuantumPixels(quantum_info);
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
(void) ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
- quantum_type,pixels,&image->exception);
+ quantum_type,pixels,exception);
count=WriteBlob(image,extent,pixels);
if (count != (ssize_t) extent)
break;
diff --git a/coders/ept.c b/coders/ept.c
index 964bfa3..2d99c4e 100644
--- a/coders/ept.c
+++ b/coders/ept.c
@@ -91,7 +91,7 @@
Forward declarations.
*/
static MagickBooleanType
- WriteEPTImage(const ImageInfo *,Image *);
+ WriteEPTImage(const ImageInfo *,Image *,ExceptionInfo *);
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -350,7 +350,8 @@
%
% The format of the WriteEPTImage method is:
%
-% MagickBooleanType WriteEPTImage(const ImageInfo *image_info,Image *image)
+% MagickBooleanType WriteEPTImage(const ImageInfo *image_info,
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -358,8 +359,11 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
-static MagickBooleanType WriteEPTImage(const ImageInfo *image_info,Image *image)
+static MagickBooleanType WriteEPTImage(const ImageInfo *image_info,Image *image,
+ ExceptionInfo *exception)
{
char
filename[MaxTextExtent];
@@ -385,10 +389,10 @@
assert(image->signature == MagickSignature);
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
- write_image=CloneImage(image,0,0,MagickTrue,&image->exception);
+ write_image=CloneImage(image,0,0,MagickTrue,exception);
if (write_image == (Image *) NULL)
return(MagickFalse);
write_info=CloneImageInfo(image_info);
@@ -400,12 +404,12 @@
(void) ResetMagickMemory(&ept_info,0,sizeof(ept_info));
ept_info.magick=0xc6d3d0c5ul;
ept_info.postscript=(unsigned char *) ImageToBlob(write_info,write_image,
- &ept_info.postscript_length,&image->exception);
+ &ept_info.postscript_length,exception);
write_image=DestroyImage(write_image);
write_info=DestroyImageInfo(write_info);
if (ept_info.postscript == (void *) NULL)
return(MagickFalse);
- write_image=CloneImage(image,0,0,MagickTrue,&image->exception);
+ write_image=CloneImage(image,0,0,MagickTrue,exception);
if (write_image == (Image *) NULL)
return(MagickFalse);
write_info=CloneImageInfo(image_info);
@@ -424,13 +428,13 @@
EPT preview requires that the image is colormapped.
*/
GetQuantizeInfo(&quantize_info);
- quantize_info.dither=IsPaletteImage(write_image,&image->exception) ==
- MagickFalse ? MagickTrue : MagickFalse;
+ quantize_info.dither=IsPaletteImage(write_image,exception) == MagickFalse
+ ? MagickTrue : MagickFalse;
(void) QuantizeImage(&quantize_info,write_image);
}
write_info->compression=NoCompression;
ept_info.tiff=(unsigned char *) ImageToBlob(write_info,write_image,
- &ept_info.tiff_length,&image->exception);
+ &ept_info.tiff_length,exception);
write_image=DestroyImage(write_image);
write_info=DestroyImageInfo(write_info);
if (ept_info.tiff == (void *) NULL)
diff --git a/coders/exr.c b/coders/exr.c
index 7cd528c..b41c039 100644
--- a/coders/exr.c
+++ b/coders/exr.c
@@ -65,7 +65,7 @@
Forward declarations.
*/
static MagickBooleanType
- WriteEXRImage(const ImageInfo *,Image *);
+ WriteEXRImage(const ImageInfo *,Image *,ExceptionInfo *);
#endif
/*
@@ -331,7 +331,8 @@
%
% The format of the WriteEXRImage method is:
%
-% MagickBooleanType WriteEXRImage(const ImageInfo *image_info,Image *image)
+% MagickBooleanType WriteEXRImage(const ImageInfo *image_info,
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -339,8 +340,11 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
-static MagickBooleanType WriteEXRImage(const ImageInfo *image_info,Image *image)
+static MagickBooleanType WriteEXRImage(const ImageInfo *image_info,Image *image,
+ ExceptionInfo *exception)
{
ImageInfo
*write_info;
@@ -381,7 +385,7 @@
assert(image->signature == MagickSignature);
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
write_info=CloneImageInfo(image_info);
@@ -414,7 +418,7 @@
ImfDeleteHeader(hdr_info);
if (file == (ImfOutputFile *) NULL)
{
- ThrowFileException(&image->exception,BlobError,"UnableToOpenBlob",
+ ThrowFileException(exception,BlobError,"UnableToOpenBlob",
ImfErrorMessage());
write_info=DestroyImageInfo(write_info);
return(MagickFalse);
@@ -427,7 +431,7 @@
}
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
for (x=0; x < (ssize_t) image->columns; x++)
diff --git a/coders/fax.c b/coders/fax.c
index 4490420..8b89bb5 100644
--- a/coders/fax.c
+++ b/coders/fax.c
@@ -64,7 +64,7 @@
Forward declarations.
*/
static MagickBooleanType
- WriteFAXImage(const ImageInfo *,Image *);
+ WriteFAXImage(const ImageInfo *,Image *,ExceptionInfo *);
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -284,7 +284,8 @@
%
% The format of the WriteFAXImage method is:
%
-% MagickBooleanType WriteFAXImage(const ImageInfo *image_info,Image *image)
+% MagickBooleanType WriteFAXImage(const ImageInfo *image_info,
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -292,8 +293,11 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
-static MagickBooleanType WriteFAXImage(const ImageInfo *image_info,Image *image)
+static MagickBooleanType WriteFAXImage(const ImageInfo *image_info,Image *image,
+ ExceptionInfo *exception)
{
ImageInfo
*write_info;
@@ -313,7 +317,7 @@
assert(image->signature == MagickSignature);
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
write_info=CloneImageInfo(image_info);
diff --git a/coders/fits.c b/coders/fits.c
index 9058fc6..3a0df6a 100644
--- a/coders/fits.c
+++ b/coders/fits.c
@@ -76,7 +76,7 @@
Forward declarations.
*/
static MagickBooleanType
- WriteFITSImage(const ImageInfo *,Image *);
+ WriteFITSImage(const ImageInfo *,Image *,ExceptionInfo *);
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -585,7 +585,7 @@
% The format of the WriteFITSImage method is:
%
% MagickBooleanType WriteFITSImage(const ImageInfo *image_info,
-% Image *image)
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -593,9 +593,11 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
static MagickBooleanType WriteFITSImage(const ImageInfo *image_info,
- Image *image)
+ Image *image,ExceptionInfo *exception)
{
char
header[FITSBlocksize],
@@ -630,7 +632,7 @@
assert(image->signature == MagickSignature);
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
if (IsRGBColorspace(image->colorspace) == MagickFalse)
@@ -660,7 +662,7 @@
(void) strncpy(fits_info+offset,header,strlen(header));
offset+=80;
(void) FormatLocaleString(header,FITSBlocksize,"NAXIS = %10lu",
- IsImageGray(image,&image->exception) != MagickFalse ? 2UL : 3UL);
+ IsImageGray(image,exception) != MagickFalse ? 2UL : 3UL);
(void) strncpy(fits_info+offset,header,strlen(header));
offset+=80;
(void) FormatLocaleString(header,FITSBlocksize,"NAXIS1 = %10lu",
@@ -671,7 +673,7 @@
(unsigned long) image->rows);
(void) strncpy(fits_info+offset,header,strlen(header));
offset+=80;
- if (IsImageGray(image,&image->exception) == MagickFalse)
+ if (IsImageGray(image,exception) == MagickFalse)
{
(void) FormatLocaleString(header,FITSBlocksize,
"NAXIS3 = %10lu",3UL);
@@ -710,16 +712,16 @@
Convert image to fits scale PseudoColor class.
*/
pixels=GetQuantumPixels(quantum_info);
- if (IsImageGray(image,&image->exception) != MagickFalse)
+ if (IsImageGray(image,exception) != MagickFalse)
{
length=GetQuantumExtent(image,quantum_info,GrayQuantum);
for (y=(ssize_t) image->rows-1; y >= 0; y--)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
length=ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
- GrayQuantum,pixels,&image->exception);
+ GrayQuantum,pixels,exception);
if (image->depth == 16)
SetFITSUnsignedPixels(image->columns,image->depth,pixels);
if (((image->depth == 32) || (image->depth == 64)) &&
@@ -739,11 +741,11 @@
length=GetQuantumExtent(image,quantum_info,RedQuantum);
for (y=(ssize_t) image->rows-1; y >= 0; y--)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
length=ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
- RedQuantum,pixels,&image->exception);
+ RedQuantum,pixels,exception);
if (image->depth == 16)
SetFITSUnsignedPixels(image->columns,image->depth,pixels);
if (((image->depth == 32) || (image->depth == 64)) &&
@@ -760,11 +762,11 @@
length=GetQuantumExtent(image,quantum_info,GreenQuantum);
for (y=(ssize_t) image->rows-1; y >= 0; y--)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
length=ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
- GreenQuantum,pixels,&image->exception);
+ GreenQuantum,pixels,exception);
if (image->depth == 16)
SetFITSUnsignedPixels(image->columns,image->depth,pixels);
if (((image->depth == 32) || (image->depth == 64)) &&
@@ -781,11 +783,11 @@
length=GetQuantumExtent(image,quantum_info,BlueQuantum);
for (y=(ssize_t) image->rows-1; y >= 0; y--)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
length=ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
- BlueQuantum,pixels,&image->exception);
+ BlueQuantum,pixels,exception);
if (image->depth == 16)
SetFITSUnsignedPixels(image->columns,image->depth,pixels);
if (((image->depth == 32) || (image->depth == 64)) &&
diff --git a/coders/fpx.c b/coders/fpx.c
index 144c9f6..a91dac2 100644
--- a/coders/fpx.c
+++ b/coders/fpx.c
@@ -80,7 +80,7 @@
Forward declarations.
*/
static MagickBooleanType
- WriteFPXImage(const ImageInfo *,Image *);
+ WriteFPXImage(const ImageInfo *,Image *,ExceptionInfo *);
#endif
/*
@@ -578,7 +578,8 @@
%
% The format of the WriteFPXImage method is:
%
-% MagickBooleanType WriteFPXImage(const ImageInfo *image_info,Image *image)
+% MagickBooleanType WriteFPXImage(const ImageInfo *image_info,
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -586,6 +587,8 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
static void ColorTwistMultiply(FPXColorTwistMatrix first,
@@ -769,7 +772,8 @@
*color_twist=result;
}
-static MagickBooleanType WriteFPXImage(const ImageInfo *image_info,Image *image)
+static MagickBooleanType WriteFPXImage(const ImageInfo *image_info,Image *image,
+ ExceptionInfo *exception)
{
FPXBackground
background_color;
@@ -843,7 +847,7 @@
assert(image->signature == MagickSignature);
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
(void) CloseBlob(image);
@@ -863,7 +867,7 @@
if (image->matte != MagickFalse)
colorspace.numberOfComponents=4;
if ((image_info->type != TrueColorType) &&
- IsImageGray(image,&image->exception))
+ (IsImageGray(image,exception) != MagickFalse))
{
colorspace.numberOfComponents=1;
colorspace.theComponents[0].myColor=MONOCHROME;
@@ -989,11 +993,11 @@
quantum_type=GrayQuantum;
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
length=ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
- quantum_type,pixels,&image->exception);
+ quantum_type,pixels,exception);
fpx_status=FPX_WriteImageLine(flashpix,&fpx_info);
if (fpx_status != FPX_OK)
break;
diff --git a/coders/gif.c b/coders/gif.c
index def3599..2f758f3 100644
--- a/coders/gif.c
+++ b/coders/gif.c
@@ -134,7 +134,7 @@
GetNextLZWCode(LZWInfo *,const size_t);
static MagickBooleanType
- WriteGIFImage(const ImageInfo *,Image *);
+ WriteGIFImage(const ImageInfo *,Image *,ExceptionInfo *);
static ssize_t
ReadBlobBlock(Image *,unsigned char *);
@@ -1433,7 +1433,8 @@
%
% The format of the WriteGIFImage method is:
%
-% MagickBooleanType WriteGIFImage(const ImageInfo *image_info,Image *image)
+% MagickBooleanType WriteGIFImage(const ImageInfo *image_info,
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -1441,8 +1442,11 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
-static MagickBooleanType WriteGIFImage(const ImageInfo *image_info,Image *image)
+static MagickBooleanType WriteGIFImage(const ImageInfo *image_info,Image *image,
+ ExceptionInfo *exception)
{
Image
*next_image;
@@ -1494,7 +1498,7 @@
assert(image->signature == MagickSignature);
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
/*
@@ -1557,7 +1561,7 @@
if (IsRGBColorspace(image->colorspace) == MagickFalse)
(void) TransformImageColorspace(image,RGBColorspace);
opacity=(-1);
- if (IsImageOpaque(image,&image->exception) != MagickFalse)
+ if (IsImageOpaque(image,exception) != MagickFalse)
{
if ((image->storage_class == DirectClass) || (image->colors > 256))
(void) SetImageType(image,PaletteType);
diff --git a/coders/gray.c b/coders/gray.c
index c9d6e5e..24ccac5 100644
--- a/coders/gray.c
+++ b/coders/gray.c
@@ -67,7 +67,7 @@
Forward declarations.
*/
static MagickBooleanType
- WriteGRAYImage(const ImageInfo *,Image *);
+ WriteGRAYImage(const ImageInfo *,Image *,ExceptionInfo *);
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -356,7 +356,7 @@
% The format of the WriteGRAYImage method is:
%
% MagickBooleanType WriteGRAYImage(const ImageInfo *image_info,
-% Image *image)
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -364,9 +364,11 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
static MagickBooleanType WriteGRAYImage(const ImageInfo *image_info,
- Image *image)
+ Image *image,ExceptionInfo *exception)
{
MagickBooleanType
status;
@@ -399,7 +401,7 @@
assert(image->signature == MagickSignature);
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
scene=0;
@@ -420,11 +422,11 @@
register const Quantum
*restrict p;
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
length=ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
- quantum_type,pixels,&image->exception);
+ quantum_type,pixels,exception);
count=WriteBlob(image,length,pixels);
if (count != (ssize_t) length)
break;
diff --git a/coders/hdr.c b/coders/hdr.c
index 9647afa..515a70b 100644
--- a/coders/hdr.c
+++ b/coders/hdr.c
@@ -66,7 +66,7 @@
Forward declarations.
*/
static MagickBooleanType
- WriteHDRImage(const ImageInfo *,Image *);
+ WriteHDRImage(const ImageInfo *,Image *,ExceptionInfo *);
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -568,7 +568,7 @@
% The format of the WriteHDRImage method is:
%
% MagickBooleanType WriteHDRImage(const ImageInfo *image_info,
-% Image *image)
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -642,7 +642,8 @@
return(p);
}
-static MagickBooleanType WriteHDRImage(const ImageInfo *image_info,Image *image)
+static MagickBooleanType WriteHDRImage(const ImageInfo *image_info,Image *image,
+ ExceptionInfo *exception)
{
char
header[MaxTextExtent];
@@ -680,7 +681,7 @@
assert(image->signature == MagickSignature);
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
if (IsRGBColorspace(image->colorspace) == MagickFalse)
@@ -731,7 +732,7 @@
ThrowWriterException(ResourceLimitError,"MemoryAllocationFailed");
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
if ((image->columns >= 8) && (image->columns <= 0x7ffff))
diff --git a/coders/histogram.c b/coders/histogram.c
index 4d27635..f20d390 100644
--- a/coders/histogram.c
+++ b/coders/histogram.c
@@ -70,7 +70,7 @@
Forward declarations.
*/
static MagickBooleanType
- WriteHISTOGRAMImage(const ImageInfo *,Image *);
+ WriteHISTOGRAMImage(const ImageInfo *,Image *,ExceptionInfo *);
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -158,7 +158,7 @@
% The format of the WriteHISTOGRAMImage method is:
%
% MagickBooleanType WriteHISTOGRAMImage(const ImageInfo *image_info,
-% Image *image)
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -166,6 +166,8 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
static inline size_t MagickMax(const size_t x,const size_t y)
@@ -176,7 +178,7 @@
}
static MagickBooleanType WriteHISTOGRAMImage(const ImageInfo *image_info,
- Image *image)
+ Image *image,ExceptionInfo *exception)
{
#define HistogramDensity "256x200"
@@ -186,9 +188,6 @@
const char
*option;
- ExceptionInfo
- *exception;
-
Image
*histogram_image;
@@ -240,10 +239,10 @@
else
(void) ParseAbsoluteGeometry(image_info->density,&geometry);
histogram_image=CloneImage(image,geometry.width,geometry.height,MagickTrue,
- &image->exception);
+ exception);
if (histogram_image == (Image *) NULL)
ThrowWriterException(ResourceLimitError,"MemoryAllocationFailed");
- (void) SetImageStorageClass(histogram_image,DirectClass,&image->exception);
+ (void) SetImageStorageClass(histogram_image,DirectClass,exception);
/*
Allocate histogram count arrays.
*/
@@ -262,7 +261,7 @@
(void) ResetMagickMemory(histogram,0,length*sizeof(*histogram));
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
for (x=0; x < (ssize_t) image->columns; x++)
@@ -293,9 +292,8 @@
/*
Initialize histogram image.
*/
- exception=(&image->exception);
(void) QueryColorDatabase("#000000",&histogram_image->background_color,
- &image->exception);
+ exception);
(void) SetImageBackgroundColor(histogram_image);
for (x=0; x < (ssize_t) histogram_image->columns; x++)
{
@@ -363,9 +361,9 @@
char
*property;
- (void) GetNumberColors(image,file,&image->exception);
+ (void) GetNumberColors(image,file,exception);
(void) fclose(file);
- property=FileToString(filename,~0UL,&image->exception);
+ property=FileToString(filename,~0UL,exception);
if (property != (char *) NULL)
{
(void) SetImageProperty(histogram_image,"comment",property);
@@ -380,11 +378,11 @@
(void) CopyMagickString(histogram_image->filename,image_info->filename,
MaxTextExtent);
write_info=CloneImageInfo(image_info);
- (void) SetImageInfo(write_info,1,&image->exception);
+ (void) SetImageInfo(write_info,1,exception);
if (LocaleCompare(write_info->magick,"HISTOGRAM") == 0)
(void) FormatLocaleString(histogram_image->filename,MaxTextExtent,
"miff:%s",write_info->filename);
- status=WriteImage(write_info,histogram_image,&image->exception);
+ status=WriteImage(write_info,histogram_image,exception);
histogram_image=DestroyImage(histogram_image);
write_info=DestroyImageInfo(write_info);
return(status);
diff --git a/coders/hrz.c b/coders/hrz.c
index 92dc674..91b2f67 100644
--- a/coders/hrz.c
+++ b/coders/hrz.c
@@ -64,7 +64,7 @@
Forward declarations.
*/
static MagickBooleanType
- WriteHRZImage(const ImageInfo *,Image *);
+ WriteHRZImage(const ImageInfo *,Image *,ExceptionInfo *);
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -253,7 +253,8 @@
%
% The format of the WriteHRZImage method is:
%
-% MagickBooleanType WriteHRZImage(const ImageInfo *image_info,Image *image)
+% MagickBooleanType WriteHRZImage(const ImageInfo *image_info,
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -261,8 +262,11 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
-static MagickBooleanType WriteHRZImage(const ImageInfo *image_info,Image *image)
+static MagickBooleanType WriteHRZImage(const ImageInfo *image_info,Image *image,
+ ExceptionInfo *exception)
{
Image
*hrz_image;
@@ -295,11 +299,10 @@
assert(image->signature == MagickSignature);
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
- hrz_image=ResizeImage(image,256,240,image->filter,image->blur,
- &image->exception);
+ hrz_image=ResizeImage(image,256,240,image->filter,image->blur,exception);
if (hrz_image == (Image *) NULL)
return(MagickFalse);
if (IsRGBColorspace(hrz_image->colorspace) == MagickFalse)
@@ -319,7 +322,7 @@
*/
for (y=0; y < (ssize_t) hrz_image->rows; y++)
{
- p=GetVirtualPixels(hrz_image,0,y,hrz_image->columns,1,&image->exception);
+ p=GetVirtualPixels(hrz_image,0,y,hrz_image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
q=pixels;
diff --git a/coders/html.c b/coders/html.c
index 7111467..6bcb45b 100644
--- a/coders/html.c
+++ b/coders/html.c
@@ -65,7 +65,7 @@
Forward declarations.
*/
static MagickBooleanType
- WriteHTMLImage(const ImageInfo *,Image *);
+ WriteHTMLImage(const ImageInfo *,Image *,ExceptionInfo *);
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -197,7 +197,8 @@
%
% The format of the WriteHTMLImage method is:
%
-% MagickBooleanType WriteHTMLImage(const ImageInfo *image_info,Image *image)
+% MagickBooleanType WriteHTMLImage(const ImageInfo *image_info,
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -205,10 +206,11 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
%
*/
static MagickBooleanType WriteHTMLImage(const ImageInfo *image_info,
- Image *image)
+ Image *image,ExceptionInfo *exception)
{
char
basename[MaxTextExtent],
@@ -242,7 +244,7 @@
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",
image_info->filename);
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
(void) CloseBlob(image);
@@ -287,7 +289,7 @@
/*
Open output image file.
*/
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
/*
@@ -384,7 +386,7 @@
next=GetNextImageInList(image);
image->next=NewImageList();
(void) CopyMagickString(image->magick,"PNG",MaxTextExtent);
- (void) WriteImage(write_info,image,&image->exception);
+ (void) WriteImage(write_info,image,exception);
image->next=next;
/*
Determine image map filename.
@@ -396,7 +398,7 @@
/*
Open image map.
*/
- status=OpenBlob(write_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(write_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
write_info=DestroyImageInfo(write_info);
diff --git a/coders/icon.c b/coders/icon.c
index 6a18c0f..0c1efe9 100644
--- a/coders/icon.c
+++ b/coders/icon.c
@@ -140,7 +140,7 @@
Forward declaractions.
*/
static MagickBooleanType
- WriteICONImage(const ImageInfo *,Image *);
+ WriteICONImage(const ImageInfo *,Image *,ExceptionInfo *);
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -751,7 +751,7 @@
% The format of the WriteICONImage method is:
%
% MagickBooleanType WriteICONImage(const ImageInfo *image_info,
-% Image *image)
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -759,9 +759,11 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
static MagickBooleanType WriteICONImage(const ImageInfo *image_info,
- Image *image)
+ Image *image,ExceptionInfo *exception)
{
IconFile
icon_file;
@@ -809,7 +811,7 @@
assert(image != (Image *) NULL);
assert(image->signature == MagickSignature);
(void) LogMagickEvent(CoderEvent,GetMagickModule(),"%s",image->filename);
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
scene=0;
@@ -867,13 +869,13 @@
/*
Icon image encoded as a compressed PNG image.
*/
- write_image=CloneImage(next,0,0,MagickTrue,&image->exception);
+ write_image=CloneImage(next,0,0,MagickTrue,exception);
if (write_image == (Image *) NULL)
return(MagickFalse);
write_info=CloneImageInfo(image_info);
(void) CopyMagickString(write_info->filename,"PNG:",MaxTextExtent);
png=(unsigned char *) ImageToBlob(write_info,write_image,&length,
- &image->exception);
+ exception);
write_image=DestroyImage(write_image);
write_info=DestroyImageInfo(write_info);
if (png == (unsigned char *) NULL)
@@ -900,7 +902,7 @@
icon_info.offset_bits=icon_info.file_size;
icon_info.compression=BI_RGB;
if ((next->storage_class != DirectClass) && (next->colors > 256))
- (void) SetImageStorageClass(next,DirectClass,&next->exception);
+ (void) SetImageStorageClass(next,DirectClass,exception);
if (next->storage_class == DirectClass)
{
/*
@@ -929,7 +931,7 @@
icon_info.number_colors=one << icon_info.bits_per_pixel;
if (icon_info.number_colors < next->colors)
{
- (void) SetImageStorageClass(next,DirectClass,&next->exception);
+ (void) SetImageStorageClass(next,DirectClass,exception);
icon_info.number_colors=0;
icon_info.bits_per_pixel=(unsigned short) 24;
icon_info.compression=(size_t) BI_RGB;
@@ -998,7 +1000,7 @@
*/
for (y=0; y < (ssize_t) next->rows; y++)
{
- p=GetVirtualPixels(next,0,y,next->columns,1,&next->exception);
+ p=GetVirtualPixels(next,0,y,next->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
q=pixels+(next->rows-y-1)*bytes_per_line;
@@ -1039,7 +1041,7 @@
*/
for (y=0; y < (ssize_t) next->rows; y++)
{
- p=GetVirtualPixels(next,0,y,next->columns,1,&next->exception);
+ p=GetVirtualPixels(next,0,y,next->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
q=pixels+(next->rows-y-1)*bytes_per_line;
@@ -1076,7 +1078,7 @@
*/
for (y=0; y < (ssize_t) next->rows; y++)
{
- p=GetVirtualPixels(next,0,y,next->columns,1,&next->exception);
+ p=GetVirtualPixels(next,0,y,next->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
q=pixels+(next->rows-y-1)*bytes_per_line;
@@ -1102,7 +1104,7 @@
*/
for (y=0; y < (ssize_t) next->rows; y++)
{
- p=GetVirtualPixels(next,0,y,next->columns,1,&next->exception);
+ p=GetVirtualPixels(next,0,y,next->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
q=pixels+(next->rows-y-1)*bytes_per_line;
@@ -1193,7 +1195,7 @@
scanline_pad=(((next->columns+31) & ~31)-next->columns) >> 3;
for (y=((ssize_t) next->rows - 1); y >= 0; y--)
{
- p=GetVirtualPixels(next,0,y,next->columns,1,&next->exception);
+ p=GetVirtualPixels(next,0,y,next->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
bit=0;
diff --git a/coders/info.c b/coders/info.c
index 7d6636b..f750cea 100644
--- a/coders/info.c
+++ b/coders/info.c
@@ -65,7 +65,7 @@
Forward declarations.
*/
static MagickBooleanType
- WriteINFOImage(const ImageInfo *,Image *);
+ WriteINFOImage(const ImageInfo *,Image *,ExceptionInfo *);
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -144,7 +144,7 @@
% The format of the WriteINFOImage method is:
%
% MagickBooleanType WriteINFOImage(const ImageInfo *image_info,
-% Image *image)
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -152,9 +152,11 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
static MagickBooleanType WriteINFOImage(const ImageInfo *image_info,
- Image *image)
+ Image *image,ExceptionInfo *exception)
{
const char
*format;
@@ -174,7 +176,7 @@
assert(image->signature == MagickSignature);
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
- status=OpenBlob(image_info,image,WriteBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBlobMode,exception);
if (status == MagickFalse)
return(status);
scene=0;
@@ -188,7 +190,7 @@
image->magick_columns=image->columns;
image->magick_rows=image->rows;
(void) IdentifyImage(image,GetBlobFileHandle(image),
- image_info->verbose,&image->exception);
+ image_info->verbose,exception);
}
else
{
diff --git a/coders/ipl.c b/coders/ipl.c
index 5582186..bf69945 100644
--- a/coders/ipl.c
+++ b/coders/ipl.c
@@ -82,7 +82,7 @@
} IPLInfo;
static MagickBooleanType
- WriteIPLImage(const ImageInfo *,Image *);
+ WriteIPLImage(const ImageInfo *,Image *,ExceptionInfo *);
void increase (void *pixel, int byteType){
switch(byteType){
@@ -471,35 +471,35 @@
}
/*
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- % %
- % %
- % %
- % W r i t e I P L I m a g e %
- % %
- % %
- % %
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- %
- % WriteIPLImage() writes an image to a file in Scanalytics IPLabimage format.
- %
- % The format of the WriteIPLImage method is:
- %
- % MagickBooleanType WriteIPLImage(const ImageInfo *image_info,Image *image)
- %
- % A description of each parameter follows.
- %
- % o image_info: The image info.
- %
- % o image: The image.
- %
- */
-
-static MagickBooleanType WriteIPLImage(const ImageInfo *image_info,Image *image)
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% %
+% %
+% %
+% W r i t e I P L I m a g e %
+% %
+% %
+% %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% WriteIPLImage() writes an image to a file in Scanalytics IPLabimage format.
+%
+% The format of the WriteIPLImage method is:
+%
+% MagickBooleanType WriteIPLImage(const ImageInfo *image_info,Image *image)
+% Image *image,ExceptionInfo *exception)
+%
+% A description of each parameter follows.
+%
+% o image_info: The image info.
+%
+% o image: The image.
+%
+% o exception: return any errors or warnings in this structure.
+%
+*/
+static MagickBooleanType WriteIPLImage(const ImageInfo *image_info,Image *image,
+ ExceptionInfo *exception)
{
- ExceptionInfo
- *exception;
-
IPLInfo
ipl_info;
@@ -530,7 +530,7 @@
assert(image->signature == MagickSignature);
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
scene=0;
@@ -538,7 +538,7 @@
quantum_info=AcquireQuantumInfo(image_info, image);
if ((quantum_info->format == UndefinedQuantumFormat) &&
- (IsHighDynamicRangeImage(image,&image->exception) != MagickFalse))
+ (IsHighDynamicRangeImage(image,exception) != MagickFalse))
SetQuantumFormat(image,quantum_info,FloatingPointQuantumFormat);
switch(quantum_info->depth){
case 8:
@@ -612,7 +612,6 @@
(void) WriteBlobLong(image, ipl_info.time);
(void) WriteBlobLong(image, ipl_info.byteType);
- exception=(&image->exception);
do
{
/*
@@ -626,7 +625,7 @@
if (p == (const Quantum *) NULL)
break;
(void) ExportQuantumPixels(image,(CacheView *) NULL, quantum_info,
- GrayQuantum, pixels,&image->exception);
+ GrayQuantum, pixels,exception);
(void) WriteBlob(image, image->columns*image->depth/8, pixels);
}
@@ -638,26 +637,26 @@
if (p == (const Quantum *) NULL)
break;
(void) ExportQuantumPixels(image,(CacheView *) NULL, quantum_info,
- RedQuantum, pixels,&image->exception);
+ RedQuantum, pixels,exception);
(void) WriteBlob(image, image->columns*image->depth/8, pixels);
}
/* Green frame */
for(y = 0; y < (ssize_t) ipl_info.height; y++){
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
(void) ExportQuantumPixels(image,(CacheView *) NULL, quantum_info,
- GreenQuantum, pixels,&image->exception);
+ GreenQuantum, pixels,exception);
(void) WriteBlob(image, image->columns*image->depth/8, pixels);
}
/* Blue frame */
for(y = 0; y < (ssize_t) ipl_info.height; y++){
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
(void) ExportQuantumPixels(image,(CacheView *) NULL, quantum_info,
- BlueQuantum, pixels,&image->exception);
+ BlueQuantum, pixels,exception);
(void) WriteBlob(image, image->columns*image->depth/8, pixels);
if (image->previous == (Image *) NULL)
{
diff --git a/coders/jbig.c b/coders/jbig.c
index bdd4422..3661af7 100644
--- a/coders/jbig.c
+++ b/coders/jbig.c
@@ -73,7 +73,7 @@
*/
#if defined(MAGICKCORE_JBIG_DELEGATE)
static MagickBooleanType
- WriteJBIGImage(const ImageInfo *,Image *);
+ WriteJBIGImage(const ImageInfo *,Image *,ExceptionInfo *);
#endif
#if defined(MAGICKCORE_JBIG_DELEGATE)
@@ -367,7 +367,8 @@
%
% The format of the WriteJBIGImage method is:
%
-% MagickBooleanType WriteJBIGImage(const ImageInfo *image_info,Image *image)
+% MagickBooleanType WriteJBIGImage(const ImageInfo *image_info,
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -375,6 +376,7 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
%
*/
@@ -388,7 +390,7 @@
}
static MagickBooleanType WriteJBIGImage(const ImageInfo *image_info,
- Image *image)
+ Image *image,ExceptionInfo *exception)
{
double
version;
@@ -431,7 +433,7 @@
assert(image->signature == MagickSignature);
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
version=InterpretLocaleValue(JBG_VERSION,(char **) NULL);
@@ -455,7 +457,7 @@
q=pixels;
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
bit=0;
diff --git a/coders/jp2.c b/coders/jp2.c
index c8667dc..cdecc62 100644
--- a/coders/jp2.c
+++ b/coders/jp2.c
@@ -105,7 +105,7 @@
*/
#if defined(MAGICKCORE_JP2_DELEGATE)
static MagickBooleanType
- WriteJP2Image(const ImageInfo *,Image *);
+ WriteJP2Image(const ImageInfo *,Image *,ExceptionInfo *);
static volatile MagickBooleanType
instantiate_jp2 = MagickFalse;
@@ -784,7 +784,8 @@
%
% The format of the WriteJP2Image method is:
%
-% MagickBooleanType WriteJP2Image(const ImageInfo *image_info,Image *image)
+% MagickBooleanType WriteJP2Image(const ImageInfo *image_info,
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -792,8 +793,11 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
-static MagickBooleanType WriteJP2Image(const ImageInfo *image_info,Image *image)
+static MagickBooleanType WriteJP2Image(const ImageInfo *image_info,Image *image,
+ ExceptionInfo *exception)
{
char
*key,
@@ -844,7 +848,7 @@
assert(image->signature == MagickSignature);
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
/*
@@ -857,7 +861,7 @@
ThrowWriterException(DelegateError,"UnableToManageJP2Stream");
number_components=image->matte ? 4UL : 3UL;
if ((image_info->type != TrueColorType) &&
- (IsImageGray(image,&image->exception) != MagickFalse))
+ (IsImageGray(image,exception) != MagickFalse))
number_components=1;
if ((image->columns != (unsigned int) image->columns) ||
(image->rows != (unsigned int) image->rows))
@@ -919,7 +923,7 @@
range=GetQuantumRange((size_t) component_info[0].prec);
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
for (x=0; x < (ssize_t) image->columns; x++)
diff --git a/coders/jpeg.c b/coders/jpeg.c
index f8782da..a3bac30 100644
--- a/coders/jpeg.c
+++ b/coders/jpeg.c
@@ -149,7 +149,7 @@
*/
#if defined(MAGICKCORE_JPEG_DELEGATE)
static MagickBooleanType
- WriteJPEGImage(const ImageInfo *,Image *);
+ WriteJPEGImage(const ImageInfo *,Image *,ExceptionInfo *);
#endif
/*
@@ -1477,7 +1477,7 @@
% The format of the WriteJPEGImage method is:
%
% MagickBooleanType WriteJPEGImage(const ImageInfo *image_info,
-% Image *image)
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows:
%
@@ -1485,6 +1485,7 @@
%
% o jpeg_image: The image.
%
+% o exception: return any errors or warnings in this structure.
%
*/
@@ -1721,7 +1722,7 @@
}
static MagickBooleanType WriteJPEGImage(const ImageInfo *image_info,
- Image *image)
+ Image *image,ExceptionInfo *exception)
{
const char
*option,
@@ -1764,7 +1765,7 @@
assert(image->signature == MagickSignature);
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
/*
@@ -1827,7 +1828,7 @@
}
}
if ((image_info->type != TrueColorType) &&
- (IsImageGray(image,&image->exception) != MagickFalse))
+ (IsImageGray(image,exception) != MagickFalse))
{
jpeg_info.input_components=1;
jpeg_info.in_color_space=JCS_GRAYSCALE;
@@ -1939,7 +1940,7 @@
*jpeg_info;
jpeg_info=CloneImageInfo(image_info);
- jpeg_image=CloneImage(image,0,0,MagickTrue,&image->exception);
+ jpeg_image=CloneImage(image,0,0,MagickTrue,exception);
if (jpeg_image != (Image *) NULL)
{
MagickSizeType
@@ -1960,7 +1961,7 @@
for (minimum=0; minimum != maximum; )
{
jpeg_image->quality=minimum+(maximum-minimum)/2;
- status=WriteJPEGImage(jpeg_info,jpeg_image);
+ status=WriteJPEGImage(jpeg_info,jpeg_image,exception);
if (GetBlobSize(jpeg_image) <= extent)
minimum=jpeg_image->quality+1;
else
@@ -1991,8 +1992,8 @@
(void) LogMagickEvent(CoderEvent,GetMagickModule(),"Quality: 100");
#else
if (image->quality < 100)
- (void) ThrowMagickException(&image->exception,GetMagickModule(),
- CoderWarning,"LosslessToLossyJPEGConversion",image->filename);
+ (void) ThrowMagickException(exception,GetMagickModule(),CoderWarning,
+ "LosslessToLossyJPEGConversion",image->filename);
else
{
int
@@ -2232,7 +2233,7 @@
register ssize_t
x;
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
q=jpeg_pixels;
@@ -2259,7 +2260,7 @@
register ssize_t
x;
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
q=jpeg_pixels;
@@ -2283,7 +2284,7 @@
register ssize_t
x;
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
q=jpeg_pixels;
@@ -2319,7 +2320,7 @@
register ssize_t
x;
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
q=jpeg_pixels;
@@ -2346,7 +2347,7 @@
register ssize_t
x;
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
q=jpeg_pixels;
@@ -2372,7 +2373,7 @@
register ssize_t
x;
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
q=jpeg_pixels;
diff --git a/coders/magick.c b/coders/magick.c
index 9a74e8c..ac121ac 100644
--- a/coders/magick.c
+++ b/coders/magick.c
@@ -13265,7 +13265,7 @@
Forward declarations.
*/
static MagickBooleanType
- WriteMAGICKImage(const ImageInfo *,Image *);
+ WriteMAGICKImage(const ImageInfo *,Image *,ExceptionInfo *);
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -13469,7 +13469,7 @@
% The format of the WriteMAGICKImage method is:
%
% MagickBooleanType WriteMAGICKImage(const ImageInfo *image_info,
-% Image *image)
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -13477,9 +13477,11 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
static MagickBooleanType WriteMAGICKImage(const ImageInfo *image_info,
- Image *image)
+ Image *image,ExceptionInfo *exception)
{
char
buffer[MaxTextExtent];
@@ -13515,9 +13517,9 @@
image_info->filename);
assert(image != (Image *) NULL);
assert(image->signature == MagickSignature);
- magick_image=CloneImage(image,0,0,MagickTrue,&image->exception);
+ magick_image=CloneImage(image,0,0,MagickTrue,exception);
if (magick_image == (Image *) NULL)
- ThrowWriterException(ResourceLimitError,image->exception.reason);
+ return(MagickFalse);
write_info=CloneImageInfo(image_info);
*write_info->filename='\0';
(void) CopyMagickString(write_info->magick,"GIF",MaxTextExtent);
@@ -13527,12 +13529,12 @@
(void) CopyMagickString(write_info->magick,"PNM",MaxTextExtent);
length*=3;
}
- blob=ImageToBlob(write_info,magick_image,&length,&image->exception);
+ blob=ImageToBlob(write_info,magick_image,&length,exception);
magick_image=DestroyImage(magick_image);
(void) DestroyImageInfo(write_info);
if (blob == (void *) NULL)
return(MagickFalse);
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
(void) WriteBlobString(image,"/*\n");
diff --git a/coders/map.c b/coders/map.c
index 0a08aee..2fa2300 100644
--- a/coders/map.c
+++ b/coders/map.c
@@ -69,7 +69,7 @@
Forward declarations.
*/
static MagickBooleanType
- WriteMAPImage(const ImageInfo *,Image *);
+ WriteMAPImage(const ImageInfo *,Image *,ExceptionInfo *);
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -321,7 +321,8 @@
%
% The format of the WriteMAPImage method is:
%
-% MagickBooleanType WriteMAPImage(const ImageInfo *image_info,Image *image)
+% MagickBooleanType WriteMAPImage(const ImageInfo *image_info,
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -329,9 +330,11 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
%
*/
-static MagickBooleanType WriteMAPImage(const ImageInfo *image_info,Image *image)
+static MagickBooleanType WriteMAPImage(const ImageInfo *image_info,Image *image,
+ ExceptionInfo *exception)
{
MagickBooleanType
status;
@@ -366,7 +369,7 @@
assert(image->signature == MagickSignature);
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
if (IsRGBColorspace(image->colorspace) == MagickFalse)
@@ -374,7 +377,7 @@
/*
Allocate colormap.
*/
- if (IsPaletteImage(image,&image->exception) == MagickFalse)
+ if (IsPaletteImage(image,exception) == MagickFalse)
(void) SetImageType(image,PaletteType);
depth=GetImageQuantumDepth(image,MagickTrue);
packet_size=(size_t) (depth/8);
@@ -414,7 +417,7 @@
*/
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
q=pixels;
diff --git a/coders/mat.c b/coders/mat.c
index c35d967..45d4765 100644
--- a/coders/mat.c
+++ b/coders/mat.c
@@ -82,7 +82,7 @@
Forward declaration.
*/
static MagickBooleanType
- WriteMATImage(const ImageInfo *,Image *);
+ WriteMATImage(const ImageInfo *,Image *,ExceptionInfo *);
/* Auto coloring method, sorry this creates some artefact inside data
@@ -1143,24 +1143,21 @@
%
% The format of the WriteMATImage method is:
%
-% unsigned int WriteMATImage(const ImageInfo *image_info,Image *image)
+% MagickBooleanType WriteMATImage(const ImageInfo *image_info,
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
-% o status: Function WriteMATImage return True if the image is written.
-% False is returned is there is a memory shortage or if the image file
-% fails to write.
-%
% o image_info: Specifies a pointer to a ImageInfo structure.
%
% o image: A pointer to an Image structure.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
-static MagickBooleanType WriteMATImage(const ImageInfo *image_info,Image *image)
+static MagickBooleanType WriteMATImage(const ImageInfo *image_info,Image *image,
+ ExceptionInfo *exception)
{
- ExceptionInfo
- *exception;
-
ssize_t y;
unsigned z;
register const Quantum *p;
@@ -1190,7 +1187,7 @@
assert(image->signature == MagickSignature);
logging=LogMagickEvent(CoderEvent,GetMagickModule(),"enter MAT");
(void) logging;
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(MagickFalse);
image->depth=8;
@@ -1217,7 +1214,7 @@
if (IsRGBColorspace(image->colorspace) == MagickFalse)
(void) TransformImageColorspace(image,RGBColorspace);
- is_gray = IsImageGray(image,&image->exception);
+ is_gray = IsImageGray(image,exception);
z = is_gray ? 0 : 3;
/*
@@ -1251,7 +1248,6 @@
/*
Store image data.
*/
- exception=(&image->exception);
quantum_info=AcquireQuantumInfo(image_info,image);
if (quantum_info == (QuantumInfo *) NULL)
ThrowWriterException(ResourceLimitError,"MemoryAllocationFailed");
@@ -1260,14 +1256,14 @@
{
for (y=0; y < (ssize_t)image->columns; y++)
{
- p=GetVirtualPixels(image,y,0,1,image->rows,&image->exception);
+ p=GetVirtualPixels(image,y,0,1,image->rows,exception);
if (p == (const Quantum *) NULL)
break;
(void) ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
z2qtype[z],pixels,exception);
(void) WriteBlob(image,image->rows,pixels);
}
- if (!SyncAuthenticPixels(image,exception))
+ if (SyncAuthenticPixels(image,exception) == MagickFalse)
break;
} while(z-- >= 2);
while(padding-->0) (void) WriteBlobByte(image,0);
diff --git a/coders/matte.c b/coders/matte.c
index 2df9a7e..f98b8e2 100644
--- a/coders/matte.c
+++ b/coders/matte.c
@@ -62,7 +62,7 @@
Forward declarations.
*/
static MagickBooleanType
- WriteMATTEImage(const ImageInfo *,Image *);
+ WriteMATTEImage(const ImageInfo *,Image *,ExceptionInfo *);
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -136,13 +136,13 @@
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% Function WriteMATTEImage() writes an image of matte bytes to a file. It
-% consists of data from the matte component of the image [0..255].
+% WriteMATTEImage() writes an image of matte bytes to a file. It consists of
+% data from the matte component of the image [0..255].
%
% The format of the WriteMATTEImage method is:
%
% MagickBooleanType WriteMATTEImage(const ImageInfo *image_info,
-% Image *image)
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -150,13 +150,12 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
static MagickBooleanType WriteMATTEImage(const ImageInfo *image_info,
- Image *image)
+ Image *image,ExceptionInfo *exception)
{
- ExceptionInfo
- *exception;
-
Image
*matte_image;
@@ -177,8 +176,7 @@
if (image->matte == MagickFalse)
ThrowWriterException(CoderError,"ImageDoesNotHaveAAlphaChannel");
- matte_image=CloneImage(image,image->columns,image->rows,MagickTrue,
- &image->exception);
+ matte_image=CloneImage(image,image->columns,image->rows,MagickTrue,exception);
if (matte_image == (Image *) NULL)
return(MagickFalse);
(void) SetImageType(matte_image,TrueColorMatteType);
@@ -186,7 +184,6 @@
/*
Convert image to matte pixels.
*/
- exception=(&image->exception);
for (y=0; y < (ssize_t) image->rows; y++)
{
p=GetVirtualPixels(image,0,y,image->columns,1,exception);
diff --git a/coders/meta.c b/coders/meta.c
index 03fbbf4..21aa2f1 100644
--- a/coders/meta.c
+++ b/coders/meta.c
@@ -63,7 +63,7 @@
Forward declarations.
*/
static MagickBooleanType
- WriteMETAImage(const ImageInfo *,Image *);
+ WriteMETAImage(const ImageInfo *,Image *,ExceptionInfo *);
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -1565,7 +1565,7 @@
% The format of the WriteMETAImage method is:
%
% MagickBooleanType WriteMETAImage(const ImageInfo *image_info,
-% Image *image)
+% Image *image,ExceptionInfo *exception)
%
% Compression code contributed by Kyle Shorter.
%
@@ -1575,6 +1575,8 @@
%
% o image: A pointer to a Image structure.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
static size_t GetIPTCStream(unsigned char **info,size_t length)
@@ -2225,7 +2227,7 @@
}
static MagickBooleanType WriteMETAImage(const ImageInfo *image_info,
- Image *image)
+ Image *image,ExceptionInfo *exception)
{
const StringInfo
*profile;
@@ -2254,7 +2256,7 @@
profile=GetImageProfile(image,"8bim");
if (profile == (StringInfo *) NULL)
ThrowWriterException(CoderError,"No8BIMDataIsAvailable");
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
(void) WriteBlob(image,GetStringInfoLength(profile),
@@ -2275,7 +2277,7 @@
profile=GetImageProfile(image,"8bim");
if (profile == (StringInfo *) NULL)
ThrowWriterException(CoderError,"No8BIMDataIsAvailable");
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
info=GetStringInfoDatum(profile);
length=GetStringInfoLength(profile);
length=GetIPTCStream(&info,length);
@@ -2293,7 +2295,7 @@
profile=GetImageProfile(image,"8bim");
if (profile == (StringInfo *) NULL)
ThrowWriterException(CoderError,"No8BIMDataIsAvailable");
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
buff=AcquireImage((ImageInfo *) NULL);
@@ -2325,7 +2327,7 @@
length=GetIPTCStream(&info,length);
if (length == 0)
ThrowWriterException(CoderError,"NoIPTCProfileAvailable");
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
buff=AcquireImage((ImageInfo *) NULL);
@@ -2350,7 +2352,7 @@
profile=GetImageProfile(image,image_info->magick);
if (profile == (StringInfo *) NULL)
ThrowWriterException(CoderError,"NoAPP1DataIsAvailable");
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
(void) WriteBlob(image,GetStringInfoLength(profile),
@@ -2367,7 +2369,7 @@
profile=GetImageProfile(image,"icc");
if (profile == (StringInfo *) NULL)
ThrowWriterException(CoderError,"NoColorProfileIsAvailable");
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
(void) WriteBlob(image,GetStringInfoLength(profile),
diff --git a/coders/miff.c b/coders/miff.c
index be93350..ce28f8d 100644
--- a/coders/miff.c
+++ b/coders/miff.c
@@ -93,7 +93,7 @@
Forward declarations.
*/
static MagickBooleanType
- WriteMIFFImage(const ImageInfo *,Image *);
+ WriteMIFFImage(const ImageInfo *,Image *,ExceptionInfo *);
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -1623,7 +1623,7 @@
% The format of the WriteMIFFImage method is:
%
% MagickBooleanType WriteMIFFImage(const ImageInfo *image_info,
-% Image *image)
+% Image *image,ExceptionInfo *exception)
%
% Compression code contributed by Kyle Shorter.
%
@@ -1633,6 +1633,8 @@
%
% o image: the image.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
static unsigned char *PopRunlengthPacket(Image *image,unsigned char *pixels,
@@ -1783,7 +1785,7 @@
}
static MagickBooleanType WriteMIFFImage(const ImageInfo *image_info,
- Image *image)
+ Image *image,ExceptionInfo *exception)
{
#if defined(MAGICKCORE_BZLIB_DELEGATE)
bz_stream
@@ -1857,7 +1859,7 @@
assert(image->signature == MagickSignature);
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
code=0;
@@ -1874,7 +1876,7 @@
ThrowWriterException(ResourceLimitError,"MemoryAllocationFailed");
if ((image->storage_class != PseudoClass) && (image->depth >= 32) &&
(quantum_info->format == UndefinedQuantumFormat) &&
- (IsHighDynamicRangeImage(image,&image->exception) != MagickFalse))
+ (IsHighDynamicRangeImage(image,exception) != MagickFalse))
{
status=SetQuantumFormat(image,quantum_info,FloatingPointQuantumFormat);
if (status == MagickFalse)
@@ -1882,12 +1884,12 @@
}
if ((image->storage_class == PseudoClass) &&
(image->colors > (size_t) (GetQuantumRange(image->depth)+1)))
- (void) SetImageStorageClass(image,DirectClass,&image->exception);
+ (void) SetImageStorageClass(image,DirectClass,exception);
if ((image->colorspace != sRGBColorspace) &&
- (IsImageGray(image,&image->exception) != MagickFalse))
+ (IsImageGray(image,exception) != MagickFalse))
{
- (void) SetImageStorageClass(image,DirectClass,&image->exception);
- (void) SetImageColorspace(image,GRAYColorspace,&image->exception);
+ (void) SetImageStorageClass(image,DirectClass,exception);
+ (void) SetImageColorspace(image,GRAYColorspace,exception);
}
compression=image->compression;
if (image_info->compression != UndefinedCompression)
@@ -2297,7 +2299,7 @@
default:
break;
}
- quantum_type=GetQuantumType(image,&image->exception);
+ quantum_type=GetQuantumType(image,exception);
pixels=GetQuantumPixels(quantum_info);
for (y=0; y < (ssize_t) image->rows; y++)
{
@@ -2309,7 +2311,7 @@
if (status == MagickFalse)
break;
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
q=pixels;
@@ -2321,7 +2323,7 @@
bzip_info.next_in=(char *) pixels;
bzip_info.avail_in=(unsigned int) (packet_size*image->columns);
(void) ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
- quantum_type,pixels,&image->exception);
+ quantum_type,pixels,exception);
do
{
bzip_info.next_out=(char *) compress_pixels;
@@ -2346,7 +2348,7 @@
lzma_info.next_in=pixels;
lzma_info.avail_in=packet_size*image->columns;
(void) ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
- quantum_type,pixels,&image->exception);
+ quantum_type,pixels,exception);
do
{
lzma_info.next_out=compress_pixels;
@@ -2371,7 +2373,7 @@
zip_info.next_in=pixels;
zip_info.avail_in=(uInt) (packet_size*image->columns);
(void) ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
- quantum_type,pixels,&image->exception);
+ quantum_type,pixels,exception);
do
{
zip_info.next_out=compress_pixels;
@@ -2415,7 +2417,7 @@
default:
{
(void) ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
- quantum_type,pixels,&image->exception);
+ quantum_type,pixels,exception);
(void) WriteBlob(image,packet_size*image->columns,pixels);
break;
}
diff --git a/coders/mono.c b/coders/mono.c
index 138b257..3395e0b 100644
--- a/coders/mono.c
+++ b/coders/mono.c
@@ -66,7 +66,7 @@
Forward declarations.
*/
static MagickBooleanType
- WriteMONOImage(const ImageInfo *,Image *);
+ WriteMONOImage(const ImageInfo *,Image *,ExceptionInfo *);
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -269,7 +269,7 @@
% The format of the WriteMONOImage method is:
%
% MagickBooleanType WriteMONOImage(const ImageInfo *image_info,
-% Image *image)
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -277,9 +277,11 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
static MagickBooleanType WriteMONOImage(const ImageInfo *image_info,
- Image *image)
+ Image *image,ExceptionInfo *exception)
{
MagickBooleanType
status;
@@ -306,7 +308,7 @@
assert(image->signature == MagickSignature);
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
if (IsRGBColorspace(image->colorspace) == MagickFalse)
@@ -317,7 +319,7 @@
(void) SetImageType(image,BilevelType);
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
bit=0;
diff --git a/coders/mpc.c b/coders/mpc.c
index 438a00f..5568e1b 100644
--- a/coders/mpc.c
+++ b/coders/mpc.c
@@ -76,7 +76,7 @@
Forward declarations.
*/
static MagickBooleanType
- WriteMPCImage(const ImageInfo *,Image *);
+ WriteMPCImage(const ImageInfo *,Image *,ExceptionInfo *);
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -1015,7 +1015,8 @@
%
% The format of the WriteMPCImage method is:
%
-% MagickBooleanType WriteMPCImage(const ImageInfo *image_info,Image *image)
+% MagickBooleanType WriteMPCImage(const ImageInfo *image_info,
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows:
%
@@ -1023,8 +1024,11 @@
%
% o image: the image.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
-static MagickBooleanType WriteMPCImage(const ImageInfo *image_info,Image *image)
+static MagickBooleanType WriteMPCImage(const ImageInfo *image_info,Image *image,
+ ExceptionInfo *exception)
{
char
buffer[MaxTextExtent],
@@ -1057,7 +1061,7 @@
assert(image->signature == MagickSignature);
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
(void) CopyMagickString(cache_filename,image->filename,MaxTextExtent);
@@ -1395,7 +1399,7 @@
Initialize persistent pixel cache.
*/
status=PersistPixelCache(image,cache_filename,MagickFalse,&offset,
- &image->exception);
+ exception);
if (status == MagickFalse)
ThrowWriterException(CacheError,"UnableToPersistPixelCache");
if (GetNextImageInList(image) == (Image *) NULL)
diff --git a/coders/mpeg.c b/coders/mpeg.c
index c733d26..b3a5f0c 100644
--- a/coders/mpeg.c
+++ b/coders/mpeg.c
@@ -65,7 +65,7 @@
Forward declarations.
*/
static MagickBooleanType
- WriteMPEGImage(const ImageInfo *image_info,Image *image);
+ WriteMPEGImage(const ImageInfo *,Image *,ExceptionInfo *);
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -354,7 +354,7 @@
% The format of the WriteMPEGImage method is:
%
% MagickBooleanType WriteMPEGImage(const ImageInfo *image_info,
-% Image *image)
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -362,6 +362,8 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
static inline double MagickMax(const double x,const double y)
@@ -453,7 +455,7 @@
}
static MagickBooleanType WriteMPEGImage(const ImageInfo *image_info,
- Image *image)
+ Image *image,ExceptionInfo *exception)
{
#define WriteMPEGIntermediateFormat "jpg"
@@ -499,14 +501,14 @@
assert(image->signature == MagickSignature);
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
(void) CloseBlob(image);
/*
Write intermediate files.
*/
- coalesce_image=CoalesceImages(image,&image->exception);
+ coalesce_image=CoalesceImages(image,exception);
if (coalesce_image == (Image *) NULL)
return(MagickFalse);
file=AcquireUniqueFileResource(basename);
@@ -544,24 +546,24 @@
(void) FormatLocaleString(previous_image,MaxTextExtent,
"%s%.20g.%s",basename,(double) p->scene,
WriteMPEGIntermediateFormat);
- frame=CloneImage(p,0,0,MagickTrue,&p->exception);
+ frame=CloneImage(p,0,0,MagickTrue,exception);
if (frame == (Image *) NULL)
break;
- status=WriteImage(write_info,frame,&image->exception);
+ status=WriteImage(write_info,frame,exception);
frame=DestroyImage(frame);
break;
}
case 1:
{
blob=(unsigned char *) FileToBlob(previous_image,~0UL,&length,
- &image->exception);
+ exception);
}
default:
{
(void) FormatLocaleString(filename,MaxTextExtent,"%s%.20g.%s",
basename,(double) p->scene,WriteMPEGIntermediateFormat);
if (length > 0)
- status=BlobToFile(filename,blob,length,&image->exception);
+ status=BlobToFile(filename,blob,length,exception);
break;
}
}
@@ -594,7 +596,7 @@
if (*coalesce_image->magick == '\0')
(void) CopyMagickString(coalesce_image->magick,image->magick,MaxTextExtent);
status=InvokeDelegate(write_info,coalesce_image,(char *) NULL,"mpeg:encode",
- &image->exception);
+ exception);
(void) FormatLocaleString(write_info->filename,MaxTextExtent,"%s.%s",
write_info->unique,coalesce_image->magick);
status=CopyDelegateFile(write_info->filename,image->filename);
diff --git a/coders/mpr.c b/coders/mpr.c
index cc7776d..993aa0f 100644
--- a/coders/mpr.c
+++ b/coders/mpr.c
@@ -56,7 +56,7 @@
Forward declarations.
*/
static MagickBooleanType
- WriteMPRImage(const ImageInfo *,Image *);
+ WriteMPRImage(const ImageInfo *,Image *,ExceptionInfo *);
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -195,7 +195,8 @@
%
% The format of the WriteMPRImage method is:
%
-% MagickBooleanType WriteMPRImage(const ImageInfo *image_info,Image *image)
+% MagickBooleanType WriteMPRImage(const ImageInfo *image_info,
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -203,8 +204,11 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
-static MagickBooleanType WriteMPRImage(const ImageInfo *image_info,Image *image)
+static MagickBooleanType WriteMPRImage(const ImageInfo *image_info,Image *image,
+ ExceptionInfo *exception)
{
MagickBooleanType
status;
@@ -215,7 +219,6 @@
assert(image->signature == MagickSignature);
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
- status=SetImageRegistry(ImageRegistryType,image->filename,image,
- &image->exception);
+ status=SetImageRegistry(ImageRegistryType,image->filename,image,exception);
return(status);
}
diff --git a/coders/msl.c b/coders/msl.c
index 0a970d1..7d05389 100644
--- a/coders/msl.c
+++ b/coders/msl.c
@@ -157,7 +157,7 @@
*/
#if defined(MAGICKCORE_XML_DELEGATE)
static MagickBooleanType
- WriteMSLImage(const ImageInfo *,Image *);
+ WriteMSLImage(const ImageInfo *,Image *,ExceptionInfo *);
static MagickBooleanType
SetMSLAttributes(MSLInfo *,const char *,const char *);
@@ -8100,7 +8100,8 @@
%
% The format of the WriteMSLImage method is:
%
-% MagickBooleanType WriteMSLImage(const ImageInfo *image_info,Image *image)
+% MagickBooleanType WriteMSLImage(const ImageInfo *image_info,
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -8108,8 +8109,11 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
-static MagickBooleanType WriteMSLImage(const ImageInfo *image_info,Image *image)
+static MagickBooleanType WriteMSLImage(const ImageInfo *image_info,Image *image,
+ ExceptionInfo *exception)
{
assert(image_info != (const ImageInfo *) NULL);
assert(image_info->signature == MagickSignature);
@@ -8118,7 +8122,7 @@
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
(void) ReferenceImage(image);
- (void) ProcessMSLScript(image_info,&image,&image->exception);
+ (void) ProcessMSLScript(image_info,&image,exception);
return(MagickTrue);
}
#endif
diff --git a/coders/mtv.c b/coders/mtv.c
index e3a2b9a..d671376 100644
--- a/coders/mtv.c
+++ b/coders/mtv.c
@@ -64,7 +64,7 @@
Forward declarations.
*/
static MagickBooleanType
- WriteMTVImage(const ImageInfo *,Image *);
+ WriteMTVImage(const ImageInfo *,Image *,ExceptionInfo *);
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -307,7 +307,8 @@
%
% The format of the WriteMTVImage method is:
%
-% MagickBooleanType WriteMTVImage(const ImageInfo *image_info,Image *image)
+% MagickBooleanType WriteMTVImage(const ImageInfo *image_info,
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -315,8 +316,11 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
-static MagickBooleanType WriteMTVImage(const ImageInfo *image_info,Image *image)
+static MagickBooleanType WriteMTVImage(const ImageInfo *image_info,Image *image,
+ ExceptionInfo *exception)
{
char
buffer[MaxTextExtent];
@@ -351,7 +355,7 @@
assert(image->signature == MagickSignature);
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
scene=0;
@@ -374,7 +378,7 @@
(void) WriteBlobString(image,buffer);
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
q=pixels;
diff --git a/coders/mvg.c b/coders/mvg.c
index c9c2ff5..36c4f44 100644
--- a/coders/mvg.c
+++ b/coders/mvg.c
@@ -61,7 +61,7 @@
Forward declarations.
*/
static MagickBooleanType
- WriteMVGImage(const ImageInfo *,Image *);
+ WriteMVGImage(const ImageInfo *,Image *,ExceptionInfo *);
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -295,7 +295,8 @@
%
% The format of the WriteMVGImage method is:
%
-% MagickBooleanType WriteMVGImage(const ImageInfo *image_info,Image *image)
+% MagickBooleanType WriteMVGImage(const ImageInfo *image_info,
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -303,8 +304,11 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
-static MagickBooleanType WriteMVGImage(const ImageInfo *image_info,Image *image)
+static MagickBooleanType WriteMVGImage(const ImageInfo *image_info,Image *image,
+ ExceptionInfo *exception)
{
const char
*value;
@@ -324,7 +328,7 @@
value=GetImageArtifact(image,"MVG");
if (value == (const char *) NULL)
ThrowWriterException(OptionError,"NoImageVectorGraphics");
- status=OpenBlob(image_info,image,WriteBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBlobMode,exception);
if (status == MagickFalse)
return(status);
(void) WriteBlob(image,strlen(value),(const unsigned char *) value);
diff --git a/coders/null.c b/coders/null.c
index 00f87e2..53d555c 100644
--- a/coders/null.c
+++ b/coders/null.c
@@ -63,7 +63,7 @@
Forward declarations.
*/
static MagickBooleanType
- WriteNULLImage(const ImageInfo *,Image *);
+ WriteNULLImage(const ImageInfo *,Image *,ExceptionInfo *);
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -227,7 +227,7 @@
% The format of the WriteNULLImage method is:
%
% MagickBooleanType WriteNULLImage(const ImageInfo *image_info,
-% Image *image)
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -235,14 +235,17 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
static MagickBooleanType WriteNULLImage(const ImageInfo *image_info,
- Image *image)
+ Image *image,ExceptionInfo *exception)
{
assert(image_info != (const ImageInfo *) NULL);
assert(image_info->signature == MagickSignature);
assert(image != (Image *) NULL);
assert(image->signature == MagickSignature);
+ assert(exception != (ExceptionInfo *) NULL);
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
return(MagickTrue);
diff --git a/coders/otb.c b/coders/otb.c
index 621650f..e35c51f 100644
--- a/coders/otb.c
+++ b/coders/otb.c
@@ -65,7 +65,7 @@
Forward declarations.
*/
static MagickBooleanType
- WriteOTBImage(const ImageInfo *,Image *);
+ WriteOTBImage(const ImageInfo *,Image *,ExceptionInfo *);
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -284,7 +284,8 @@
%
% The format of the WriteOTBImage method is:
%
-% MagickBooleanType WriteOTBImage(const ImageInfo *image_info,Image *image)
+% MagickBooleanType WriteOTBImage(const ImageInfo *image_info,
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -292,9 +293,11 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
%
*/
-static MagickBooleanType WriteOTBImage(const ImageInfo *image_info,Image *image)
+static MagickBooleanType WriteOTBImage(const ImageInfo *image_info,Image *image,
+ ExceptionInfo *exception)
{
#define SetBit(a,i,set) \
a=(unsigned char) ((set) ? (a) | (1L << (i)) : (a) & ~(1L << (i)))
@@ -325,7 +328,7 @@
assert(image->signature == MagickSignature);
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
if (IsRGBColorspace(image->colorspace) == MagickFalse)
@@ -351,7 +354,7 @@
(void) WriteBlobByte(image,1); /* depth */
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
bit=0;
diff --git a/coders/palm.c b/coders/palm.c
index 367a9ab..ba1da30 100644
--- a/coders/palm.c
+++ b/coders/palm.c
@@ -161,7 +161,7 @@
Forward declarations.
*/
static MagickBooleanType
- WritePALMImage(const ImageInfo *,Image *);
+ WritePALMImage(const ImageInfo *,Image *,ExceptionInfo *);
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -640,7 +640,7 @@
% The format of the WritePALMImage method is:
%
% MagickBooleanType WritePALMImage(const ImageInfo *image_info,
-% Image *image)
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -648,16 +648,15 @@
%
% o image: A pointer to a Image structure.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
static MagickBooleanType WritePALMImage(const ImageInfo *image_info,
- Image *image)
+ Image *image,ExceptionInfo *exception)
{
int
y;
- ExceptionInfo
- exception;
-
MagickBooleanType
status;
@@ -716,10 +715,9 @@
assert(image->signature == MagickSignature);
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
- GetExceptionInfo(&exception);
quantize_info=AcquireQuantizeInfo(image_info);
flags=0;
currentOffset=0;
@@ -735,7 +733,7 @@
{
if (IsRGBColorspace(image->colorspace) == MagickFalse)
(void) TransformImageColorspace(image,RGBColorspace);
- count=GetNumberColors(image,NULL,&exception);
+ count=GetNumberColors(image,NULL,exception);
for (bits_per_pixel=1; (one << bits_per_pixel) < count; bits_per_pixel*=2) ;
if (image_info->depth > 100)
bits_per_pixel=image_info->depth-100;
@@ -748,7 +746,7 @@
(void) SortColormapByIntensity(image);
}
if ((image->storage_class == PseudoClass) && (image->colors > 256))
- (void) SetImageStorageClass(image,DirectClass,&image->exception);
+ (void) SetImageStorageClass(image,DirectClass,exception);
if (image->storage_class == PseudoClass)
flags|=PALM_HAS_COLORMAP_FLAG;
else
@@ -793,7 +791,7 @@
{
if (flags & PALM_HAS_COLORMAP_FLAG) /* Write out colormap */
{
- quantize_info->dither=IsPaletteImage(image,&image->exception);
+ quantize_info->dither=IsPaletteImage(image,exception);
quantize_info->number_colors=image->colors;
(void) QuantizeImage(quantize_info,image);
(void) WriteBlobMSBShort(image,(unsigned short) image->colors);
@@ -815,13 +813,13 @@
*affinity_image;
affinity_image=ConstituteImage(256,1,"RGB",CharPixel,&PalmPalette,
- &exception);
+ exception);
(void) TransformImageColorspace(affinity_image,
affinity_image->colorspace);
(void) RemapImage(quantize_info,image,affinity_image);
for (y=0; y < (ssize_t) image->rows; y++)
{
- q=GetAuthenticPixels(image,0,y,image->columns,1,&exception);
+ q=GetAuthenticPixels(image,0,y,image->columns,1,exception);
for (x=0; x < (ssize_t) image->columns; x++)
{
SetPixelIndex(image,FindColor(image,&image->colormap[(ssize_t)
@@ -847,7 +845,7 @@
{
ptr=one_row;
(void) ResetMagickMemory(ptr,0,bytes_per_row);
- p=GetVirtualPixels(image,0,y,image->columns,1,&exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
if (bits_per_pixel == 16)
@@ -982,6 +980,5 @@
} while (image_info->adjoin != MagickFalse);
quantize_info=DestroyQuantizeInfo(quantize_info);
(void) CloseBlob(image);
- (void) DestroyExceptionInfo(&exception);
return(MagickTrue);
}
diff --git a/coders/pcd.c b/coders/pcd.c
index 62fb2a7..36c096b 100644
--- a/coders/pcd.c
+++ b/coders/pcd.c
@@ -75,7 +75,7 @@
Forward declarations.
*/
static MagickBooleanType
- WritePCDImage(const ImageInfo *,Image *);
+ WritePCDImage(const ImageInfo *,Image *,ExceptionInfo *);
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -929,7 +929,8 @@
%
% The format of the WritePCDImage method is:
%
-% MagickBooleanType WritePCDImage(const ImageInfo *image_info,Image *image)
+% MagickBooleanType WritePCDImage(const ImageInfo *image_info,
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -937,6 +938,8 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
static MagickBooleanType WritePCDTile(Image *image,const char *page_geometry,
@@ -1060,7 +1063,8 @@
return(MagickTrue);
}
-static MagickBooleanType WritePCDImage(const ImageInfo *image_info,Image *image)
+static MagickBooleanType WritePCDImage(const ImageInfo *image_info,Image *image,
+ ExceptionInfo *exception)
{
Image
*pcd_image;
@@ -1086,7 +1090,7 @@
/*
Rotate portrait to landscape.
*/
- rotate_image=RotateImage(image,90.0,&image->exception);
+ rotate_image=RotateImage(image,90.0,exception);
if (rotate_image == (Image *) NULL)
return(MagickFalse);
pcd_image=rotate_image;
@@ -1094,7 +1098,7 @@
/*
Open output image file.
*/
- status=OpenBlob(image_info,pcd_image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,pcd_image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
if (IsRGBColorspace(image->colorspace) == MagickFalse)
diff --git a/coders/pcl.c b/coders/pcl.c
index ae35056..12498f0 100644
--- a/coders/pcl.c
+++ b/coders/pcl.c
@@ -78,7 +78,7 @@
Forward declarations.
*/
static MagickBooleanType
- WritePCLImage(const ImageInfo *,Image *);
+ WritePCLImage(const ImageInfo *,Image *,ExceptionInfo *);
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -469,7 +469,8 @@
%
% The format of the WritePCLImage method is:
%
-% MagickBooleanType WritePCLImage(const ImageInfo *image_info,Image *image)
+% MagickBooleanType WritePCLImage(const ImageInfo *image_info,
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -477,6 +478,8 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
static size_t PCLDeltaCompressImage(const size_t length,
@@ -651,7 +654,8 @@
return((size_t) (q-compress_pixels));
}
-static MagickBooleanType WritePCLImage(const ImageInfo *image_info,Image *image)
+static MagickBooleanType WritePCLImage(const ImageInfo *image_info,Image *image,
+ ExceptionInfo *exception)
{
char
buffer[MaxTextExtent];
@@ -695,7 +699,7 @@
assert(image->signature == MagickSignature);
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
density=75;
@@ -725,7 +729,7 @@
density);
(void) WriteBlobString(image,buffer);
(void) WriteBlobString(image,"\033&l0E"); /* top margin 0 */
- if (IsImageMonochrome(image,&image->exception) != MagickFalse)
+ if (IsImageMonochrome(image,exception) != MagickFalse)
{
/*
Monochrome image: use default printer monochrome setup.
@@ -842,7 +846,7 @@
}
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
q=pixels;
diff --git a/coders/pcx.c b/coders/pcx.c
index 91e0ab0..3ad7e1d 100644
--- a/coders/pcx.c
+++ b/coders/pcx.c
@@ -99,7 +99,7 @@
Forward declarations.
*/
static MagickBooleanType
- WritePCXImage(const ImageInfo *,Image *);
+ WritePCXImage(const ImageInfo *,Image *,ExceptionInfo *);
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -761,7 +761,8 @@
%
% The format of the WritePCXImage method is:
%
-% MagickBooleanType WritePCXImage(const ImageInfo *image_info,Image *image)
+% MagickBooleanType WritePCXImage(const ImageInfo *image_info,
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -769,8 +770,10 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
%
*/
+
static MagickBooleanType PCXWritePixels(PCXInfo *pcx_info,
const unsigned char *pixels,Image *image)
{
@@ -828,7 +831,8 @@
return (MagickTrue);
}
-static MagickBooleanType WritePCXImage(const ImageInfo *image_info,Image *image)
+static MagickBooleanType WritePCXImage(const ImageInfo *image_info,Image *image,
+ ExceptionInfo *exception)
{
MagickBooleanType
status;
@@ -870,7 +874,7 @@
assert(image->signature == MagickSignature);
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
if (IsRGBColorspace(image->colorspace) == MagickFalse)
@@ -904,7 +908,7 @@
pcx_info.encoding=image_info->compression == NoCompression ? 0 : 1;
pcx_info.bits_per_pixel=8;
if ((image->storage_class == PseudoClass) &&
- (IsImageMonochrome(image,&image->exception) != MagickFalse))
+ (IsImageMonochrome(image,exception) != MagickFalse))
pcx_info.bits_per_pixel=1;
pcx_info.left=0;
pcx_info.top=0;
@@ -993,8 +997,7 @@
*/
for (y=0; y < (ssize_t) image->rows; y++)
{
- pixels=GetVirtualPixels(image,0,y,image->columns,1,
- &image->exception);
+ pixels=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (pixels == (const Quantum *) NULL)
break;
q=pcx_pixels;
@@ -1058,7 +1061,7 @@
if (pcx_info.bits_per_pixel > 1)
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
q=pcx_pixels;
@@ -1096,8 +1099,7 @@
GetPixelPacketIntensity(&image->colormap[1]) ? 1 : 0);
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,
- &image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
bit=0;
@@ -1167,8 +1169,8 @@
*message;
message=GetExceptionMessage(errno);
- (void) ThrowMagickException(&image->exception,GetMagickModule(),
- FileOpenError,"UnableToWriteFile","`%s': %s",image->filename,message);
+ (void) ThrowMagickException(exception,GetMagickModule(),FileOpenError,
+ "UnableToWriteFile","`%s': %s",image->filename,message);
message=DestroyString(message);
}
(void) CloseBlob(image);
diff --git a/coders/pdb.c b/coders/pdb.c
index dc4b374..1f8986d 100644
--- a/coders/pdb.c
+++ b/coders/pdb.c
@@ -134,7 +134,7 @@
Forward declarations.
*/
static MagickBooleanType
- WritePDBImage(const ImageInfo *,Image *);
+ WritePDBImage(const ImageInfo *,Image *,ExceptionInfo *);
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -656,7 +656,8 @@
%
% The format of the WritePDBImage method is:
%
-% MagickBooleanType WritePDBImage(const ImageInfo *image_info,Image *image)
+% MagickBooleanType WritePDBImage(const ImageInfo *image_info,
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -664,6 +665,7 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
%
*/
@@ -682,7 +684,8 @@
return(destination);
}
-static MagickBooleanType WritePDBImage(const ImageInfo *image_info,Image *image)
+static MagickBooleanType WritePDBImage(const ImageInfo *image_info,Image *image,
+ ExceptionInfo *exception)
{
const char
*comment;
@@ -735,13 +738,13 @@
assert(image->signature == MagickSignature);
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
if (IsRGBColorspace(image->colorspace) == MagickFalse)
(void) TransformImageColorspace(image,RGBColorspace);
- if (image -> colors <= 2 || GetImageType( image, &image -> exception ) == BilevelType) { /* TS */
+ if (image -> colors <= 2 || GetImageType( image, exception ) == BilevelType) { /* TS */
bits_per_pixel = 1;
} else if (image -> colors <= 4) {
bits_per_pixel = 2;
@@ -828,11 +831,11 @@
buffer[0]=0x00;
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
(void) ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
- GrayQuantum,scanline,&image->exception);
+ GrayQuantum,scanline,exception);
for (x=0; x < pdb_image.width; x++)
{
if (x < (ssize_t) image->columns)
diff --git a/coders/pdf.c b/coders/pdf.c
index 06483d9..66a1f56 100644
--- a/coders/pdf.c
+++ b/coders/pdf.c
@@ -90,7 +90,7 @@
Forward declarations.
*/
static MagickBooleanType
- WritePDFImage(const ImageInfo *,Image *);
+ WritePDFImage(const ImageInfo *,Image *,ExceptionInfo *);
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -831,7 +831,8 @@
%
% The format of the WritePDFImage method is:
%
-% MagickBooleanType WritePDFImage(const ImageInfo *image_info,Image *image)
+% MagickBooleanType WritePDFImage(const ImageInfo *image_info,
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -839,6 +840,8 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
static inline size_t MagickMax(const size_t x,const size_t y)
@@ -921,7 +924,8 @@
return(status);
}
-static MagickBooleanType WritePDFImage(const ImageInfo *image_info,Image *image)
+static MagickBooleanType WritePDFImage(const ImageInfo *image_info,Image *image,
+ ExceptionInfo *exception)
{
#define CFormat "/Filter [ /%s ]\n"
#define ObjectsPerImage 14
@@ -1051,7 +1055,7 @@
assert(image->signature == MagickSignature);
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
/*
@@ -1195,7 +1199,7 @@
case FaxCompression:
case Group4Compression:
{
- if ((IsImageMonochrome(image,&image->exception) == MagickFalse) ||
+ if ((IsImageMonochrome(image,exception) == MagickFalse) ||
(image->matte != MagickFalse))
compression=RLECompression;
break;
@@ -1204,7 +1208,7 @@
case JPEGCompression:
{
compression=RLECompression;
- (void) ThrowMagickException(&image->exception,GetMagickModule(),
+ (void) ThrowMagickException(exception,GetMagickModule(),
MissingDelegateError,"DelegateLibrarySupportNotBuiltIn","`%s' (JPEG)",
image->filename);
break;
@@ -1214,7 +1218,7 @@
case JPEG2000Compression:
{
compression=RLECompression;
- (void) ThrowMagickException(&image->exception,GetMagickModule(),
+ (void) ThrowMagickException(exception,GetMagickModule(),
MissingDelegateError,"DelegateLibrarySupportNotBuiltIn","`%s' (JP2)",
image->filename);
break;
@@ -1224,7 +1228,7 @@
case ZipCompression:
{
compression=RLECompression;
- (void) ThrowMagickException(&image->exception,GetMagickModule(),
+ (void) ThrowMagickException(exception,GetMagickModule(),
MissingDelegateError,"DelegateLibrarySupportNotBuiltIn","`%s' (ZLIB)",
image->filename);
break;
@@ -1301,8 +1305,7 @@
scale.y=(double) (geometry.height*delta.y)/resolution.y;
geometry.height=(size_t) floor(scale.y+0.5);
(void) ParseAbsoluteGeometry(page_geometry,&media_info);
- (void) ParseGravityGeometry(image,page_geometry,&page_info,
- &image->exception);
+ (void) ParseGravityGeometry(image,page_geometry,&page_info,exception);
if (image->gravity != UndefinedGravity)
{
geometry.x=(-page_info.x);
@@ -1551,7 +1554,7 @@
ThrowWriterException(ResourceLimitError,"MemoryAllocationFailed");
if ((compression == FaxCompression) || (compression == Group4Compression) ||
((image_info->type != TrueColorType) &&
- (IsImageGray(image,&image->exception) != MagickFalse)))
+ (IsImageGray(image,exception) != MagickFalse)))
{
switch (compression)
{
@@ -1568,18 +1571,22 @@
}
case JPEGCompression:
{
- status=InjectImageBlob(image_info,image,image,"jpeg",
- &image->exception);
+ status=InjectImageBlob(image_info,image,image,"jpeg",exception);
if (status == MagickFalse)
- ThrowWriterException(CoderError,image->exception.reason);
+ {
+ (void) CloseBlob(image);
+ return(MagickFalse);
+ }
break;
}
case JPEG2000Compression:
{
- status=InjectImageBlob(image_info,image,image,"jp2",
- &image->exception);
+ status=InjectImageBlob(image_info,image,image,"jp2",exception);
if (status == MagickFalse)
- ThrowWriterException(CoderError,image->exception.reason);
+ {
+ (void) CloseBlob(image);
+ return(MagickFalse);
+ }
break;
}
case RLECompression:
@@ -1599,7 +1606,7 @@
q=pixels;
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
for (x=0; x < (ssize_t) image->columns; x++)
@@ -1640,7 +1647,7 @@
Ascii85Initialize(image);
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
for (x=0; x < (ssize_t) image->columns; x++)
@@ -1670,18 +1677,22 @@
{
case JPEGCompression:
{
- status=InjectImageBlob(image_info,image,image,"jpeg",
- &image->exception);
+ status=InjectImageBlob(image_info,image,image,"jpeg",exception);
if (status == MagickFalse)
- ThrowWriterException(CoderError,image->exception.reason);
+ {
+ (void) CloseBlob(image);
+ return(MagickFalse);
+ }
break;
}
case JPEG2000Compression:
{
- status=InjectImageBlob(image_info,image,image,"jp2",
- &image->exception);
+ status=InjectImageBlob(image_info,image,image,"jp2",exception);
if (status == MagickFalse)
- ThrowWriterException(CoderError,image->exception.reason);
+ {
+ (void) CloseBlob(image);
+ return(MagickFalse);
+ }
break;
}
case RLECompression:
@@ -1702,7 +1713,7 @@
q=pixels;
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
for (x=0; x < (ssize_t) image->columns; x++)
@@ -1747,7 +1758,7 @@
Ascii85Initialize(image);
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
for (x=0; x < (ssize_t) image->columns; x++)
@@ -1797,8 +1808,7 @@
q=pixels;
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,
- &image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
for (x=0; x < (ssize_t) image->columns; x++)
@@ -1839,8 +1849,7 @@
Ascii85Initialize(image);
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,
- &image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
for (x=0; x < (ssize_t) image->columns; x++)
@@ -1888,7 +1897,7 @@
if ((compression == FaxCompression) ||
(compression == Group4Compression) ||
((image_info->type != TrueColorType) &&
- (IsImageGray(image,&image->exception) != MagickFalse)))
+ (IsImageGray(image,exception) != MagickFalse)))
(void) CopyMagickString(buffer,"/DeviceGray\n",MaxTextExtent);
else
if ((image->storage_class == DirectClass) || (image->colors > 256) ||
@@ -1907,10 +1916,9 @@
SetGeometry(image,&geometry);
(void) ParseMetaGeometry("106x106+0+0>",&geometry.x,&geometry.y,
&geometry.width,&geometry.height);
- tile_image=ThumbnailImage(image,geometry.width,geometry.height,
- &image->exception);
+ tile_image=ThumbnailImage(image,geometry.width,geometry.height,exception);
if (tile_image == (Image *) NULL)
- ThrowWriterException(ResourceLimitError,image->exception.reason);
+ return(MagickFalse);
xref[object++]=TellBlob(image);
(void) FormatLocaleString(buffer,MaxTextExtent,"%.20g 0 obj\n",(double)
object);
@@ -1995,7 +2003,7 @@
if ((compression == FaxCompression) ||
(compression == Group4Compression) ||
((image_info->type != TrueColorType) &&
- (IsImageGray(tile_image,&image->exception) != MagickFalse)))
+ (IsImageGray(tile_image,exception) != MagickFalse)))
{
switch (compression)
{
@@ -2013,17 +2021,22 @@
case JPEGCompression:
{
status=InjectImageBlob(image_info,image,tile_image,"jpeg",
- &image->exception);
+ exception);
if (status == MagickFalse)
- ThrowWriterException(CoderError,tile_image->exception.reason);
+ {
+ (void) CloseBlob(image);
+ return(MagickFalse);
+ }
break;
}
case JPEG2000Compression:
{
- status=InjectImageBlob(image_info,image,tile_image,"jp2",
- &image->exception);
+ status=InjectImageBlob(image_info,image,tile_image,"jp2",exception);
if (status == MagickFalse)
- ThrowWriterException(CoderError,tile_image->exception.reason);
+ {
+ (void) CloseBlob(image);
+ return(MagickFalse);
+ }
break;
}
case RLECompression:
@@ -2048,7 +2061,7 @@
for (y=0; y < (ssize_t) tile_image->rows; y++)
{
p=GetVirtualPixels(tile_image,0,y,tile_image->columns,1,
- &tile_image->exception);
+ exception);
if (p == (const Quantum *) NULL)
break;
for (x=0; x < (ssize_t) tile_image->columns; x++)
@@ -2083,7 +2096,7 @@
for (y=0; y < (ssize_t) tile_image->rows; y++)
{
p=GetVirtualPixels(tile_image,0,y,tile_image->columns,1,
- &tile_image->exception);
+ exception);
if (p == (const Quantum *) NULL)
break;
for (x=0; x < (ssize_t) tile_image->columns; x++)
@@ -2107,17 +2120,22 @@
case JPEGCompression:
{
status=InjectImageBlob(image_info,image,tile_image,"jpeg",
- &image->exception);
+ exception);
if (status == MagickFalse)
- ThrowWriterException(CoderError,tile_image->exception.reason);
+ {
+ (void) CloseBlob(image);
+ return(MagickFalse);
+ }
break;
}
case JPEG2000Compression:
{
- status=InjectImageBlob(image_info,image,tile_image,"jp2",
- &image->exception);
+ status=InjectImageBlob(image_info,image,tile_image,"jp2",exception);
if (status == MagickFalse)
- ThrowWriterException(CoderError,tile_image->exception.reason);
+ {
+ (void) CloseBlob(image);
+ return(MagickFalse);
+ }
break;
}
case RLECompression:
@@ -2143,7 +2161,7 @@
for (y=0; y < (ssize_t) tile_image->rows; y++)
{
p=GetVirtualPixels(tile_image,0,y,tile_image->columns,1,
- &tile_image->exception);
+ exception);
if (p == (const Quantum *) NULL)
break;
for (x=0; x < (ssize_t) tile_image->columns; x++)
@@ -2182,7 +2200,7 @@
for (y=0; y < (ssize_t) tile_image->rows; y++)
{
p=GetVirtualPixels(tile_image,0,y,tile_image->columns,1,
- &tile_image->exception);
+ exception);
if (p == (const Quantum *) NULL)
break;
for (x=0; x < (ssize_t) tile_image->columns; x++)
@@ -2232,7 +2250,7 @@
for (y=0; y < (ssize_t) tile_image->rows; y++)
{
p=GetVirtualPixels(tile_image,0,y,tile_image->columns,1,
- &tile_image->exception);
+ exception);
if (p == (const Quantum *) NULL)
break;
for (x=0; x < (ssize_t) tile_image->columns; x++)
@@ -2267,7 +2285,7 @@
for (y=0; y < (ssize_t) tile_image->rows; y++)
{
p=GetVirtualPixels(tile_image,0,y,tile_image->columns,1,
- &tile_image->exception);
+ exception);
if (p == (const Quantum *) NULL)
break;
for (x=0; x < (ssize_t) tile_image->columns; x++)
@@ -2435,7 +2453,7 @@
q=pixels;
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
for (x=0; x < (ssize_t) image->columns; x++)
@@ -2469,7 +2487,7 @@
Ascii85Initialize(image);
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
for (x=0; x < (ssize_t) image->columns; x++)
diff --git a/coders/pict.c b/coders/pict.c
index afa69bd..7e2de3a 100644
--- a/coders/pict.c
+++ b/coders/pict.c
@@ -321,7 +321,7 @@
Forward declarations.
*/
static MagickBooleanType
- WritePICTImage(const ImageInfo *,Image *);
+ WritePICTImage(const ImageInfo *,Image *,ExceptionInfo *);
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -1510,7 +1510,7 @@
% The format of the WritePICTImage method is:
%
% MagickBooleanType WritePICTImage(const ImageInfo *image_info,
-% Image *image)
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -1518,9 +1518,11 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
static MagickBooleanType WritePICTImage(const ImageInfo *image_info,
- Image *image)
+ Image *image,ExceptionInfo *exception)
{
#define MaxCount 128
#define PictCropRegionOp 0x01
@@ -1592,7 +1594,7 @@
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
if ((image->columns > 65535L) || (image->rows > 65535L))
ThrowWriterException(ImageError,"WidthOrHeightExceedsLimit");
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
if (IsRGBColorspace(image->colorspace) == MagickFalse)
@@ -1732,7 +1734,7 @@
unsigned char
*blob;
- jpeg_image=CloneImage(image,0,0,MagickTrue,&image->exception);
+ jpeg_image=CloneImage(image,0,0,MagickTrue,exception);
if (jpeg_image == (Image *) NULL)
{
(void) CloseBlob(image);
@@ -1742,7 +1744,7 @@
(void) CopyMagickString(jpeg_info->magick,"JPEG",MaxTextExtent);
length=0;
blob=(unsigned char *) ImageToBlob(jpeg_info,jpeg_image,&length,
- &image->exception);
+ exception);
jpeg_info=DestroyImageInfo(jpeg_info);
if (blob == (unsigned char *) NULL)
return(MagickFalse);
@@ -1872,7 +1874,7 @@
if ((storage_class == PseudoClass) && (image->matte == MagickFalse))
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
for (x=0; x < (ssize_t) image->columns; x++)
@@ -1912,7 +1914,7 @@
opacity=scanline+3*image->columns;
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
red=scanline;
diff --git a/coders/png.c b/coders/png.c
index a65a6bc..bd5782b 100644
--- a/coders/png.c
+++ b/coders/png.c
@@ -932,14 +932,14 @@
Forward declarations.
*/
static MagickBooleanType
- WritePNGImage(const ImageInfo *,Image *);
+ WritePNGImage(const ImageInfo *,Image *,ExceptionInfo *);
static MagickBooleanType
- WriteMNGImage(const ImageInfo *,Image *);
+ WriteMNGImage(const ImageInfo *,Image *,ExceptionInfo *);
#if defined(JNG_SUPPORTED)
static MagickBooleanType
- WriteJNGImage(const ImageInfo *,Image *);
+ WriteJNGImage(const ImageInfo *,Image *,ExceptionInfo *);
#endif
#if PNG_LIBPNG_VER > 10011
@@ -7222,7 +7222,8 @@
%
% The format of the WriteMNGImage method is:
%
-% MagickBooleanType WriteMNGImage(const ImageInfo *image_info,Image *image)
+% MagickBooleanType WriteMNGImage(const ImageInfo *image_info,
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -7230,6 +7231,7 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
%
% To do (as of version 5.5.2, November 26, 2002 -- glennrp -- see also
% "To do" under ReadPNGImage):
@@ -10765,7 +10767,8 @@
%
% The format of the WritePNGImage method is:
%
-% MagickBooleanType WritePNGImage(const ImageInfo *image_info,Image *image)
+% MagickBooleanType WritePNGImage(const ImageInfo *image_info,
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows:
%
@@ -10773,6 +10776,8 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
+%
% Returns MagickTrue on success, MagickFalse on failure.
%
% Communicating with the PNG encoder:
@@ -10891,7 +10896,7 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
*/
static MagickBooleanType WritePNGImage(const ImageInfo *image_info,
- Image *image)
+ Image *image,ExceptionInfo *exception)
{
MagickBooleanType
excluding,
@@ -12116,7 +12121,8 @@
%
% The format of the WriteJNGImage method is:
%
-% MagickBooleanType WriteJNGImage(const ImageInfo *image_info,Image *image)
+% MagickBooleanType WriteJNGImage(const ImageInfo *image_info,
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows:
%
@@ -12124,9 +12130,12 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
+%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
*/
-static MagickBooleanType WriteJNGImage(const ImageInfo *image_info,Image *image)
+static MagickBooleanType WriteJNGImage(const ImageInfo *image_info,Image *image,
+ ExceptionInfo *exception)
{
MagickBooleanType
have_mng_structure,
@@ -12176,9 +12185,8 @@
}
#endif
-
-
-static MagickBooleanType WriteMNGImage(const ImageInfo *image_info,Image *image)
+static MagickBooleanType WriteMNGImage(const ImageInfo *image_info,Image *image,
+ ExceptionInfo *exception)
{
const char
*option;
diff --git a/coders/pnm.c b/coders/pnm.c
index 1f3e764..f45e1ff 100644
--- a/coders/pnm.c
+++ b/coders/pnm.c
@@ -70,7 +70,7 @@
Forward declarations.
*/
static MagickBooleanType
- WritePNMImage(const ImageInfo *,Image *);
+ WritePNMImage(const ImageInfo *,Image *,ExceptionInfo *);
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -1404,7 +1404,8 @@
%
% The format of the WritePNMImage method is:
%
-% MagickBooleanType WritePNMImage(const ImageInfo *image_info,Image *image)
+% MagickBooleanType WritePNMImage(const ImageInfo *image_info,
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -1412,8 +1413,11 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
-static MagickBooleanType WritePNMImage(const ImageInfo *image_info,Image *image)
+static MagickBooleanType WritePNMImage(const ImageInfo *image_info,Image *image,
+ ExceptionInfo *exception)
{
char
buffer[MaxTextExtent],
@@ -1462,7 +1466,7 @@
assert(image->signature == MagickSignature);
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
scene=0;
@@ -1494,7 +1498,7 @@
case 'f':
{
format='F';
- if (IsImageGray(image,&image->exception) != MagickFalse)
+ if (IsImageGray(image,exception) != MagickFalse)
format='f';
break;
}
@@ -1510,12 +1514,12 @@
case 'n':
{
if ((image_info->type != TrueColorType) &&
- (IsImageGray(image,&image->exception) != MagickFalse))
+ (IsImageGray(image,exception) != MagickFalse))
{
format='5';
if (image_info->compression == NoCompression)
format='2';
- if (IsImageMonochrome(image,&image->exception) != MagickFalse)
+ if (IsImageMonochrome(image,exception) != MagickFalse)
{
format='4';
if (image_info->compression == NoCompression)
@@ -1574,7 +1578,7 @@
"WIDTH %.20g\nHEIGHT %.20g\n",(double) image->columns,(double)
image->rows);
(void) WriteBlobString(image,buffer);
- quantum_type=GetQuantumType(image,&image->exception);
+ quantum_type=GetQuantumType(image,exception);
switch (quantum_type)
{
case CMYKQuantum:
@@ -1638,7 +1642,7 @@
register ssize_t
x;
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
for (x=0; x < (ssize_t) image->columns; x++)
@@ -1691,7 +1695,7 @@
register ssize_t
x;
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
for (x=0; x < (ssize_t) image->columns; x++)
@@ -1750,7 +1754,7 @@
register ssize_t
x;
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
for (x=0; x < (ssize_t) image->columns; x++)
@@ -1807,11 +1811,11 @@
register const Quantum
*restrict p;
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
extent=ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
- GrayQuantum,pixels,&image->exception);
+ GrayQuantum,pixels,exception);
count=WriteBlob(image,extent,pixels);
if (count != (ssize_t) extent)
break;
@@ -1854,13 +1858,13 @@
register ssize_t
x;
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
q=pixels;
if ((image->depth == 8) || (image->depth == 16))
extent=ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
- GrayQuantum,pixels,&image->exception);
+ GrayQuantum,pixels,exception);
else
{
if (image->depth <= 8)
@@ -1936,13 +1940,13 @@
register ssize_t
x;
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
q=pixels;
if ((image->depth == 8) || (image->depth == 16))
extent=ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
- quantum_type,pixels,&image->exception);
+ quantum_type,pixels,exception);
else
{
if (image->depth <= 8)
@@ -2004,13 +2008,13 @@
register ssize_t
x;
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
q=pixels;
if ((image->depth == 8) || (image->depth == 16))
extent=ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
- quantum_type,pixels,&image->exception);
+ quantum_type,pixels,exception);
else
{
switch (quantum_type)
@@ -2159,11 +2163,11 @@
register const Quantum
*restrict p;
- p=GetVirtualPixels(image,0,y,image->columns,1,&image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
extent=ExportQuantumPixels(image,(CacheView *) NULL,quantum_info,
- quantum_type,pixels,&image->exception);
+ quantum_type,pixels,exception);
(void) WriteBlob(image,extent,pixels);
if (image->previous == (Image *) NULL)
{
diff --git a/coders/preview.c b/coders/preview.c
index 8c93bf5..60aed4b 100644
--- a/coders/preview.c
+++ b/coders/preview.c
@@ -68,7 +68,7 @@
Forward declarations.
*/
static MagickBooleanType
- WritePreviewImage(const ImageInfo *,Image *);
+ WritePreviewImage(const ImageInfo *,Image *,ExceptionInfo *);
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -151,7 +151,7 @@
% The format of the WritePreviewImage method is:
%
% MagickBooleanType WritePreviewImage(const ImageInfo *image_info,
-% Image *image)
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows.
%
@@ -159,9 +159,11 @@
%
% o image: The image.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
static MagickBooleanType WritePreviewImage(const ImageInfo *image_info,
- Image *image)
+ Image *image,ExceptionInfo *exception)
{
Image
*preview_image;
@@ -181,17 +183,17 @@
assert(image->signature == MagickSignature);
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
- preview_image=PreviewImage(image,image_info->preview_type,&image->exception);
+ preview_image=PreviewImage(image,image_info->preview_type,exception);
if (preview_image == (Image *) NULL)
return(MagickFalse);
(void) CopyMagickString(preview_image->filename,image_info->filename,
MaxTextExtent);
write_info=CloneImageInfo(image_info);
- (void) SetImageInfo(write_info,1,&image->exception);
+ (void) SetImageInfo(write_info,1,exception);
if (LocaleCompare(write_info->magick,"PREVIEW") == 0)
(void) FormatLocaleString(preview_image->filename,MaxTextExtent,
"miff:%s",image_info->filename);
- status=WriteImage(write_info,preview_image,&image->exception);
+ status=WriteImage(write_info,preview_image,exception);
preview_image=DestroyImage(preview_image);
write_info=DestroyImageInfo(write_info);
return(status);
diff --git a/coders/ps.c b/coders/ps.c
index 9ea57be..5bad115 100644
--- a/coders/ps.c
+++ b/coders/ps.c
@@ -79,7 +79,7 @@
Forward declarations.
*/
static MagickBooleanType
- WritePSImage(const ImageInfo *,Image *);
+ WritePSImage(const ImageInfo *,Image *,ExceptionInfo *);
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -994,7 +994,8 @@
%
% The format of the WritePSImage method is:
%
-% MagickBooleanType WritePSImage(const ImageInfo *image_info,Image *image)
+% MagickBooleanType WritePSImage(const ImageInfo *image_info,
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows:
%
@@ -1002,6 +1003,8 @@
%
% o image: the image.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
static inline size_t MagickMin(const size_t x,const size_t y)
@@ -1023,7 +1026,8 @@
return(pixels);
}
-static MagickBooleanType WritePSImage(const ImageInfo *image_info,Image *image)
+static MagickBooleanType WritePSImage(const ImageInfo *image_info,Image *image,
+ ExceptionInfo *exception)
{
#define WriteRunlengthPacket(image,pixel,length,p) \
{ \
@@ -1408,7 +1412,7 @@
assert(image->signature == MagickSignature);
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
(void) ResetMagickMemory(&bounds,0,sizeof(bounds));
@@ -1469,8 +1473,7 @@
scale.y=(double) (geometry.height*delta.y)/resolution.y;
geometry.height=(size_t) floor(scale.y+0.5);
(void) ParseAbsoluteGeometry(page_geometry,&media_info);
- (void) ParseGravityGeometry(image,page_geometry,&page_info,
- &image->exception);
+ (void) ParseGravityGeometry(image,page_geometry,&page_info,exception);
if (image->gravity != UndefinedGravity)
{
geometry.x=(-page_info.x);
@@ -1598,7 +1601,7 @@
/*
Create preview image.
*/
- preview_image=CloneImage(image,0,0,MagickTrue,&image->exception);
+ preview_image=CloneImage(image,0,0,MagickTrue,exception);
if (preview_image == (Image *) NULL)
ThrowWriterException(ResourceLimitError,"MemoryAllocationFailed");
/*
@@ -1614,7 +1617,7 @@
for (y=0; y < (ssize_t) image->rows; y++)
{
p=GetVirtualPixels(preview_image,0,y,preview_image->columns,1,
- &preview_image->exception);
+ exception);
if (p == (const Quantum *) NULL)
break;
bit=0;
@@ -1737,9 +1740,9 @@
index=0;
x=0;
if ((image_info->type != TrueColorType) &&
- (IsImageGray(image,&image->exception) != MagickFalse))
+ (IsImageGray(image,exception) != MagickFalse))
{
- if (IsImageMonochrome(image,&image->exception) == MagickFalse)
+ if (IsImageMonochrome(image,exception) == MagickFalse)
{
Quantum
pixel;
@@ -1754,8 +1757,7 @@
q=pixels;
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,
- &image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
for (x=0; x < (ssize_t) image->columns; x++)
@@ -1803,8 +1805,7 @@
q=pixels;
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,
- &image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
bit=0;
@@ -1877,8 +1878,7 @@
q=pixels;
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,
- &image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
GetPixelPacket(image,p,&pixel);
@@ -1939,8 +1939,7 @@
q=pixels;
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,
- &image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
for (x=0; x < (ssize_t) image->columns; x++)
@@ -2021,8 +2020,7 @@
q=pixels;
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,
- &image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
index=GetPixelIndex(image,p);
@@ -2083,8 +2081,7 @@
q=pixels;
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,
- &image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
for (x=0; x < (ssize_t) image->columns; x++)
diff --git a/coders/ps2.c b/coders/ps2.c
index ae734eb..3cced52 100644
--- a/coders/ps2.c
+++ b/coders/ps2.c
@@ -83,7 +83,7 @@
Forward declarations.
*/
static MagickBooleanType
- WritePS2Image(const ImageInfo *,Image *);
+ WritePS2Image(const ImageInfo *,Image *,ExceptionInfo *);
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -172,7 +172,8 @@
%
% The format of the WritePS2Image method is:
%
-% MagickBooleanType WritePS2Image(const ImageInfo *image_info,Image *image)
+% MagickBooleanType WritePS2Image(const ImageInfo *image_info,
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows:
%
@@ -180,6 +181,8 @@
%
% o image: the image.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
static MagickBooleanType Huffman2DEncodeImage(const ImageInfo *image_info,
@@ -219,7 +222,8 @@
return(status);
}
-static MagickBooleanType WritePS2Image(const ImageInfo *image_info,Image *image)
+static MagickBooleanType WritePS2Image(const ImageInfo *image_info,Image *image,
+ ExceptionInfo *exception)
{
static const char
*PostscriptProlog[]=
@@ -457,7 +461,7 @@
assert(image->signature == MagickSignature);
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(status);
compression=image->compression;
@@ -469,7 +473,7 @@
case JPEGCompression:
{
compression=RLECompression;
- (void) ThrowMagickException(&image->exception,GetMagickModule(),
+ (void) ThrowMagickException(exception,GetMagickModule(),
MissingDelegateError,"DelegateLibrarySupportNotBuiltIn","`%s' (JPEG)",
image->filename);
break;
@@ -533,8 +537,7 @@
scale.y=(double) (geometry.height*delta.y)/resolution.y;
geometry.height=(size_t) floor(scale.y+0.5);
(void) ParseAbsoluteGeometry(page_geometry,&media_info);
- (void) ParseGravityGeometry(image,page_geometry,&page_info,
- &image->exception);
+ (void) ParseGravityGeometry(image,page_geometry,&page_info,exception);
if (image->gravity != UndefinedGravity)
{
geometry.x=(-page_info.x);
@@ -722,7 +725,7 @@
ThrowWriterException(ResourceLimitError,"MemoryAllocationFailed");
if ((compression == FaxCompression) || (compression == Group4Compression) ||
((image_info->type != TrueColorType) &&
- (IsImageGray(image,&image->exception) != MagickFalse)))
+ (IsImageGray(image,exception) != MagickFalse)))
{
(void) FormatLocaleString(buffer,MaxTextExtent,"%.20g %.20g\n1\n%d\n",
(double) image->columns,(double) image->rows,(int)
@@ -752,10 +755,12 @@
}
case JPEGCompression:
{
- status=InjectImageBlob(image_info,image,image,"jpeg",
- &image->exception);
+ status=InjectImageBlob(image_info,image,image,"jpeg",exception);
if (status == MagickFalse)
- ThrowWriterException(CoderError,image->exception.reason);
+ {
+ (void) CloseBlob(image);
+ return(MagickFalse);
+ }
break;
}
case RLECompression:
@@ -778,8 +783,7 @@
q=pixels;
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,
- &image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
for (x=0; x < (ssize_t) image->columns; x++)
@@ -813,8 +817,7 @@
Ascii85Initialize(image);
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,
- &image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
for (x=0; x < (ssize_t) image->columns; x++)
@@ -848,10 +851,12 @@
{
case JPEGCompression:
{
- status=InjectImageBlob(image_info,image,image,"jpeg",
- &image->exception);
+ status=InjectImageBlob(image_info,image,image,"jpeg",exception);
if (status == MagickFalse)
- ThrowWriterException(CoderError,image->exception.reason);
+ {
+ (void) CloseBlob(image);
+ return(MagickFalse);
+ }
break;
}
case RLECompression:
@@ -875,8 +880,7 @@
q=pixels;
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,
- &image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
for (x=0; x < (ssize_t) image->columns; x++)
@@ -930,8 +934,7 @@
Ascii85Initialize(image);
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,
- &image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
for (x=0; x < (ssize_t) image->columns; x++)
@@ -1025,8 +1028,7 @@
q=pixels;
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,
- &image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
for (x=0; x < (ssize_t) image->columns; x++)
@@ -1060,8 +1062,7 @@
Ascii85Initialize(image);
for (y=0; y < (ssize_t) image->rows; y++)
{
- p=GetVirtualPixels(image,0,y,image->columns,1,
- &image->exception);
+ p=GetVirtualPixels(image,0,y,image->columns,1,exception);
if (p == (const Quantum *) NULL)
break;
for (x=0; x < (ssize_t) image->columns; x++)
diff --git a/coders/ps3.c b/coders/ps3.c
index 74e723e..a8e5e8a 100644
--- a/coders/ps3.c
+++ b/coders/ps3.c
@@ -98,7 +98,7 @@
Forward declarations.
*/
static MagickBooleanType
- WritePS3Image(const ImageInfo *,Image *);
+ WritePS3Image(const ImageInfo *,Image *,ExceptionInfo *);
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -185,7 +185,8 @@
%
% The format of the WritePS3Image method is:
%
-% MagickBooleanType WritePS3Image(const ImageInfo *image_info,Image *image)
+% MagickBooleanType WritePS3Image(const ImageInfo *image_info,
+% Image *image,ExceptionInfo *exception)
%
% A description of each parameter follows:
%
@@ -193,6 +194,8 @@
%
% o image: the image.
%
+% o exception: return any errors or warnings in this structure.
+%
*/
static MagickBooleanType Huffman2DEncodeImage(const ImageInfo *image_info,
@@ -603,7 +606,8 @@
return(status);
}
-static MagickBooleanType WritePS3Image(const ImageInfo *image_info,Image *image)
+static MagickBooleanType WritePS3Image(const ImageInfo *image_info,Image *image,
+ ExceptionInfo *exception)
{
static const char
*PostscriptProlog[]=
@@ -867,7 +871,7 @@
assert(image->signature == MagickSignature);
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
- status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
+ status=OpenBlob(image_info,image,WriteBinaryBlobMode,exception);
if (status == MagickFalse)
return(MagickFalse);
compression=image->compression;
@@ -878,7 +882,7 @@
case FaxCompression:
case Group4Compression:
{
- if ((IsImageMonochrome(image,&image->exception) == MagickFalse) ||
+ if ((IsImageMonochrome(image,exception) == MagickFalse) ||
(image->matte != MagickFalse))
compression=RLECompression;
break;
@@ -887,7 +891,7 @@
case JPEGCompression:
{
compression=RLECompression;
- (void) ThrowMagickException(&image->exception,GetMagickModule(),
+ (void) ThrowMagickException(exception,GetMagickModule(),
MissingDelegateError,"DelegateLibrarySupportNotBuiltIn","`%s' (JPEG)",
image->filename);
break;
@@ -897,7 +901,7 @@
case ZipCompression:
{
compression=RLECompression;
- (void) ThrowMagickException(&image->exception,GetMagickModule(),
+ (void) ThrowMagickException(exception,GetMagickModule(),
MissingDelegateError,"DelegateLibrarySupportNotBuiltIn","`%s' (ZLIB)",
image->filename);
break;
@@ -961,8 +965,7 @@
scale.y=(double) (geometry.height*delta.y)/resolution.y;
geometry.height=(size_t) floor(scale.y+0.5);
(void) ParseAbsoluteGeometry(page_geometry,&media_info);
- (void) ParseGravityGeometry(image,page_geometry,&page_info,
- &image->exception);
+ (void) ParseGravityGeometry(image,page_geometry,&page_info,exception);
if (image->gravity != UndefinedGravity)
{
geometry.x=(-page_info.x);
@@ -1022,7 +1025,7 @@
(void) WriteBlobString(image,
"%%DocumentProcessColors: Cyan Magenta Yellow Black\n");
else
- if (IsImageGray(image,&image->exception) != MagickFalse)
+ if (IsImageGray(image,exception) != MagickFalse)
(void) WriteBlobString(image,
"%%DocumentProcessColors: Black\n");
}
@@ -1105,7 +1108,7 @@
(void) WriteBlobString(image,
"%%PageProcessColors: Cyan Magenta Yellow Black\n");
else
- if (IsImageGray(image,&image->exception) != MagickFalse)
+ if (IsImageGray(image,exception) != MagickFalse)
(void) WriteBlobString(image,"%%PageProcessColors: Black\n");
/*
Adjust document bounding box to bound page bounding box.
@@ -1230,7 +1233,7 @@
*/
option=GetImageOption(image_info,"ps3:imagemask");
(void) WriteBlobString(image,((option != (const char *) NULL) &&
- (IsImageMonochrome(image,&image->exception) != MagickFalse)) ?
+ (IsImageMonochrome(image,exception) != MagickFalse)) ?
"true\n" : "false\n");
/*
Output pixel data.
@@ -1242,8 +1245,8 @@
(image_info->type != ColorSeparationType) &&
(image_info->type != ColorSeparationMatteType) &&
(image->colorspace != CMYKColorspace) &&
- ((IsImageGray(image,&image->exception) != MagickFalse) ||
- (IsImageMonochrome(image,&image->exception) != MagickFalse)))
+ ((IsImageGray(image,exception) != MagickFalse) ||
+ (IsImageMonochrome(image,exception) != MagickFalse)))
{
/*
Gray images.
@@ -1292,14 +1295,13 @@
1 bit or 8 bit components?
*/
(void) FormatLocaleString(buffer,MaxTextExtent,"%d\n",
- IsImageMonochrome(image,&image->exception) != MagickFalse ? 1 : 8);
+ IsImageMonochrome(image,exception) != MagickFalse ? 1 : 8);
(void) WriteBlobString(image,buffer);
/*
Image data.
*/
if (compression == JPEGCompression)
- status=InjectImageBlob(image_info,image,image,"jpeg",
- &image->exception);
+ status=InjectImageBlob(image_info,image,image,"jpeg",exception);
else
if ((compression == FaxCompression) ||
(compression == Group4Compression))
@@ -1389,8 +1391,7 @@
Image data.
*/
if (compression == JPEGCompression)
- status=InjectImageBlob(image_info,image,image,"jpeg",
- &image->exception);
+ status=InjectImageBlob(image_info,image,image,"jpeg",exception);
else
{
/*
@@ -1524,8 +1525,7 @@
}
case JPEGCompression:
{
- status=InjectImageBlob(image_info,image,image,"jpeg",
- &image->exception);
+ status=InjectImageBlob(image_info,image,image,"jpeg",exception);
break;
}
case RLECompression: