github.com/kaydxh/golang@v0.0.131/pkg/gocv/cgo/third_path/graphics-magick/share/doc/GraphicsMagick/ChangeLog.2015 (about)

     1  2015-12-12  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
     2  
     3  	* ttf: Update bundled freetype to release 2.6.2.
     4  
     5  	* libxml: Update bundled libxml2 to release 2.9.3.
     6  
     7  2015-11-28  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
     8  
     9  	* webp: Updated bundled libwebp to release 0.4.4.
    10  
    11  	* png: Updated bundled libpng to release 1.6.19.
    12  
    13  2015-11-05  Glenn Randers-Pehrson  <glennrp@simple.dallas.tx.us>
    14  
    15  	* coders/png.c (WriteOnePNGImage): Added "volatile" to
    16  	several declarations to stop "might be clobbered" warnings.
    17  
    18  2015-11-07  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
    19  
    20  	* NEWS.txt: Update NEWS for 1.3.23 release.
    21  
    22  2015-11-06  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
    23  
    24  	* magick/command.c (IdentifyImageCommand): Fix problem that
    25  	identify with -format "%A" does not always report correct answer
    26  	due to insufficient analysis of image.  Fixes SourceForge bug #326
    27  	"gm identify: transparency detection bug ".
    28  
    29  2015-11-05  Glenn Randers-Pehrson  <glennrp@simple.dallas.tx.us>
    30  
    31  	* coders/png.c (WriteOnePNGImage): Restored a "volatile"
    32  	declaration that was accidentally deleted on 2015-11-03.
    33  
    34  2015-11-04  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
    35  
    36  	* configure.ac: Add checks for 'ps2write' and 'eps2write' as
    37  	Ghostscript Postscript and Encapsulated Postscript
    38  	writers. Resolves issue reported to graphicsmagick-bugs mailing
    39  	list on 2015-11-01 entitled "Failure to detect pswrite and
    40  	epswrite Ghostscript devices".
    41  
    42  2015-11-03  Glenn Randers-Pehrson  <glennrp@simple.dallas.tx.us>
    43  
    44  	* coders/png.c (ReadRawProfile): Issue a warning instead of
    45  	an error when attempting to read a zero-length profile.
    46  
    47  2015-11-01  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
    48  
    49  	* magick/studio.h (MagickSleep): Provide the macro 'MagickSleep'
    50  	to call a function which delays for one second.  No longer provide
    51  	a macro 'sleep' in WIN32 compiles.  Resolves issue reported to
    52  	graphicsmagick-bugs mailing list on 2005-11-01 entitled "MinGW
    53  	build error when sleep re#defined as Sleep".
    54  
    55  2015-10-30  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
    56  
    57  	* Magick++/demo/demos.tap: Add zoom test cases to test resize to
    58  	original dimensions, change height, and change width.
    59  
    60  	* magick/resize.c (ScaleImage): Fix regression introduced in
    61  	1.3.22 release which results in pixel cache not open if the scale
    62  	width and height match the original.  Patch by Troy Patteson.
    63  	Fixes part of SourceForge bug #323 "ScaleImage() issues in
    64  	v1.3.22".
    65  	(ScaleImage): Fix double free problem when scaled rows equals
    66  	original rows.  This regression was added in the 1.3.22 release
    67  	via changset 080b99bba574.  Based on patch by Troy Patteson.
    68  	Fixes remaining part SourceForge bug #323 "ScaleImage() issues in
    69  	v1.3.22".
    70  
    71  2015-10-24  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
    72  
    73  	* www/Magick++/Image.rst (thumbnail): Paragraph heading fix.
    74  	Resolves SourceForge issue #321 "find tiny error in
    75  	Magick++/Image.html document".
    76  
    77  2015-10-06  Glenn Randers-Pehrson  <glennrp@simple.dallas.tx.us>
    78  
    79  	* docs/*.imdoc: Changed synopses in manpages to add "gm "
    80  	prefix to commands. Updated synopsis for "convert" to agree
    81  	with what's in the "gm" manpage.
    82  
    83  2015-10-05  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
    84  
    85  	* configure.ac: Remove CFLAGS and LDFLAGS deduplication code.
    86  	Resolves SourceForge bug #320 OS X "universal build failure".
    87  
    88  2015-10-04  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
    89  
    90  	* www/index.rst: Updated for 1.3.22 release.
    91  
    92  	* NEWS.txt: Updated for 1.3.22 release.
    93  
    94  2015-09-27  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
    95  
    96  	* NEWS.txt: Brought up to date with changes thus far since last
    97  	release.
    98  
    99  	* magick/blob.c (OpenBlob): Disable fflush() of read-only handle
   100  	under Microsoft Windows, which produced a spurious error status,
   101  	blocking file reads for Visual Studio 2015 on Windows 2012 server.
   102  	Problem was reported and diagnosed by Dirk Lemstra.
   103  
   104  2015-09-19  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   105  
   106  	* tiff: Update bundled libtiff sources to 4.0.6 release.
   107  
   108  	* magick/module.c (InitializeModuleSearchPath): Fix compilation
   109  	problem when UseInstalledMagick is not defined.
   110  
   111  2015-09-13  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   112  
   113  	* coders/xpm.c: Static string/array allocations are now more
   114  	const.
   115  
   116  	* coders/{ps.c, ps2.c, ps3.c}: Static string/array allocations are
   117  	now more const.
   118  
   119  	* coders/palm.c: Palm static arrays should be 'const'.
   120  
   121  	* coders/meta.c (jpeg_embed): Stop sharing writeable static string
   122  	'psheader'.
   123  	(tag_spec): The 'tags' static array should be all 'const'.
   124  
   125  	* coders/jp2.c: Try to reduce the amount of non-const static data.
   126  
   127  	* coders/dcm.c (dicom_info): Try to make dicom_info array more
   128  	'const'.
   129  
   130  	* coders/dpx.c: Eliminate use of static buffer strings.
   131  
   132  	* coders/png.c: Make MNG chunk id strings constant rather than
   133  	initialized data.
   134  
   135  	* magick/render.c (DrawAffineImage): Fix problem that sometimes
   136  	output rows are skipped when using OpenMP.  Problem identification
   137  	and patch by Kevin Matzen.  Resolves SourceForge issue #316
   138  	"-affine sometimes produces output with missing rows".
   139  
   140  2015-08-30  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   141  
   142  	* tests/rwblob.tap: Add specific tests for BMP2 BMP3 subformats.
   143  
   144  	* tests/rwfile.tap: Add specific tests for BMP2 BMP3 PS2 PS3
   145  	subformats.
   146  
   147  2015-08-30  Jaroslav Fojtik  <JaFojtik@seznam.cz>
   148  
   149          * magick/ImageMagick.rc Replace Imagemagick.ico by GraphicsMagick.ico
   150  
   151          * magick/Imagemagick.ico is no longer needed and not referenced anywhere.
   152  
   153  2015-08-22  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   154  
   155  	* README.txt: Fix SourceForge bug 314 "README: bad hg clone URL".
   156  
   157  	* magick/module.c (GetModuleListForDirectory): Fix Coverity 107017
   158  	"Copy into fixed size buffer" and 107013 "Overlapping buffer in
   159  	memory copy".
   160  	(UnloadModule): Fix SourceForge bug 312 "uninitialized variable
   161  	"name" in UnloadModule".
   162  
   163  	* coders/bmp.c (WriteBMPImage): Fix typo in fix on 2015-08-17.
   164  	Fixes Coverity 107014 "Test should be assignment".
   165  
   166  	* magick/module.c (OpenModules): Fix Coverity 107016 "Resource
   167  	leak".
   168  	(GetModuleListForDirectory): Fix Coverity 107015 "Resource leak".
   169  
   170  2015-08-17  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   171  
   172  	* coders/bmp.c (WriteBMPImage): Fix inverted alpha channel when
   173  	writing BGRA8888 format.  Problem was reported by 张铎 via the
   174  	graphicsmagick-help discussion list on 2015-08-17.
   175  
   176  2015-08-10  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   177  
   178  	* magick/attribute.c (GenerateEXIFAttribute): Verify that entry
   179  	pointer is within the metadata buffer in order to avoid buffer
   180  	overflow.  Resolution and patch by Federico Larumbe.
   181  
   182  	* magick/profile.c (SetImageProfile): Avoid crash given NULL
   183  	profile pointer.  Resolution and patch by Federico Larumbe.
   184  
   185  2015-08-09  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   186  
   187  	* magick/attribute.c (GenerateEXIFAttribute): Fix logic problem
   188  	while validating EXIF GPS_OFFSET.  Problem reported by Federico
   189  	Larumbe.
   190  
   191  2015-07-27  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   192  
   193  	* coders/miff.c (ReadMIFFImage): Applied fix
   194  	(http://hg.code.sf.net/u/zacmorris/graphicsmagick/rev/edcc4c184b42)
   195  	by Zac Morris to detect buffer overrun while reading zip
   196  	compressed data.
   197  	(ReadMIFFImage): Fixed some memory leaks which were occuring when
   198  	an exception was thrown from zip-compressed data reader.
   199  
   200  2015-07-26  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   201  
   202  	* coders/tiff.c (WritePTIFImage): Fix SourceForge issue #269
   203  	"Convert creates SubfileType 0x2 instead of 0x1".  From looking at
   204  	the code, this is a regression since the time support for the page
   205  	subfile type was added (probably via changeset 11831
   206  	(037eef0f67f2) on 2007-08-17).
   207  
   208  2015-07-19  Jaroslav Fojtik  <JaFojtik@seznam.cz>
   209  
   210  	* dcraw/dcraw.c: Fixed bad define WIN32.
   211  
   212  2015-07-18  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   213  
   214  	* NEWS.txt, www/Hg.rst, www/index.rst: Applied English bugs patch
   215  	by Amadu Jalloh.
   216  
   217  	* dcraw/dcraw.c: Add a port replacement for strnlen().
   218  
   219  2015-07-14  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   220  
   221  	* wand/magick_wand.h: The declaration for MagickGetImageGravity()
   222  	was missing.  Resolves SourceForge bug #308 magick_wand.h misses
   223  	declaration of MagickGetImageGravity.
   224  
   225  2015-07-12  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   226  
   227  	* dcraw: Update bundled dcraw to release 9.26.0.
   228  
   229  	* png: Updated bundled libpng to release 1.6.17.
   230  
   231  	* lcms: Update bundled lcms2 to release 2.7.
   232  
   233  2015-07-11  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   234  
   235  	* NEWS.txt: Brought up to date with changes thus far since last
   236  	release.
   237  
   238  	* magick/version.h.in (MagickCopyright): Update most recent
   239  	copyright year.
   240  
   241  	* magick/render.c (DrawAffineImage): Fix problem with negative x
   242  	offset.  Resolves SourceForge issue #306 "gm fails to convert svg
   243  	to jpeg if svg has images with negative coordinates".
   244  
   245  	* magick/pixel_cache.c (ReadCachePixels): Add checks for integer
   246  	overflows.
   247  
   248  2015-07-07  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   249  
   250  	* magick/module.c (ModuleAliases): Add a module alias for GRAYA.
   251  
   252  2015-07-05  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   253  
   254  	* magick/montage.c (MontageImages): Fix Coverity 101317 "Resource
   255  	leak".
   256  
   257  	* magick/blob.c: Limit the data size passed to the read/write
   258  	calls to the filesystem blocksize and make multiple calls if
   259  	required.
   260  
   261  	* magick/pixel_cache.c: Limit the data size passed to the
   262  	read/write, pread/prwite calls and make multiple calls if
   263  	required.
   264  
   265  2015-07-04  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   266  
   267  	* magick/blob.c (WriteBlobFile): Properly handle short read. Read
   268  	data in units of filesystem block size.
   269  	(BlobToFile): Write data in units of filesystem block size.
   270  
   271  	* patches: Added directory of patches which may be useful when
   272  	integrating new versions of 3rd-party programs or libraries into
   273  	the VisualMagick build.
   274  
   275  	* libxml: Re-applied libxml changes which were used in prior
   276  	release.
   277  
   278  2015-07-03  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   279  
   280  	* webp: Updated bundled libwebp to release 0.4.3.
   281  
   282  	* ttf: Update bundled freetype to release 2.6.
   283  
   284  	* libxml: Update bundled libxml2 to release 2.9.2.
   285  
   286  	* tiff/VERSION: Update bundled libtiff to release 4.0.4.
   287  
   288  	* magick/nt_base.h (HAVE_TIFFISCODECCONFIGURED): Enable use of
   289  	TIFFIsCODECConfigured in MSVC build.
   290  
   291  	* coders/tiff.c: I am too lazy to modify VisualMagick configure so
   292  	it is possible to include jpeglib.h in tiff.c, so block out this
   293  	low-value code just for MSVC builds.
   294  
   295  2015-06-28  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   296  
   297  	* configure.ac, magick/profile.c: Removed support for lcms 1.X.
   298  	No one should be using a lesser version than lcms 2.0.
   299  
   300  2015-06-23  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   301  
   302  	* magick/blob.c (DisassociateBlob): Applied patch by Dirk Lemstra
   303  	to assure that the image blob is no longer shared with other
   304  	images when the image is written. This helps with thread safety.
   305  
   306  2015-06-14  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   307  
   308  	* magick/command.c: Add/fix utility usage messages for -box,
   309  	-convolve, -gravity, -linewidth, -list, -mattecolor, -render and
   310  	-shave.  Resolves SourceForge issue #302 "MogrifyUsage prints
   311  	incomplete information ".
   312  
   313  2015-06-10  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   314  
   315  	* coders/tiff.c (WriteTIFFImage): Include JPEG headers to obtain
   316  	its BITS_IN_JSAMPLE definition.  This is needed so we can know
   317  	what JPEG depth libtiff supports.
   318  
   319  	* www/index.rst: Add mention of GraphicsMagick having zero defects
   320  	reported by Coverity.
   321  
   322  2015-06-07  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   323  
   324  	* Magick++/lib/STL.cpp (adaptiveThresholdImage): Add a new
   325  	constructor which accepts a 'double' offset value.  The previous
   326  	version of this constructor is deprecated and subject to removal
   327  	in the future.  The size of the class is enlarged to store a
   328  	'double' and so this is a break in the ABI when this class was
   329  	used.  Code using this class should be re-compiled.
   330  
   331  	* Magick++/lib/Image.cpp (adaptiveThreshold): Add a new version of
   332  	this method which accepts a 'double' offset value.  The previous
   333  	version of the method is deprecated and subject to removal in the
   334  	future.  Problem was reported by Dirk Lemstra.
   335  
   336  2015-05-27  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   337  
   338  	* coders/gray.c (ReadGRAYImage): Based on feedback from Glenn,
   339  	return a gray image from the reader, even if a channelized format
   340  	specifier is given.
   341  
   342  2015-05-26  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   343  
   344  	* coders/gray.c (ReadGRAYImage): Fix read glitch caused by
   345  	incorrect memset(). Added missing break statement to switch.
   346  	Added more logging.
   347  	(RegisterGRAYImage): Register "gray" formats R, G, B, C, M, Y, K,
   348  	O such that they are not triggered by file extension.  It is
   349  	necessary to apply a magick prefix to the file name (or set image
   350  	magick in the API) in order to force using these formats.  This
   351  	avoids accidents in case the file extension was used for some
   352  	other purpose.
   353  
   354  2015-05-25  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   355  
   356  	* coders/gray.c: Added support for "GRAYA" format.  Format
   357  	specifiers "R", "G", "B", "A", "C", "M", and "Y" may now be used
   358  	to save and restore the associated channel using the same raw
   359  	format as "GRAY".  These format specifiers were already supported
   360  	but did not appear to serve any useful function.
   361  
   362  2015-05-24  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   363  
   364  	* configure.ac: Improve handling of libxml2 dependencies.  Only
   365  	test for and use libwmflite.  Full-up libwmf is no longer used.
   366  	* configure.ac: Deduplicate CFLAGS and LDFLAGS.
   367  
   368  2015-05-23  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   369  
   370  	* coders/png.c (WriteOnePNGImage): Eliminate a "clobber"
   371  	compilation warning.
   372  
   373  	* coders/jpeg.c (WriteJPEGImage): Eliminate a "clobber"
   374  	compilation warning.
   375  
   376  	* configure.ac: Don't compute libwmf2 and libxml2 linkage path
   377  	based on claimed installation prefix.  This is hoped to improve
   378  	configure reliability on multi-arch type systems.
   379  
   380  2015-05-17  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   381  
   382  	* configure.ac: Use the first -I, -L, and -l arguments produced by
   383  	freetype-config and don't produce arguments based on installation
   384  	prefix.  This is hoped to improve configure reliability on
   385  	multi-arch type systems.
   386  
   387  2015-05-16  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   388  
   389  	* magick/tempfile.c (AcquireTemporaryFileDescriptor): P_tmpdir is
   390  	not an environment variable.  Need to consider Windows environment
   391  	variables for Cygwin.
   392  
   393  	* magick/random.c (InitializeMagickRandomKernel): For Microsoft
   394  	Windows, use CryptGenRandom() to salt the built-in random number
   395  	generator.
   396  
   397  2015-05-13  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   398  
   399  	* magick/utility.c (MagickRandReentrant): Quiet Coverity 10092
   400  	"Calling risky function".
   401  	(MagickRandNewSeed): Quiet Coverity 10093 "Calling risky
   402  	function".
   403  
   404  	* coders/tga.c (ReadTGAImage): Quiet Coverity 10201 "Identical
   405  	code for different branches".
   406  
   407  	* coders/pcx.c (ReadPCXImage): Quiet Coverity 10218 "Identical
   408  	code for different branches".
   409  
   410  2015-05-10  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   411  
   412  	* magick/utility.c (GetGeometry): Fix handling of area geometries
   413  	in the form "5000000@".  Resolves SourceForge issue #299 "-resize
   414  	with @ and > in geometry specification".
   415  
   416  2015-05-09  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   417  
   418  	* coders/tiff.c (WriteTIFFImage): Disable matte channel for
   419  	compression types which don't support it.  Resolves SourceForge
   420  	bug #297 "GM distorts image using -transform".
   421  	(WriteTIFFImage): When type is Optimize, disable matte channel if
   422  	image is opaque.
   423  
   424  2015-05-09  Jaroslav Fojtik  <JaFojtik@seznam.cz>
   425  
   426  	* webp/src/utils/endian_inl.h: Fixed defect in intrinsic function
   427  	byteswap_ulong for Visual Studio less than 2005.
   428  
   429  2015-05-08  Jaroslav Fojtik  <JaFojtik@seznam.cz>
   430  
   431  	* VisualMagick/configure/system_page.cpp,
   432  	VisualMagick/configure/system_page.h: Suppress reloading .vcproj
   433  	when configuration type does not change.
   434  
   435  2015-05-08  Jaroslav Fojtik  <JaFojtik@seznam.cz>
   436  
   437  	* VisualMagick/configure/system_page.cpp,
   438  	VisualMagick/configure/system_page.h,
   439  	VisualMagick/configure/target_page.h: Ability to re-use already
   440  	given paths. It is highly frustrating to enter path for different
   441  	configurations again and again.
   442  
   443  2015-05-07  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   444  
   445  	* coders/vid.c (ReadVIDImage): Fix use of uninitialized variable
   446  	reported by MSVC 2003 (but not GCC, Clang, or Coverity).
   447  
   448  2015-05-05  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   449  
   450  	* coders/miff.c (ReadMIFFImage): Fix possible leak of profiles in
   451  	error path.
   452  
   453  	* coders/mpc.c (ReadMPCImage): Fix memory leak of values
   454  	allocation.
   455  	(ReadMPCImage): Fix possible leak of profiles in error path. Fixes
   456  	Coverity 80697 "Resource leak".
   457  
   458  2015-05-04  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   459  
   460  	* coders/miff.c (ReadMIFFImage): Fix memory leak of values
   461  	allocation.
   462  
   463  2015-05-03  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   464  
   465  	* coders/dpx.c (ReadDPXImage): Hopefully quiet Coverity 10305
   466  	"Untrusted loop bound".
   467  
   468  	* coders/tga.c (ReadTGAImage): Hopefully quiet Coverity 53418
   469  	"Untrusted loop bound".
   470  
   471  	* magick/tempfile.c (AcquireTemporaryFileDescriptor): Eliminate
   472  	all use of operating system provided temporary file allocation
   473  	functions (all apparently flawed in one way or another) and rely
   474  	exclusively on our own implementation.
   475  
   476  	* magick/constitute.c (ConstituteImage): Quiet Coverity 53399
   477  	"Logically dead code".
   478  
   479  	* coders/webp.c (ReadWEBPImage): Quiet Coverity 53400 "Logically dead
   480  	code".
   481  
   482  	* coders/miff.c (WriteRunlengthPacket): More work to quiet
   483  	Coverity 10186 and 10214 "Missing break in switch".
   484  
   485  2015-05-02  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   486  
   487  	* magick/tempfile.c (AcquireTemporaryFileDescriptor): Thoroughly
   488  	vet temporary file path.  Might quiet Coverity 64613 "Use of
   489  	untrusted string value".
   490  
   491  	* wand/magick_compat.c (ParseGeometry): Another try at quieting
   492  	Coverity 10248 "Copy into fixed size buffer" and 10078
   493  	"Overlapping buffer in memory copy" in this dead code.
   494  
   495  	* magick/tempfile.c (AcquireTemporaryFileDescriptor): Remove
   496  	unneeded, almost certainly never used, and potentially insecure
   497  	use of mkstemp().  Will quiet Coverity 10315 "Insecure temporary
   498  	file".
   499  
   500  2015-04-30  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   501  
   502  	* configure.ac: Keep Ghostscript gibberish from appearing in
   503  	Configure output.
   504  
   505  	* coders/miff.c (WriteRunlengthPacket): Quiet Coverity 10186 and
   506  	10214 "Missing break in switch".
   507  
   508  	* magick/pixel_cache.c (GetCacheInfo): Quiet Coverity 10208 "Data
   509  	race condition".
   510  
   511  	* magick/blob.c (CloneBlobInfo): Quiet Coverity 10188 "Data race
   512  	condition".
   513  	(GetBlobInfo): Quiet Coverity 10191 "Data race condition".
   514  
   515  	* magick/image.c (AllocateImage): Quiet Coverity 10196 "Data race
   516  	condition".
   517  	(CloneImage): Quiet Coverity 10206 "Data race condition".
   518  
   519  	* magick/map.c (MagickMapAllocateMap): Quiet Coverity 10192, 10193
   520  	and 10228 "Data race condition".
   521  
   522  	* configure.ac: Use an algorithm to try to discover the best value
   523  	for GSCMYKDevice.
   524  
   525  	* VisualMagick/bin/delegates.mgk: Recipe for 'gs-cmyk' contained a
   526  	typo which breaks using '-type ColorSeparation'.
   527  
   528  	* coders/pwp.c (ReadPWPImage): Fix Coverity CID 64491 "Integer
   529  	handling issues".
   530  
   531  2015-04-29  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   532  
   533  	* coders/xcf.c (load_tile_rle): Quiet Coverity 10259 "Untrusted
   534  	loop bound".
   535  
   536  	* coders/sct.c (ReadSCTImage): Quiet Coverity 10285 "Untrusted
   537  	loop bound".
   538  
   539  	* coders/pwp.c (ReadPWPImage): Quiet Coverity 10299 "Untrusted
   540  	loop bound".
   541  
   542  	* coders/pcd.c (ReadPCDImage): Quiet Coverity 10301 "Untrusted
   543  	loop bound".
   544  
   545  	* coders/tga.c (ReadTGAImage): Quiet Coverity 53418 "Untrusted
   546  	loop bound".
   547  
   548  	* wand/magick_compat.c (ParseGeometry): Fix overlap strcpy() in
   549  	dead code.  Quiets Coverity 10078 "Overlapping buffer in memory
   550  	copy" and 10248 "Copy into fixed size buffer".
   551  
   552  	* magick/segment.c (Classify): Fix Coverity 64317 "Resource leak".
   553  
   554  2015-04-28  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   555  
   556  	* coders/xcf.c (ReadXCFImage): Fix Coverity 64064 "Resource leak".
   557  
   558  	* coders/txt.c (ReadTXTImage): Fix Coverity 64061 "Resource leak".
   559  
   560  	* coders/rla.c (ReadRLAImage): Fix Coverity 64063 "Resource leak".
   561  
   562  	* coders/dib.c (ReadDIBImage): Fix Coverity 64057 Resource leak".
   563  
   564  	* magick/segment.c (Classify): Fix Coverity 64056 "Resource leak".
   565  
   566  	* magick/resize.c (SampleImage): Fix Coverity 64053, 64054, and
   567  	64062 "Resource leak".
   568  
   569  	* magick/render.c (TraceStrokePolygon): Fix Coverity 64055, 64059,
   570  	and 64060 "Resource leak".
   571  
   572  	* magick/magick.c (ListModuleMap): Quiet Coverity 64058 "Resource
   573  	leak".
   574  
   575  2015-04-28  Glenn Randers-Pehrson  <glennrp@simple.dallas.tx.us>
   576  
   577  	* coders/dpx.c: Fix Coverity 10305 "Untrusted loop bound".
   578  
   579  	* coders/cineon.c: Fix Coverity 10310 "Untrusted loop bound".
   580  
   581  2015-04-27  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   582  
   583  	* magick/memory.c: All use of user-provided allocation functions
   584  	is done via MagickFree(), MagickMalloc(), and MagickRealloc().
   585  
   586  2015-04-26  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   587  
   588  	* magick/colormap.c (MagickConstrainColormapIndex): For out of
   589  	range condition, specifically return 0 rather than setting index
   590  	to zero, and then returning index.
   591  
   592  	* coders/pcx.c (ReadPCXImage): Fix Coverity 10197 "Negative loop
   593  	bound".
   594  
   595  	* coders/map.c (ReadMAPImage): Allocate pixels after return case
   596  	for 'ping' mode.
   597  	(ReadMAPImage): Fix problem added in last commit due to multiple
   598  	uses of 'packet_size'.
   599  
   600  	* magick/floats.c (_Gm_convert_fp16_to_fp32)
   601  	(_Gm_convert_fp24_to_fp32): Fix Coverity 10094 "Logically dead
   602  	code".
   603  
   604  	* coders/pcx.c (ReadPCXImage): Fix Coverity 10197 "Negative loop
   605  	bound".
   606  
   607  	* coders/wpg.c (UnpackWPG2Raster): Always test for EOF from
   608  	ReadBlobByte().  Should fix Coverity 10205 "Negative loop bound".
   609  
   610  2015-04-25  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   611  
   612  	* coders/pcx.c (ReadPCXImage): Add some more integer-overflow
   613  	safety to computations.  Add some casts.
   614  
   615  	* coders/meta.c (formatIPTC): Fix Coverity 10221 "Infinite loop".
   616  
   617  	* magick/attribute.c (GenerateEXIFAttribute): Fix Coverity 10320
   618  	"Untrusted array index read" and "Untrusted loop bound".
   619  
   620  2015-04-24  Glenn Randers-Pehrson  <glennrp@simple.dallas.tx.us>
   621  
   622  	* coders/gif.c (ReadGIFImage): Attempt to fix Coverity issue
   623  	10284 by using "opacity = (header[3] & 0xff)".
   624  
   625  2015-04-23  Glenn Randers-Pehrson  <glennrp@simple.dallas.tx.us>
   626  
   627  	* magick/blob.c (ReadBlobMSBLong, ReadBlobLSBLong): Attempt
   628  	to fix various "tainted" or "untrusted" variables
   629  	by masking off all but the lower 32 bits returned.
   630  
   631  2015-04-23  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   632  
   633  	* coders/xcf.c (ReadXCFImage): Fix Coverity 10216 "Integer
   634  	overflowed argument".
   635  
   636  	* magick/transform.c (FlipImage): Fix Coverity 61461 "Division or
   637  	modulo by zero".
   638  
   639  	* coders/gif.c: Protect against integer overflow in array size
   640  	calculations.  Used unsigned type for colormap index.
   641  
   642  2015-04-22  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   643  
   644  	* coders/map.c (ReadMAPImage): Maybe quiet Coverity 10326
   645  	"Untrusted pointer read".
   646  
   647  	* magick/utility.c (GlobExpression): See if testing for null
   648  	terminating character quiets Coverity 10246 "Untrusted value as
   649  	argument".
   650  
   651  	* magick/transform.c (FlipImage): Possibly quiet case #4 of
   652  	Coverity 10311 "Untrusted value as argument".
   653  
   654  	* magick/utility.c (Base64Encode): Quiet Coverity 10296 and 10272
   655  	"Use of untrusted scalar value".
   656  
   657  2015-04-22  Glenn Randers-Pehrson  <glennrp@simple.dallas.tx.us>
   658  
   659  	* magick/blob.c (ReadBlobMSBShort, ReadBlobLSBShort): Attempt
   660  	to fix various "tainted" or "untrusted" variables, e.g., in
   661  	coders/gif.c and coders/sgi.c by masking off all but the lower
   662  	16 bits returned.
   663  
   664  2015-04-21  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   665  
   666  	* coders/tim.c (ReadTIMImage): Make TIM reader more robust against
   667  	EOF.
   668  
   669  	* coders/sct.c (ReadSCTImage): Make SCT reader more robust against
   670  	EOF.
   671  
   672  	* coders/pwp.c (ReadPWPImage): Test loop for EOF.
   673  
   674  	* coders/otb.c (ReadOTBImage): Make error reporting a bit more
   675  	robust.
   676  
   677  	* coders/jnx.c (ExtractTileJPG): Add some EOF checks.
   678  
   679  	* coders/cut.c (ReadCUTImage): Limit width/height to range of
   680  	signed integer.
   681  
   682  	* tests/rwfile.tap: Add a R/W file test for ART.
   683  
   684  	* tests/rwblob.tap: Add a R/W blob test for ART.
   685  
   686  	* coders/art.c (ReadARTImage): Improve error checking.
   687  
   688  2015-04-20  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   689  
   690  	* coders/sun.c (ReadSUNImage): Try to quench Coverity 10280
   691  	"Untrusted loop bound".
   692  
   693  	* coders/mpc.c (ReadMPCImage): Port MIFF header reading fixes.
   694  
   695  2015-04-19  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   696  
   697  	* coders/miff.c (ReadMIFFImage): MIFF reader failed to read some
   698  	MIFF headers properly.  Fixes SourceForge issue #298 "invalid next
   699  	size (normal)/memory corruption".
   700  
   701  2015-04-18  Glenn Randers-Pehrson  <glennrp@simple.dallas.tx.us>
   702  
   703  	* coders/png.c (ReadMNGImage): Fix Coverity 55862 "Resource leak"
   704  	and quiet Coverity 55825, 55826, and 55827 "Data race condition".
   705  
   706  2015-04-18  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   707  
   708  	* magick/utility.c (GetToken): Fix an overlapping strlcpy() which
   709  	caused a crash in pedantic strlcpy() implementations while parsing
   710  	a SVG-style URL from text.  Several other issues remain.
   711  
   712  2015-04-16  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   713  
   714  	* magick/command.c (ParseUnixCommandLine): Fix Coverity 59256
   715  	"Unused value".
   716  
   717  2015-04-15  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   718  
   719  	* magick/display.c (MagickXROIImage): Fix Coverity 10179 "Missing
   720  	break in switch".
   721  	(MagickXCropImage): Fix Coverity 10211 "Missing break in switch".
   722  
   723  	* magick/utility.c (Base64Decode): Fix Coverity 10203 "Missing
   724  	break in switch".
   725  	(Tokenizer): Quench Coverity 10182 "Missing break in switch".  Not
   726  	believed to be an actual problem.
   727  
   728  	* magick/command.c (ParseUnixCommandLine): Fix Coverity 10174 and
   729  	10178 "Missing break in switch".
   730  	(ProcessBatchOptions): Fix Coverity 10180 "Missing break in
   731  	switch".
   732  	(ParseWindowsCommandLine): Fix Coverity 10220 "Missing break in
   733  	switch".
   734  
   735  	* coders/xwd.c (ReadXWDImage): Fix Coverity 10095 "Division or
   736  	modulo by zero".  3rd try.
   737  
   738  2015-04-14  Glenn Randers-Pehrson  <glennrp@simple.dallas.tx.us>
   739  
   740  	* coders/png.c (ReadOneJNGImage): Fix Coverity 55829 and 55846
   741  	"Resource leak".
   742  
   743  2015-04-13  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   744  
   745  	* magick/quantize.c (GrayscalePseudoClassImage): Fix Coverity
   746  	55831 "Resource leak".  2nd try.
   747  
   748  	* coders/vid.c (ReadVIDImage): Fix Coverity 55868 and 55874
   749  	"Resource leak".  2nd try.
   750  
   751  2015-04-12  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   752  
   753  	* coders/psd.c (ReadPSDImage): Fix Coverity 55855 "Resource
   754  	leak". 2nd try.
   755  
   756  	* coders/pict.c (PictPixmapOp): Fix Coverity 55875 and 55883
   757  	"Resource leak". 2nd try.
   758  
   759  	* coders/pcx.c (WritePCXImage): Fix Coverity 55877 "Resource
   760  	leak". 2nd try.
   761  
   762  	* coders/meta.c (format8BIM): Fix Coverity 55842 "Resource
   763  	leak". 2nd try.
   764  
   765  	* coders/mat.c (WriteMATLABImage): Fix Coverity 55850 "Resource
   766  	leak". 2nd try.
   767  
   768  	* coders/dpx.c (ReadDPXImage): Fix Coverity 55878 "Resource leak".
   769  	2nd try.
   770  
   771  	* coders/preview.c (WritePreviewImage): Fix Coverity 55988
   772  	"Resource leak".
   773  
   774  2015-04-12  Glenn Randers-Pehrson  <glennrp@simple.dallas.tx.us>
   775  
   776  	* coders/png.c (ReadOneJNGImage): Avoid some memory leaks
   777  	newly reported by Coverity (work in progress)
   778  
   779  2015-04-12  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   780  
   781  	* magick/resize.c (ScaleImage): Fix Coverity 55824 "Division or
   782  	modulo by float zero".
   783  
   784  	* magick/annotate.c (AnnotateImage): Fix Coverity 55863
   785  	"Uninitialized scalar variable".
   786  
   787  	* wand/magick_wand.c (MagickDrawImage): Fix Coverity 55828
   788  	"Resource leak".
   789  	(MagickMontageImage): Fix Coverity 55835 "Resource leak".
   790  
   791  	* wand/drawing_wand.c (DrawComposite): Fix Coverity 55849
   792  	"Resource leak".
   793  
   794  	* magick/widget.c (MagickXColorBrowserWidget): Fix Coverity 55854
   795  	"Resource leak".
   796  
   797  	* magick/resize.c (ScaleImage): Fix Coverity 55841, 55853, 55858,
   798  	and 55860 "Resource leak".
   799  
   800  	* magick/render.c (ConvertPathToPolygon): Fix Coverity 55836
   801  	"Resource leak".
   802  	(DrawDashPolygon): Fix Coverity 55837 "Resource leak".
   803  
   804  	* magick/quantize.c (GrayscalePseudoClassImage): Fix Coverity
   805  	55831 "Resource leak".
   806  
   807  	* magick/paint.c (ColorFloodfillImage): Fix Coverity 55886
   808  	"Resource leak".
   809  
   810  	* magick/map.c (MagickMapAddEntry): Possibly silence 55844
   811  	"Resource leak".
   812  
   813  	* magick/image.c (CloneImage): Fix Coverity 55833 "Resource leak".
   814  
   815  	* magick/effect.c (BlurImage): Fix Coverity 55851 "Resource leak".
   816  
   817  	* magick/display.c (MagickXAnnotateEditImage): Fix Coverity 55830
   818  	"Resource leak".
   819  	(MagickXVisualDirectoryImage): Fix Coverity 55894 "Resource leak".
   820  
   821  	* magick/constitute.c (ReadImages): Fix Coverity 55834 "Resource
   822  	leak".
   823  	(ReadInlineImage): Fix Coverity 55843 "Resource leak".
   824  
   825  	* magick/compress.c (HuffmanEncode2Image): Fix Coverity 55839
   826  	"Resource leak".
   827  	(HuffmanDecodeImage): Fix Coverity 55859 "Resource leak".
   828  
   829  	* magick/color.c (GetColorHistogram): Fix Coverity 55845 "Resource
   830  	leak".
   831  	(ComputeCubeInfo): Fix Coverity 55857 "Resource leak".
   832  
   833  	* coders/yuv.c (ReadYUVImage): Fix Coverity 55890 "Resource leak".
   834  
   835  	* coders/wpg.c (UnpackWPG2Raster): Fix Coverity 55832 and 55848
   836  	"Resource leak".
   837  
   838  2015-04-11  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   839  
   840  	* coders/vid.c (ReadVIDImage): Fix Coverity 55868 "Resource leak"
   841  	(ReadVIDImage): Fix Coverity 55874 "Resource leak".
   842  
   843  	* coders/txt.c (ReadTXTImage): Fix Coverity 55866 "Resource leak".
   844  
   845  	* coders/topol.c (ReadTOPOLImage): Fix Coverity 55865 "Resource
   846  	leak".
   847  
   848  	* coders/sgi.c (WriteSGIImage): Fix Coverity 55891 "Resource leak".
   849  
   850  	* coders/psd.c (ReadPSDImage): Fix Coverity 55855 "Resource leak".
   851  
   852  	* coders/pict.c (WritePICTImage): Fix Coverity 55867, 55875, 55883
   853  	"Resource leak".  Fix Coverity 55892 "Resource leak".
   854  
   855  	* coders/pdb.c (ReadPDBImage): Fix Coverity 55840, 55856, and
   856  	55885 "Resource leak".
   857  
   858  	* coders/pcx.c (WritePCXImage): Fix Coverity 55877 "Resource
   859  	leak".
   860  
   861  	* coders/mvg.c (ReadMVGImage): Fix Coverity 55873 "Resource leak".
   862  
   863  	* coders/mpeg.c (WriteMPEGImage): Fix Coverity 55880 "Resource
   864  	leak".
   865  
   866  	* coders/miff.c (WriteMIFFImage): Fix Coverity 55864 "Resource
   867  	leak".
   868  	(WriteMIFFImage): Fix Coverity 55872 "Resource leak".
   869  
   870  	* coders/meta.c (formatIPTCfromBuffer): Fix Coverity 55838
   871  	"Resource leak".
   872  	(format8BIM): Fix Coverity 55842 and 55852 "Resource leak".
   873  	(formatIPTC): Fix Coverity 5882 "Resource leak".
   874  
   875  	* coders/mat.c (ReadMATImage): Fix Coverity 55850 "Resource leak".
   876  
   877  	* coders/map.c (ReadMAPImage): Fix Coverity 55876 "Resource leak".
   878  
   879  	* coders/logo.c (ReadLOGOImage): Fix Coverity 55870 "Resource
   880  	leak".
   881  
   882  	* coders/label.c (ReadLABELImage): Fix Coverity 55869 "Resource
   883  	leak".
   884  
   885  	* coders/icon.c (ReadIconImage): Fix Coverity 55887 "Resource
   886  	leak".
   887  
   888  	* coders/fits.c (WriteFITSImage): Fix Coverity 55884 "Resource
   889  	leak".
   890  
   891  	* coders/dpx.c (WriteDPXImage): Fix Coverity 55861 "Resource
   892  	leak".
   893  	(ReadDPXImage): Fix Coverity 55878 "Resource leak".
   894  	(ReadDPXImage): Fix Coverity 55879 "Resource leak".
   895  
   896  	* coders/dib.c (WriteDIBImage): Fix Coverity 55881 "Resource
   897  	leak".
   898  	(WriteDIBImage): Fix Coverity 55895 "Resource leak".
   899  
   900  	* coders/cut.c (ReadCUTImage): Fix Coverity 55893 "Resource leak".
   901  
   902  	* coders/caption.c (ReadCAPTIONImage): Fix Coverity 55888
   903  	"Resource leak".
   904  	(ReadCAPTIONImage): Fix Coverity 55889 "Resource leak".
   905  	(ReadCAPTIONImage): Fix Coverity 55896 "Resource leak".
   906  
   907  	* magick/annotate.c (RenderX11): Silence Coverity 10106 "Logically
   908  	dead code".
   909  
   910  	* coders/xcf.c: Silence Coverity 10224, 10233, and 10236 "Improper
   911  	use of negative value".
   912  
   913  	* coders/mat.c (ReadMATImage): Silence Coverity 10175 "Improper
   914  	use of negative value"
   915  
   916  	* coders/tga.c (ReadTGAImage): Silence Coverity 10088 "Operands
   917  	don't affect result".
   918  
   919  	* magick/annotate.c (RenderFreetype): Silence Coverity 14396 and
   920  	44755 "Unused value".
   921  
   922  	* coders/wpg.c (LoadWPG2Flags): Silence Coverity 10273 and 10253
   923  	"Unused value".
   924  
   925  	* magick/montage.c (MontageImages): Silence Coverity 10255 "Unused
   926  	value".
   927  	(MontageImages): Silence Coverity 10264 "Unused value".
   928  
   929  2015-04-09  Glenn Randers-Pehrson  <glennrp@simple.dallas.tx.us>
   930  
   931  	* coders/png.c (ReadOneJNGImage): Avoid using a NULL alpha_image
   932  	or color_image. (ReadJNGImage): Removed an extraneous CloseBlob().
   933  
   934  2015-04-08  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   935  
   936  	* magick/utility.c (MagickCreateDirectoryPath): Silence Coverity
   937  	10098 "Logically dead code".
   938  
   939  	* magick/resource.c (InitializeMagickResources): Silence Coverity
   940  	10101 "Logically dead code".
   941  
   942  	* magick/magick.c (MagickSignalHandlerMessage): Fix Coverity 44725
   943  	"Logically dead code".
   944  
   945  	* magick/log.c (DestroyLogInfo): Silence Coverity 53659 and 53661
   946  	"Data race condition".
   947  	(ReadLogConfigureFile): Silence Coverity 53660 "Data race
   948  	condition".
   949  
   950  	* magick/effect.c (DespeckleImage): Fix error handling issue
   951  	caused by shadowed variable.  Fixes Coverity 10099 "Logically dead
   952  	code".
   953  
   954  	* magick/command.c (TimeImageCommand): Fix Coverity 10097
   955  	"Logically dead code".
   956  
   957  	* magick/attribute.c (ReadMSBLong): Hopefully silence Coverity
   958  	10276 "Unintended sign extension".
   959  
   960  	* coders/sgi.c (ReadSGIImage, WriteSGIImage): Fix Coverity 10243,
   961  	10244, 10247, 10254, and 10294 "Unintended sign extension".
   962  
   963  2015-04-07  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   964  
   965  	* magick/xwindow.c (MagickXMakeImage): Quiet Coverity 10282
   966  	"Unused value".
   967  
   968  2015-04-06  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   969  
   970  	* coders/tiff.c (WriteTIFFImage): Another change targeting
   971  	Coverity 44742 and 44746 "Unintended sign extension".
   972  
   973  2015-04-05  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
   974  
   975  	* magick/render.c (TracePath): Fix Coverity 10258 "Uninitialized
   976  	scalar variable".
   977  
   978  	* magick/widget.c (MagickXFontBrowserWidget): Fix Coverity 10323
   979  	"Sizeof not portable".  2nd try.
   980  
   981  	* coders/xwd.c (ReadXWDImage): Fix Coverity 10095, 10100, 10104
   982  	"Division or modulo by zero".  2nd try.
   983  
   984  	* magick/analyze.c (GetImageCharacteristics): Fix Coverity 10096
   985  	"Logically dead code".
   986  
   987  	* coders/yuv.c (ReadYUVImage): Fix Coverity 10260 "Structurally
   988  	dead code".
   989  
   990  	* coders/xcf.c (ReadXCFImage): Fix Coverity 10226 "Missing break
   991  	in switch".
   992  
   993  	* coders/tim.c (ReadTIMImage): Fix Coverity 10249 "Unused value".
   994  
   995  	* coders/tiff.c (CompressionSupported): Fix Coverity 44723
   996  	"Logically dead code".
   997  	(WriteTIFFImage): Fix Coverity 44742 and 44746 "Unintended sign
   998  	extension".
   999  
  1000  	* coders/ps3.c (WritePS3Image): Validate results from TellBlob()
  1001  	and SeekBlob().  Should quiet Coverity 10198 "Improper use of
  1002  	negative value".
  1003  
  1004  	* coders/ps2.c (WritePS2Image): Validate results from TellBlob()
  1005  	and SeekBlob().  Should quiet Coverity 10230 "Improper use of
  1006  	negative value".
  1007  
  1008  	* coders/mpeg.c (WriteMPEGImage): Quiet Coverity 10176 "Missing
  1009  	break in switch".
  1010  
  1011  	* coders/map.c (WriteMAPImage): Make MAP reader/writer more
  1012  	robust.  May quiet 10326 "Untrusted pointer read".
  1013  
  1014  	* coders/locale.c (ReadLOCALEImage): Quiet Coverity 10108
  1015  	"Logically dead code".
  1016  
  1017  	* coders/rle.c: Make URT RLE reader more robust.  Should quiet
  1018  	Coverity CID 10070 "Bad bit shift operation", as well as 10235
  1019  	"Improper use of negative value".
  1020  
  1021  2015-04-04  Glenn Randers-Pehrson  <glennrp@simple.dallas.tx.us>
  1022  
  1023  	* coders/png.c (WriteOneJNGImage): Quiet Coverity CID issue 14370,
  1024  	"Unused value" (status was ignored).
  1025  
  1026  	* coders/png.c (ReadOneJNGImage): Quiet Coverity CID issue 44724,
  1027  	"Logically dead code" (skip_to_iend can't be true).
  1028  
  1029  	* coders/png.c (ReadOnePNGImage): Attempt to quiet Coverity
  1030  	CID 10232 "Missing unlock", by using png_error() instead of
  1031  	throwing an exception.
  1032  
  1033  2015-04-04  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  1034  
  1035  	* coders/xwd.c (ReadXWDImage): Fix Coverity 10104 "Division or
  1036  	modulo by zero".
  1037  
  1038  	* magick/resize.c (ResizeImage): Fix Coverity 53404 "Division or
  1039  	modulo by zero".
  1040  
  1041  	* coders/ps3.c (WritePS3MaskImage): Fix Coverity 53415 "Improper
  1042  	use of negative value".
  1043  
  1044  	* coders/meta.c (parse8BIM): Fix Coverity 53413 "Improper use of
  1045  	negative value".
  1046  	(parse8BIMW): Fix Coverity 53414 "Improper use of negative value".
  1047  
  1048  	* magick/utility.c (GetMagickGeometry): Fix Coverity 53403 and
  1049  	53405 "Division or modulo by float zero".
  1050  	(GetPathComponent): Fix Coverity 53417 "Wrong sizeof argument.
  1051  
  1052  	* magick/quantize.c (GrayscalePseudoClassImage): Fix Coverity
  1053  	10256 "Wrong sizeof argument".
  1054  
  1055  	* magick/image.c (ResetImagePage): Fix Coverity 53401 "Division or
  1056  	modulo by float zero" and 53402 "Division or modulo by float
  1057  	zero".
  1058  
  1059  	* coders/histogram.c (WriteHISTOGRAMImage): Silence Coverity 10107
  1060  	"Division or modulo by float zero".  2nd try.
  1061  
  1062  	* magick/xwindow.c (MagickXImportImage): Silence Coverity 10207
  1063  	"Array compared against 0".
  1064  
  1065  	* magick/widget.c (MagickXColorBrowserWidget): Silence Coverity
  1066  	53406 "Identical code for different branches".
  1067  	(MagickXListBrowserWidget): Silence Coverity 53407 "Identical code
  1068  	for different branches".
  1069  
  1070  	* magick/animate.c (MagickXMagickCommand): Silence Coverity 53410
  1071  	"Identical code for different branches".
  1072  
  1073  	* coders/rgb.c (WriteRGBImage): Silence Coverity 53409 "Identical
  1074  	code for different branches".
  1075  
  1076  	* coders/cmyk.c (WriteCMYKImage): Silence Coverity 53408
  1077  	"Identical code for different branches".
  1078  
  1079  	* magick/xwindow.c (MagickXMakeImage): Silence Coverity 44727
  1080  	"Dereference after null check".  2nd try.
  1081  
  1082  	* magick/utility.c (EscapeString): Silence Coverity 53416
  1083  	"Dereference before null check".
  1084  
  1085  	* coders/gif.c (WriteGIFImage): Fix Coverity 10219 "Dereference
  1086  	null return value".
  1087  
  1088  	* magick/log.c (InitializeLogInfo): Hopefully silence Coverity
  1089  	53411 and 53412 "Data race condition".
  1090  
  1091  	* coders/cineon.c (AttributeToString): Silence Coverity 10079
  1092  	"Buffer not null terminated".  2nd try.  The buffer is not
  1093  	required to be null terminated!
  1094  
  1095  	* coders/pict.c (ReadPICTImage): 10171 "Resource leak".  2nd try.
  1096  
  1097  	* coders/wmf.c (util_set_brush): Silence Coverity 44739
  1098  	"Out-of-bounds access".  2nd try.
  1099  
  1100  2015-03-29  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  1101  
  1102  	* magick/log.c (SetLogEventMask): Silence Coverity 10069 "Value
  1103  	not atomically updated".  Logging initialization is done
  1104  	single-threaded entirely in InitializeLogInfo() now.
  1105  
  1106  2015-03-28  Glenn Randers-Pehrson  <glennrp@simple.dallas.tx.us>
  1107  
  1108  	* coders/png.c (ReadOnePNGImage): Attempt to quiet Coverity
  1109  	44734 "Data race condition" by freeing mng_info->png_pixels
  1110  	and mng_info->quantum_scanline separately from MngInfoFreeStruct.
  1111  
  1112  2015-03-28  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  1113  
  1114  	* magick/widget.c (XEditText): Silence Coverity 10072 "Overlapping
  1115  	buffer in memory copy"
  1116  
  1117  	* coders/locale.c (ReadConfigureFile): Silence Coverity 10075
  1118  	"Overlapping buffer in memory copy".
  1119  
  1120  	* magick/xwindow.c (MagickXMakeWindow): Silence Coverity 10076
  1121  	"Overlapping buffer in memory copy".
  1122  
  1123  	* coders/dcm.c (funcDCM_TransferSyntax): Silence Coverity 10083
  1124  	"Unchecked return value".
  1125  
  1126  	* magick/static.c (ExecuteStaticModuleProcess): Silence Coverity
  1127  	10082 "Unchecked return value".
  1128  
  1129  	* coders/cals.c (ReadCALSImage): Silence Coverity 10086 "Unchecked
  1130  	return value from library".
  1131  	(ReadCALSImage): Silence Coverity 10085 "Unchecked return value".
  1132  	(ReadCALSImage): Silence Coverity 10084 "Unchecked return value
  1133  	from library".
  1134  
  1135  	* magick/enhance.c (ModulateImage): Silence Coverity 10087
  1136  	"Unchecked return value".
  1137  
  1138  2014-03-24  Jaroslav Fojtik  <JaFojtik@seznam.cz>
  1139  
  1140          * coders/wpg.c More paranoa in checking ReadBlobByte() negative return.
  1141  
  1142  2015-03-23  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  1143  
  1144  	* magick/attribute.c (Generate8BIMAttribute): Silence Coverity
  1145  	10195 "Argument cannot be negative".
  1146  
  1147  	* Magick++/lib/Image.cpp (syncPixels): Silence Coverity 44722
  1148  	"Unchecked return value".
  1149  	(fontTypeMetrics): Silence Coverity 44721 "Unchecked return
  1150  	value".
  1151  
  1152  	* magick/render.c (ConvertPathToPolygon): Silence Coverity 10120
  1153  	"Dereference after null check".
  1154  
  1155  	* magick/effect.c (EmbossImage): Silence Coverity 10114
  1156  	"Dereference after null check".
  1157  	(AdaptiveThresholdImage): Silence Coverity 10118 "Explicit null
  1158  	dereferenced".
  1159  
  1160  	* coders/msl.c (MSLPushImage): Silence Coverity 10128 "Dereference
  1161  	after null check".
  1162  
  1163  	* magick/render.c (DrawPolygonPrimitive): Silence Coverity 10136
  1164  	"Dereference after null check".
  1165  
  1166  	* wand/drawing_wand.c (DrawSetStrokeDashArray): Silence Coverity
  1167  	10117 "Dereference after null check".
  1168  
  1169  	* magick/draw.c (DrawSetStrokeDashArray): Silence Coverity 10150
  1170  	"Dereference after null check".
  1171  
  1172  	* wand/drawing_wand.c (DrawPushGraphicContext): Silence Coverity
  1173  	10151 "Dereference after null check".
  1174  
  1175  2015-03-22  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  1176  
  1177  	* coders/meta.c (parse8BIM): Silence Coverity 10159 "Explicit null
  1178  	dereferenced".
  1179  	(parse8BIMW): Silence Coverity 10144 "Explicit null dereferenced".
  1180  
  1181  	* coders/uil.c (WriteUILImage): Silence Coverity 10202
  1182  	"Dereference after null check".  In fact, UIL output was not
  1183  	working at all due to this bug.
  1184  
  1185  	* magick/xwindow.c (MagickXMakeImage): Silence Coverity 44727
  1186  	"Dereference after null check".
  1187  
  1188  	* Magick++/lib/Image.cpp (colorMapSize): Silence Coverity 44728
  1189  	"Dereference after null check".
  1190  
  1191  	* coders/vid.c (ReadVIDImage): Silence Coverity 44730 "Explicit
  1192  	null dereferenced".
  1193  
  1194  	* coders/mpc.c (ReadMPCImage): Silence Coverity 44732 "Dereference
  1195  	after null check".
  1196  
  1197  	* Magick++/lib/Image.cpp (signature): Silence Coverity 44735
  1198  	"Dereference null return value".
  1199  
  1200  	* coders/ps.c (ReadPSImage): Ghostscript options concatenation
  1201  	should be more secure against buffer overflow.
  1202  
  1203  	* coders/pdf.c (ReadPDFImage): Applied patch by Chris Gilling such
  1204  	that '-define pdf:stop-on-error=true' will stop PDF processing
  1205  	immediately upon an error.
  1206  	(ReadPDFImage): Ghostscript options concatenation should be more
  1207  	secure against buffer overflow.
  1208  
  1209  2015-03-19  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  1210  
  1211  	* magick/animate.c (MagickXAnimateImages): Silence Coverity 44736
  1212  	"Dereference null return value".  Also fixed apparent memory leak
  1213  	that Coverity did not notice.
  1214  
  1215  	* coders/fits.c (ReadFITSImage): Silence Coverity 10209
  1216  	"Dereference before null check".
  1217  
  1218  	* magick/color_lookup.c (ReadColorConfigureFile): Silence Coverity
  1219  	44743 "Dereference before null check".
  1220  
  1221  	* magick/xwindow.c (MagickXMakeImage): Silence Coverity 44745
  1222  	"Dereference before null check".
  1223  
  1224  	* coders/pict.c (ReadPICTImage): Hopefully address consequences of
  1225  	Coverity 10292 "Untrusted loop bound" although it will likely
  1226  	still complain.
  1227  
  1228  	* magick/utility.c (LocaleCompare, LocaleNCompare): Try to create
  1229  	an implementation that Coverity won't label an "tainted sink", and
  1230  	therefore result in a Coverity "Use of untrusted scalar value"
  1231  	report whenever a string from an external source is compared.  The
  1232  	original implementations are not believed to be faulty.
  1233  
  1234  2015-03-17  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  1235  
  1236  	* magick/command.c (ProcessBatchOptions): Silence Coverity 10080
  1237  	"Buffer not null terminated".
  1238  
  1239  	* magick/widget.c (MagickXConfirmWidget): Silence Coverity 10089
  1240  	"Copy-paste error".  This is an amazing find by Coverity.
  1241  
  1242  	* magick/xwindow.c (MagickXImportImage): Silence Coverity 10207
  1243  	"Array compared against 0".
  1244  
  1245  	* magick/quantize.c (GrayscalePseudoClassImage): Silence Coverity
  1246  	10256 "Wrong sizeof argument".
  1247  
  1248  	* coders/tiff.c (ReadTIFFImage): Fix Coverity 44747 and 44748
  1249  	"Extra sizeof expression".
  1250  
  1251  2015-03-16  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  1252  
  1253  	* Magick++/lib/Magick++/Include.h (Magick): Fix compilation with
  1254  	'clang' under Linux.  Build was broken yesterday.
  1255  
  1256  	* coders/tiff.c (QuantumTransferMode): Fix reading Old JPEG and
  1257  	YCbCr sample images from libtiff pics-3.8.0.tar.gz image file
  1258  	collection.  There was a regression for YCbCr added in last
  1259  	release.
  1260  
  1261  2015-03-15  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  1262  
  1263  	* coders/bmp.c (ReadBMPImage): Fix Coverity 44726 "Division or
  1264  	modulo by float zero".  I don't think that this can actually
  1265  	happen due to prior checks.
  1266  
  1267  	* magick/xwindow.c (MagickXMakeWindow): Silence Coverity 10281
  1268  	"Copy into fixed size buffer".
  1269  
  1270  	* coders/pdf.c (ReadPDFImage): Silence Coverity 10241 "Copy into
  1271  	fixed size buffer".
  1272  
  1273  	* magick/type.c (ReadTypeConfigureFile): Silence Coverity 10242
  1274  	"Copy into fixed size buffer".
  1275  
  1276  	* magick/utility.c (GetPathComponent): Silence Coverity 10263
  1277  	"Copy into fixed size buffer".
  1278  
  1279  	* coders/txt.c (ReadTXTImage): Silence Coverity 10287 "Copy into
  1280  	fixed size buffer".
  1281  
  1282  	* coders/ps.c (WritePSImage): Silence Coverity 10289 "Copy into
  1283  	fixed size buffer".
  1284  
  1285  	* magick/delegate.c (ReadConfigureFile): Silence Coverity 10297
  1286  	"Copy into fixed size buffer".
  1287  
  1288  	* magick/log.c (ReadLogConfigureFile): Silence Coverity 10300
  1289  	"Copy into fixed size buffer".
  1290  
  1291  	* coders/ps3.c (WritePS3Image): Silence Coverity 10303 "Copy into
  1292  	fixed size buffer".
  1293  
  1294  	* coders/pdf.c (WritePDFImage): Silence Coverity 10304 "Copy into
  1295  	fixed size buffer".
  1296  
  1297  	* coders/ps.c (ReadPSImage): Silence Coverity 10306 "Copy into
  1298  	fixed size buffer".
  1299  
  1300  	* coders/msl.c (MSLStartElement): Silence Coverity 10308 "Copy
  1301  	into fixed size buffer".
  1302  
  1303  	* coders/ps2.c (WritePS2Image): Silence Coverity 10309 "Copy into
  1304  	fixed size buffer".
  1305  
  1306  	* Magick++/lib/Geometry.cpp (operator): Silence Coverity 44749
  1307  	"Copy into fixed size buffer".
  1308  
  1309  	* Magick++/lib/Image.cpp (annotate): Silence Coverity 44750 "Copy
  1310  	into fixed size buffer".
  1311  
  1312  	* coders/ept.c (ReadEPTImage): Silence Coverity 44751 "Copy into
  1313  	fixed size buffer".
  1314  
  1315  	* coders/wmf.c (ipa_device_begin): Silence Coverity 44753 "Copy
  1316  	into fixed size buffer".
  1317  	(lite_font_map): Silence Coverity 44752 "Copy into fixed size
  1318  	buffer".
  1319  
  1320  	* magick/random.c (InitializeMagickRandomKernel): Silence Coverity
  1321  	10091 "Don't Call" in the case where /dev/random is available.
  1322  
  1323  	* coders/mpeg.c (WriteMPEGParameterFiles): Fix Coverity 10190
  1324  	"Resource leak".  File descriptor was leaked under certain error
  1325  	conditions.
  1326  
  1327  	* coders/wpg.c (UnpackWPG2Raster): Fix Coverity 10312
  1328  	"Uninitialized scalar variable" gripe.
  1329  
  1330  	* magick/utility.c (ListFiles): Possibly address
  1331  	Coverity 10245 "Sizeof not portable" gripe.
  1332  
  1333  	* magick/widget.c (MagickXFontBrowserWidget): Possibly address
  1334  	Coverity 10323 "Sizeof not portable" gripe.
  1335  
  1336  	* coders/mat.c (WriteMATLABImage): FormatString() requires a
  1337  	buffer of MaxTextExtent bytes.  Use sprintf instead.  Fix for
  1338  	Coverity issue 10170.
  1339  
  1340  	* Magick++/lib/Geometry.cpp (string): FormatString() requires a
  1341  	buffer of MaxTextExtent bytes. Fix for Coverity issue 44737.
  1342  
  1343  	* coders/wmf.c (draw_pattern_push): FormatString() requires a
  1344  	buffer of MaxTextExtent bytes.  Fix for Coverity issue 44741.
  1345  	(ipa_device_begin): FormatString() requires a buffer of
  1346  	MaxTextExtent bytes.  Fix for Coverity issue 44740.
  1347  	(util_set_brush): FormatString() requires a buffer of
  1348  	MaxTextExtent bytes. Fix for Coverity issue 44739.
  1349  	(ipa_region_clip): FormatString() requires a buffer of
  1350  	MaxTextExtent bytes. Fix for Coverity issue 44738.
  1351  
  1352  2015-03-15  Glenn Randers-Pehrson  <glennrp@simple.dallas.tx.us>
  1353  
  1354  	* coders/png.c (WritePNGImage) Avoid a Coverity gripe about
  1355  	potential NULL dereference (actually it is impossible because
  1356  	png_error() does not return. Fix for Coverity gripe 44731.
  1357  
  1358  	* coders/png.c (WritePNGImage) Avoid a null pointer dereference
  1359  	while logging inherited color_type. Fix for Coverity issue 10185.
  1360  
  1361  	* coders/png.c (WriteOneJNGImage) Avoid possible unintended sign
  1362  	extension. Fix for Coverity issue 44744.
  1363  
  1364  	* coders/png.c (WriteOnePNGImage) Quiet a false Coverity warning
  1365  	about dereference after NULL check.  Fix for Coverity issue 44729.
  1366  
  1367  	* coders/png.c (ReadOnePNGImage): Redid the "Respect the
  1368  	PixelsResource limit" patch of March 7, using unsigned arithmetic
  1369  	to determine the width limit.  Sometimes the calculated
  1370  	width limit was incorrectly zero.
  1371  
  1372  2015-03-14  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  1373  
  1374  	* magick/image.c (SetImageInfo): Fix problems with reading
  1375  	filenames that include a colon.  Resolves SourceForge bug #294
  1376  	"display and convert (probably other things too) choke on
  1377  	filenames with colons in".
  1378  
  1379  	* magick/utility.c (GetPathComponent): Fix SubImagePath
  1380  	extraction. Fixes SourceForge bug #66 "converting runs slowly when
  1381  	subimage is specified".
  1382  
  1383  2015-03-11  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  1384  
  1385  	* doc/options.imdoc (-geometry): Document the significance of 'x'
  1386  	as used in a geometry specification.  In particular, document that
  1387  	if width is specified without a trailing 'x' that height is set to
  1388  	width.  This is in response to SourceForge bug #296 "Strange
  1389  	-resize WIDTH results with version 1.3.21".
  1390  
  1391  2015-03-10  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  1392  
  1393  	* magick/utility.c (GlobExpression): Remove use of IsSubimage().
  1394  
  1395  	* magick/image.c (IsSubimage): Re-implement with a more robust
  1396  	solution.  Combined with fixes to ps.c and pdf.c, allows selecting
  1397  	specific pages, as well as re-ordering.
  1398  
  1399  	* coders/ps.c (ReadPSImage): Set image frame scene ids
  1400  	appropriately.
  1401  
  1402  	* coders/pdf.c (ReadPDFImage): Set image frame scene ids
  1403  	appropriately.
  1404  
  1405  	* magick/utility.c (TranslateTextEx): -format %Q should report
  1406  	JPEG quality estimate if it is available.  Resolves SourceForge
  1407  	bug #293 "gm identify bug?".
  1408  
  1409  	* doc/options.imdoc: Documented JPEG-specific -format tags.
  1410  
  1411  2015-03-07  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  1412  
  1413  	* Magick++/lib/Image.cpp (repage): New method to reset page
  1414  	settings.  Contributed by Dirk Lemstra.
  1415  
  1416  2015-03-07  Glenn Randers-Pehrson  <glennrp@simple.dallas.tx.us>
  1417  
  1418  	* coders/png.c (ReadOnePNGImage): Respect the PixelsResource
  1419  	limit.
  1420  
  1421  	* coders/png.c (ReadOnePNGImage): Moved quantum_scanline
  1422  	and png_pixels into the MngInfo struct.  This prevents
  1423  	memory leaks when reading malformed PNG images, but unfortunately
  1424  	triggers a new complaint about a possible race condition.
  1425  
  1426  	* coders/png.c (ReadOnePNGImage): Removed two superflous calls to
  1427  	CloseBlob().
  1428  
  1429  	* coders/png.c (ReadOnePNGImage): Do the allocation and free of
  1430  	quantum_scanline outside the "pass" loop, i.e., do it once per
  1431  	image rather than once per pass while decoding interlaced PNG
  1432  	images.  Log these when -debug coders is enabled.
  1433  
  1434  	* coders/png.c: Fixed typo recently introduced in the JNG reader
  1435  	(status != MagickFalse should be status == MagickFalse).
  1436  
  1437  2015-03-05  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  1438  
  1439  	* coders/xwd.c (ReadXWDImage): Fix memory leaks in error paths.
  1440  
  1441  	* coders/xpm.c (ReadXPMImage): Fix memory leaks in error paths.
  1442  
  1443  	* coders/miff.c (ReadMIFFImage): Fix memory leak of Image in error
  1444  	case.
  1445  	(ReadMIFFImage): Fix memory leaks of zlib and bzlib2 context in
  1446  	error path which reports decompression failure.
  1447  
  1448  	* coders/bmp.c (ReadBMPImage): BMP reader was wrongly rejecting
  1449  	RLE-compressed files as being too small.  Fixes SourceForge bug
  1450  	#295 "1.3.21 identify regression".  Also fixed 'ping' support code
  1451  	which was still reading the pixels in 'ping' mode.
  1452  	(ReadBMPImage): Fix memory leak when BMP is handled as a sequence.
  1453  
  1454  2015-03-01  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  1455  
  1456  	* coders/palm.c (ReadPALMImage): PALM reader now applies PALM's
  1457  	special non-linear colormap if the file does not provide a custom
  1458  	colormap.  Custom colormap size is verified to not exceed image
  1459  	colors.  Added logging statements regarding colormap.
  1460  
  1461  2015-02-28  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  1462  
  1463  	* www/index.rst: Update for 1.3.21 release.
  1464  
  1465  	* www/Changes.rst: Update for 1.3.21 release.
  1466  
  1467  	* NEWS.txt: Update NEWS for 1.3.21 release.
  1468  
  1469  	* version.sh: Bump/adjust library versioning.
  1470  
  1471  2015-02-25  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  1472  
  1473  	* magick/delegate.c: Fix compilation under Cygwin. Thanks to Marco
  1474  	Atzeri for advising us of this problem.
  1475  
  1476  2015-02-24  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  1477  
  1478  	* magick/error.h (ThrowReaderException): More significant
  1479  	exceptions (e.g. errors) should overwrite less significant
  1480  	exceptions (e.g. warnings) thrown earlier.
  1481  
  1482  	* coders/bmp.c (ReadBMPImage): Detect 32-bit integer overflows and
  1483  	other annoyances caused by intentionally broken files.  Also, only
  1484  	warn if the file header claims the file is larger than it is since
  1485  	this is a benign issue.
  1486  
  1487  	* magick/blob.c (OpenBlob): Fix "magic header bytes" log message
  1488  	count value.
  1489  
  1490  2015-02-22  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  1491  
  1492  	* NEWS.txt: Updated NEWS with more changes.
  1493  
  1494  	* Magick++/lib/Magick++/Include.h (Magick): Add GetImageGeometry
  1495  	to MagickLib namespace in order to avoid a compilation problem
  1496  	noticed with Visual C++ 6.0.
  1497  
  1498  2014-02-22  Jaroslav Fojtik  <JaFojtik@seznam.cz>
  1499  
  1500  	* VisualMagick\configure\configure.cpp Fixed crash.
  1501          Renamed debug to configure_d.exe to prevent mess.
  1502  
  1503  2015-02-21  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  1504  
  1505  	* magick/magick.c (InitializeMagick): Invoke
  1506  	NTInitializeExceptionHandlers() under Windows.
  1507  
  1508  	* magick/nt_base.c (NTInitializeExceptionHandlers): Add a new
  1509  	private function which disables pop-up Windows on exceptions and
  1510  	registers a handler for Windows exceptions to clean up temporary
  1511  	files prior to program exit.
  1512  
  1513  	* magick/magick.c (PanicDestroyMagick): Use
  1514  	PurgeTemporaryFilesAsyncSafe() rather than PurgeTemporaryFiles().
  1515  	(InitializeMagickSignalHandlers): Always register for SIGINT, even
  1516  	under Microsoft Windows.
  1517  
  1518  	* magick/tempfile.c (PurgeTemporaryFilesAsyncSafe): New private
  1519  	function to clean up temporary files prior to program exit.
  1520  	Async-safe so it can be safely called from a signal handler.
  1521  	Intentionally leaks memory.
  1522  
  1523  2015-02-18  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  1524  
  1525  	* magick/attribute.c (GenerateEXIFAttribute): Fix crash while
  1526  	parsing corrupt EXIF which was reported by Stijn Sanders on
  1527  	2015-02-17.
  1528  
  1529  	* Magick++/lib/{Blob.cpp, Image.cpp}: Incorrect lock scope
  1530  	resulted in Magick++ locking not actually working to protect
  1531  	critical sections in spite of no detected problems with locking
  1532  	these past 16 years.  Problem was detected using the
  1533  	misc-unused-raii check from clang-tidy and was reported by Hyrum
  1534  	Wright.
  1535  
  1536  	* coders/palm.c (ReadPALMImage): Add header logging to writer.
  1537  	Writer still seeks and overwrites its own header so logging is not
  1538  	entirely accurate yet.
  1539  
  1540  2015-02-16  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  1541  
  1542  	* libtool: Update GNU libtool to 2.4.6.
  1543  
  1544  	* coders/palm.c (ReadPALMImage): Fix support for transparency in
  1545  	PALM reader.
  1546  
  1547  2015-02-15  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  1548  
  1549  	* coders/palm.c (ReadPALMImage): Major re-work of PALM reader.
  1550  	More log message improvements.  More header validation.
  1551  
  1552  2015-02-14  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  1553  
  1554  	* coders/palm.c (ReadPALMImage): Improve log messages.  Add more
  1555  	header validation.  Check image pixel limits.  Support 'ping'
  1556  	mode.
  1557  
  1558  2015-02-12  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  1559  
  1560  	* coders/palm.c (ReadPALMImage): PALM reader now supports 1, 2, 4,
  1561  	8, and 16-bit test files we were able to generate using
  1562  	'pnmtopalm'.  A progress monitor was added.  Memory leaks in error
  1563  	paths were fixed.
  1564  
  1565  2015-02-12  Glenn Randers-Pehrson  <glennrp@simple.dallas.tx.us>
  1566  
  1567  	* coders/png.c: Insert "if (QuantumTick(...))" ahead of
  1568  	each "if (!MagickMonitorFormatted(...)".
  1569  
  1570  2015-02-10  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  1571  
  1572  	* coders/rla.c (ReadRLAImage): Assure that header ASCII strings
  1573  	are properly terminated.  Resolves Coverity CID 10322.
  1574  
  1575  2015-02-09  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  1576  
  1577  	* magick/nt_base.h (STDERR_FILENO): Provide definitions for
  1578  	standard POSIX file numbers so that Visual Studio should compile.
  1579  	Fixes SourceForge bug #291 "STDERR_FILENO (used in magick.c) is
  1580  	not defined under Windows"
  1581  
  1582  2015-02-08  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  1583  
  1584  	* Magick++/lib/Image.cpp (Image::quiet()): Patch by Dirk Lemstra
  1585  	to support silencing warnings in Magick++.  Adds a quiet() method
  1586  	which blocks (ignores) warning exceptions when passed a true
  1587  	argument.  Warning exceptions are still generated by default.
  1588  
  1589  	* coders/tiff.c: Support '-define tiff:report-warnings=true' to
  1590  	enable that warnings reported by libtiff are thrown as warning
  1591  	exceptions so that they may be caught or will be reported at the
  1592  	gm command-line.
  1593  
  1594  2015-02-07  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  1595  
  1596  	* coders/tiff.c (WriteTIFFImage): Use YCbCr encoding when JPEG
  1597  	compression is requested for an RGB image.
  1598  
  1599  2015-02-04  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  1600  
  1601  	* coders/tiff.c (QuantumTransferMode): Fix reading or writing
  1602  	planar min-is-white or min-is-black images with an associated
  1603  	alpha channel.
  1604  
  1605  2015-02-01  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  1606  
  1607  	* coders/xpm.c (ReadXPMImage): Reading empty XPM file should not
  1608  	cause bad memory access.
  1609  
  1610  	* coders/gif.c (DecodeImage): Assure that GIF decoder does not use
  1611  	unitialized data.
  1612  
  1613  	* coders/jpeg.c (ReadJPEGImage): Verify that we support the number
  1614  	of output components before proceeding to decode the image.
  1615  
  1616  2015-01-25  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  1617  
  1618  	* coders/miff.c (ReadMIFFImage): MIFF needs to stop spinning if
  1619  	zlib or bzlib report an error while decompressing.  Solves problem
  1620  	with file provided by Jodie Cunningham on 2015-01-25.
  1621  
  1622  	* coders/vicar.c (ReadVICARImage): Fix Vicar reader's dogged
  1623  	determination to continue reading when there is nothing left to
  1624  	read.  Solves problem with file provided by Jodie Cunningham on
  1625  	2015-01-25.
  1626  
  1627  	* magick/magick.c (PanicDestroyMagick): Replace memory allocation
  1628  	functions with dummy functions rather than NULL pointers.
  1629  	(InitializeMagickSignalHandlers): Register
  1630  	MagickPanicSignalHandler() for SIGSEGV.
  1631  	(MagickPanicSignalHandler): Produce an informative message for the
  1632  	user.
  1633  	(MagickSignalHandlerMessage): Include more detailed information
  1634  	from the signal handler via a common routine used by default
  1635  	signal handlers.
  1636  
  1637  2015-01-25  Glenn Randers-Pehrson  <glennrp@simple.dallas.tx.us>
  1638  
  1639  	* coders/bmp.c (ReadBMPImage): An attempt to address CID 10291.
  1640  
  1641  2015-01-25  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  1642  
  1643  	* magick/nt_base.c (Exit): Changed to return 'void'. Function can
  1644  	not return a value if it does not return.
  1645  
  1646  	* magick/error.c (DefaultFatalErrorHandler): Invoke
  1647  	PanicDestroyMagick() rather than DestroyMagick().  If we are
  1648  	really that short on memory, DestroyMagick() might not work.
  1649  
  1650  	* magick/magick.c (MagickPanicSignalHandler): Only use async-safe
  1651  	functions in signal handler.
  1652  	(PanicDestroyMagick): New function for emergency release of
  1653  	persistent resources just prior to program exit.  Async-safe and
  1654  	does not acquire or release any heap memory.
  1655  
  1656  	* magick/export.c: Eliminate two 'clang' warnings.
  1657  
  1658  2015-01-24  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  1659  
  1660  	* coders/pdb.c (ReadPDBImage): Fix typo.
  1661  
  1662  	* coders/cineon.c (ReadCINEONImage): Enforce that Cineon image
  1663  	info channels is valid.  Solves problem with file provided by
  1664  	Jodie Cunningham on 2015-01-24
  1665  
  1666  	* coders/fits.c (ReadFITSImage): Enforce valid bits-per-pixel
  1667  	values.  Add detailed header logging.  Solves problem with file
  1668  	provided by Jodie Cunningham on 2015-01-24
  1669  
  1670  2015-01-22  Glenn Randers-Pehrson  <glennrp@simple.dallas.tx.us>
  1671  
  1672  	* coders/png.c (ReadPNGImage): Check length of various MNG
  1673  	chunks before using the chunk data.
  1674  
  1675  	* coders/png.c (WriteOnePNGImage): Use png_error() instead of
  1676  	throwing an exception so cleanup in the setjmp block can happen,
  1677  	including unlocking the semaphore.  Addresses Coverity CID 10184.
  1678  
  1679  2015-01-22  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  1680  
  1681  	* coders/gif.c (WriteGIFImage): Don't use an unchecked value from
  1682  	GetImageAttribute(), even if the access succeeded before.
  1683  	Resolves Coverity CID 10219.
  1684  
  1685  	* coders/dpx.c (StringToAttribute): Make sure that string is not
  1686  	accidentally shortened by one character if it occupies the full
  1687  	field size.
  1688  	(ReadDPXImage): Validate that the bits per sample claimed by the
  1689  	file header is a supported depth before using it further in the
  1690  	code.  This might resolve Coverity CID 10071 "Bad shift
  1691  	operation".
  1692  	(ReadDPXImage): Check for EOF while reading forward to element
  1693  	data.  Might solve Coverity CID 10305.
  1694  
  1695  	* coders/dib.c (ReadDIBImage): Resolve Coverity CID 10228 "Integer
  1696  	overflowed argument".
  1697  	(ReadDIBImage): Hopefully resolve Coverity CID 10268 "Various",
  1698  	which is primarily about placing too much trust in the claimed
  1699  	number of colors.
  1700  
  1701  	* coders/pnm.c (WritePNMImage): Fix overwrite of status by
  1702  	progress monitor.  Remaining issues may lurk within.  May resolve
  1703  	Coverity CID 10288.
  1704  
  1705  	* coders/pdb.c: Resolve Coverity CID 11173 "Buffer not null
  1706  	terminated".
  1707  
  1708  2015-01-21  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  1709  
  1710  	* magick/magick.c (GetMagickInfoArray): Resolve Coverity CID 10212
  1711  	"Missing unlock".
  1712  
  1713  	* magick/colormap.c (ReplaceImageColormap): Allocate new image
  1714  	colormap up front in order to avoid the possibility that we are
  1715  	left with an image with no colormap due to memory allocation
  1716  	failure. If there is a memory allocation failure, then the
  1717  	original colormap is preserved.  Resolves Coverity CID 10194
  1718  	"Dereference after null check".
  1719  
  1720  	* magick/utility.c (MagickStripSpacesFromString): New private
  1721  	utility function to strip spaces from a string.
  1722  
  1723  	* magick/color_lookup.c (GetColorInfoArray): Resolves Coverity CID
  1724  	10231 "Missing unlock"
  1725  	(ReadColorConfigureFile): Resolves Coverity CID 10261 "Use of
  1726  	untrusted scalar value"
  1727  	(GetColorInfo): Resolves Coverity CID 10077 "Overlapping buffer in
  1728  	memory copy".
  1729  
  1730  2015-01-21  Glenn Randers-Pehrson  <glennrp@simple.dallas.tx.us>
  1731  
  1732  	* coders/png.c (ReadOnePNGImage): Use png_error() instead of
  1733  	throwing an exception so cleanup in the setjmp block can happen,
  1734  	including unlocking the semaphore.  Resolves Coverity CID 10232.
  1735  
  1736  	* coders/png.c (ReadOnePNGImage): Moved a logging statement into a
  1737  	block where "attribute" has been checked for NULL.  Resolves
  1738  	Coverity CIDs 10185 and 10187.
  1739  
  1740  	* coders/png.c (ReadMNGImage): Fixed a cut-and-paste typo
  1741  	(change_delay should be change_timeout) reported by Coverity
  1742  	CID 10090.
  1743  
  1744  2015-01-20  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  1745  
  1746  	* magick/image.c (CloneImage): The definition is poor as to what a
  1747  	non-orphan clone should do.  However, the definition surely does
  1748  	not include crashing the software or supplanting the original
  1749  	image in an image list.  Clone image blob and previous/next
  1750  	pointers but do not supplant original image in list.  Resolves
  1751  	Coverity CID 10155.
  1752  
  1753  2015-01-18  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  1754  
  1755  	* coders/dpx.c (WriteRowSamples): Ensure that callback function is
  1756  	always defined. Resolves Coverity CID 10122.
  1757  	(ReadRowSamples): Ensure that callback function is always
  1758  	defined. Resolves Coverity CID 10125.
  1759  
  1760  	* magick/random.c (InitializeMagickRandomKernel): Avoid possible
  1761  	double-close of file.  Resolves Coverity CID 10257.
  1762  
  1763  	* coders/histogram.c (WriteHISTOGRAMImage): Avoid possible divide
  1764  	by zero exception.  Resolves Coverity CID 10107.
  1765  
  1766  	* magick/error.c (MagickFatalError): Document that
  1767  	MagickFatalError() is not supposed to return (program must quit)
  1768  	and add GCC/Clang hints to that effect.
  1769  
  1770  	* magick/bit_stream.c (BitAndMasks): Avoid possible access
  1771  	one-beyond end of BitAndMasks array.  It is not clear if there is
  1772  	a possible bug with 32-bit quantums.  If there is a bug, it has
  1773  	not been noticed via testing.  Resolves Coverity CID 10213.
  1774  
  1775  	* magick/tempfile.c (AcquireTemporaryFileDescriptor): Avoid buffer
  1776  	overrun in the case of an astonishingly long environment variable
  1777  	string.  Resolves Coverity CID 10267.
  1778  	(AddTemporaryFileToList): Use strlcpy() rather than strlcpy().  In
  1779  	practice, should not make a difference.  Will quiet Coverity CID
  1780  	10321.
  1781  
  1782  	* magick/command.c (GMCommandSingle): Don't use the address of a
  1783  	stack allocation to update argv[0]. Removed updating argv[0] until
  1784  	a better design can be found.  Resolves Coverity CID 10223.
  1785  	(GMCommandSingle): Plan B: Use static allocation from
  1786  	SetClientName() to both store the new command name and provide
  1787  	storage for argv[0].
  1788  
  1789  	* magick/utility.c (SystemCommand): Fix possible overwrite of
  1790  	memory location due to uninitialized 'end' pointer.  Resolves
  1791  	Coverity CID 10251.
  1792  
  1793  	* magick/blob.c (WriteBlobFile): Was not closing file in certain
  1794  	error conditions.  Resolves Coverity CID 10237.
  1795  
  1796  	* coders/cineon.c (ReadCINEONImage): Don't trust file header so
  1797  	much.  Resolves Coverity CIDs 10079, 10310, 10325.
  1798  
  1799  	* coders/art.c (ReadARTImage): Fix signed vs unsigned comparison
  1800  	caused by earlier changes.
  1801  
  1802  2014-01-17 Fojtik Jaroslav  <JaFojtik@seznam.cz>
  1803  
  1804  	* coders/wpg.c Do not execute wpg raster read in ping mode.
  1805  
  1806  2014-01-15 Fojtik Jaroslav  <JaFojtik@seznam.cz>
  1807  
  1808  	* coders/mat.c Properly deallocating zip structures.
  1809  
  1810  2015-01-14  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  1811  
  1812  	* coders/sfw.c (ReadSFWImage): Fix pixel cache access errors in
  1813  	'ping' mode.
  1814  
  1815  2015-01-13  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  1816  
  1817  	* coders/wmf.c (ReadWMFImage): Fix memory leak in 'ping' mode and
  1818  	some error paths.
  1819  
  1820  2015-01-12  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  1821  
  1822  	* coders/jbig.c (ReadJBIGImage): Fix memory leak in 'ping' mode.
  1823  
  1824  	* magick/delegate.c (InvokeDelegate): Fix memory leak of argument
  1825  	list when invoking external program via MagickSpawnVP().
  1826  
  1827  2015-01-11  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  1828  
  1829  	* magick/resource.c (InitializeMagickResources): Base image width
  1830  	and height default limits on the range of a 32-bit signed integer,
  1831  	even for 64-bit builds.  These limits are still beyond what most
  1832  	computers in the world can handle.  Limits can be increased by the
  1833  	user.
  1834  
  1835  	* coders/xwd.c (ReadXWDImage): Check image size limits
  1836  	immediately.
  1837  
  1838  	* coders/xc.c (ReadXCImage): Check image size limits immediately.
  1839  
  1840  	* coders/webp.c (ReadWEBPImage): Check image size limits
  1841  	immediately.
  1842  
  1843  	* coders/viff.c (ReadVIFFImage): Check image size limits
  1844  	immediately.
  1845  
  1846  	* coders/vicar.c (ReadVICARImage): Check image size limits
  1847  	immediately.
  1848  
  1849  	* coders/txt.c (ReadTXTImage): Check image size limits
  1850  	immediately.
  1851  
  1852  	* coders/ttf.c (ReadTTFImage): Check image size limits
  1853  	immediately.
  1854  
  1855  	* coders/tim.c (ReadTIMImage): Check image size limits
  1856  	immediately.
  1857  
  1858  	* coders/tiff.c (ReadTIFFImage): Check image size limits
  1859  	immediately.
  1860  
  1861  	* coders/tga.c (ReadTGAImage): Check image size limits
  1862  	immediately.
  1863  
  1864  	* coders/sgi.c (ReadSGIImage): Check image size limits
  1865  	immediately.
  1866  
  1867  	* coders/sct.c (ReadSCTImage): Check image size limits
  1868  	immediately.
  1869  
  1870  	* coders/rle.c (ReadRLEImage): Check image size limits
  1871  	immediately.
  1872  
  1873  	* coders/rla.c (ReadRLAImage): Check image size limits
  1874  	immediately.
  1875  
  1876  	* coders/psd.c (ReadPSDImage): Check image size limits
  1877  	immediately.
  1878  
  1879  	* coders/pnm.c (ReadPNMImage): Check image size limits
  1880  	immediately.
  1881  
  1882  	* coders/pix.c (ReadPIXImage): Check image size limits
  1883  	immediately.
  1884  
  1885  	* coders/pict.c (ReadPICTImage): Check image size limits
  1886  	immediately.
  1887  
  1888  	* coders/pdb.c (ReadPDBImage): Check image size limits
  1889  	immediately.
  1890  
  1891  	* coders/pcx.c (ReadPCXImage): Check image size limits
  1892  	immediately.
  1893  
  1894  	* coders/pcd.c (ReadPCDImage): Check image size limits
  1895  	immediately.
  1896  
  1897  	* coders/otb.c (ReadOTBImage): Check image size limits
  1898  	immediately.
  1899  
  1900  	* coders/null.c (ReadNULLImage): Check image size limits
  1901  	immediately.
  1902  
  1903  	* coders/mvg.c (ReadMVGImage): Check image size limits
  1904  	immediately.
  1905  
  1906  	* coders/mtv.c (ReadMTVImage): Check image size limits
  1907  	immediately.
  1908  
  1909  	* coders/mpc.c (ReadMPCImage): Check image size limits
  1910  	immediately.
  1911  
  1912  	* coders/miff.c (ReadMIFFImage): Check image size limits
  1913  	immediately.
  1914  
  1915  	* coders/jpeg.c (ReadJPEGImage): Check image size limits
  1916  	immediately.
  1917  
  1918  	* coders/jp2.c (ReadJP2Image): Check image size limits
  1919  	immediately.
  1920  
  1921  	* coders/jbig.c (ReadJBIGImage): Check image size limits
  1922  	immediately.
  1923  
  1924  	* coders/hdf.c (ReadHDFImage): Check image size limits
  1925  	immediately.
  1926  
  1927  	* coders/gif.c (ReadGIFImage): Check image size limits
  1928  	immediately.
  1929  
  1930  	* coders/fpx.c (ReadFPXImage): Check image size limits
  1931  	immediately.
  1932  
  1933  	* coders/fax.c (ReadFAXImage): Check image size limits
  1934  	immediately.
  1935  
  1936  	* coders/dpx.c (ReadDPXImage): Check image size limits
  1937  	immediately.
  1938  
  1939  	* coders/dps.c (ReadDPSImage): Check image size limits
  1940  	immediately.
  1941  
  1942  	* coders/dib.c (ReadDIBImage): Check image size limits
  1943  	immediately.
  1944  
  1945  	* coders/dcm.c (ReadDCMImage): Check image size limits
  1946  	immediately.
  1947  
  1948  	* coders/cut.c (ReadCUTImage): Check image size limits
  1949  	immediately.
  1950  
  1951  	* coders/cineon.c (ReadCINEONImage): Check image size limits
  1952  	immediately.
  1953  
  1954  	* coders/avs.c (ReadAVSImage): Check image size limits
  1955  	immediately.
  1956  
  1957  	* coders/art.c (ReadARTImage): Check image size limits
  1958  	immediately.
  1959  
  1960  	* coders/sun.c (ReadSUNImage): Check image size limits in advance
  1961  	of allocating memory for pixels.
  1962  
  1963  	* coders/bmp.c (ReadBMPImage): Check image size limits in advance
  1964  	of allocating memory for pixels.
  1965  
  1966  	* coders/sun.c (ReadSUNImage): There is no definition for Sun map
  1967  	type RMT_RAW so it can not be supported.  Update DirectClass
  1968  	pixels directly rather using SyncImage().  Problem was reported by
  1969  	Jodie Cunningham.
  1970  
  1971  2015-01-10  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  1972  
  1973  	* coders/pict.c (ReadPICTImage): Fix PICT reader crash when
  1974  	reading corrupted file.
  1975  
  1976  	* coders/sun.c (ReadSUNImage): Sun reader was still not as robust
  1977  	as it should be.  Now it is.
  1978  
  1979  2014-01-10 Fojtik Jaroslav  <JaFojtik@seznam.cz>
  1980  
  1981  	* coders/wpg.c Fixed reading behind EOF issue.
  1982  
  1983  2015-01-09  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  1984  
  1985  	* coders/dpx.c (LSBPackedU32WordToOctets): Fix typo which adds
  1986  	severe corruption to encoded little-endian 32-bit packed output.
  1987  	The good news is that since the corruption is severe, it is easily
  1988  	visually detected.  The problem has corrupted all such
  1989  	(little-endian 10-bit) output since it was originally implemented
  1990  	on 2007-06-17 (changeset 11686, first released in GraphicsMagick
  1991  	1.1.8).  GraphicsMagick preserves the endianness of input DPX
  1992  	files by default, defaults to big-endian, and DPX files are
  1993  	commonly big-endian, so this problem may not have occured for many
  1994  	usages.  Problem was reported by Steve Dabner on the
  1995  	GraphicsMagick discussion mailing list.
  1996  
  1997  2015-01-05  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  1998  
  1999  	* magick/magick.c (MagickPanicSignalHandler): Print a message in
  2000  	the case of signals SIGXCPU and SIGXFSZ.
  2001  
  2002  	* coders/bmp.c (ReadBMPImage): Don't hang in endless loop if EOF
  2003  	is encountered while checking for "BA" header.
  2004  
  2005  	* coders/icon.c (ReadIconImage): Limit icon image allocation size.
  2006  
  2007  2015-01-04  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  2008  
  2009  	* coders/icon.c (ReadIconImage): Removed all of the
  2010  	previously-existing DIB reading code from icon.c and use new
  2011  	"ICODIB" reader to read DIB icons, or the PNG reader to read PNG
  2012  	icons.
  2013  
  2014  	* coders/dib.c (ReadDIBImage): Added an "ICODIB" coder for
  2015  	internal use which reads a Windows BMP 3 DIB followed by a Windows
  2016  	ICO alpha mask.  This allows existing DIB code to be used to read
  2017  	ICO directory entries.
  2018  
  2019  2015-01-03  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  2020  
  2021  	* coders/icon.c: The Windows ICO reader is now more robust.  Still
  2022  	a work in progress since some files still can not be read or read
  2023  	incorrectly.
  2024  
  2025  2015-01-01  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  2026  
  2027  	* magick/resource.c (ListMagickResourceInfo): "kilo" for binary
  2028  	prefixes is supposed to be "Ki".
  2029  
  2030  	* magick/utility.c (FormatSize): "kilo" for binary prefixes is
  2031  	supposed to be "Ki".
  2032  
  2033  2015-01-01  Glenn Randers-Pehrson  <glennrp@simple.dallas.tx.us>
  2034  
  2035  	* coders/png.c: Use WidthResource and HeightResource instead
  2036  	of fixed 1-million limit for rows and columns.
  2037  
  2038  2015-01-01  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  2039  
  2040  	* magick/utility.c (FormatSize): Add 'i' to value range
  2041  	identifiers since these are all in units of 2^10 rather than 1000.
  2042  
  2043  	* magick/pixel_cache.c (CheckImagePixelLimits): Fix typo and
  2044  	produce an informative error message.
  2045  
  2046  	* magick/resource.c: Added support for Image width and height
  2047  	pixels resource limits.
  2048  
  2049  	* magick/resource.h (ResourceType): New resource enumerations
  2050  	WidthResource and HeightResource.
  2051  
  2052  	* magick/enum_strings.c (StringToResourceType): Added support for
  2053  	parsing '-limit Width' and '-limit Height'.
  2054  
  2055  	* magick/pixel_cache.c (CheckImagePixelLimits): New function to
  2056  	test image to see if it exceeds pixels limits.
  2057  
  2058  	* coders/viff.c (ReadVIFFImage): Make the VIFF reader robust with
  2059  	detecting and reporting problems.
  2060  
  2061  2014-12-31  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
  2062  
  2063  	* Rotate Changelog for new year.  Update documentation copyrights
  2064  	for new year.
  2065  
  2066