GraphicsMagick 1.3.22 is released
Bob Friesenhahn <[email protected]> Sun, 4 Oct 2015 17:51:42 -0500 (CDT)
| Newsgroups | gmane.comp.video.graphicsmagick.announce |
|---|---|
| Message-ID | <[email protected]> |
GraphicsMagick 1.3.22 is now available.
Since the prior release, GraphicsMagick has been submitted to Coverity
static analysis and all discovered issues have been addressed,
resulting in zero Coverity defects (typical defect rate for projects
of this size in Coverity is 0.5 defects per 1000 lines of code).
We have also addressed many user-submitted bug reports.
The GraphicsMagick web site is "http://www.graphicsmagick.org/".
File releases may be downloaded from
"https://sourceforge.net/projects/graphicsmagick/files/".
The following is a summary of changes since the previous release:
1.3.22 (October 4, 2015)
==========================
Thanks:
* Coverity: We thank Coverity for providing free service for free
software projects, and thank Jodie Cunningham for getting the
project set up in Coverity.
Special Issues:
* Due to GCC bug 53967, several key agorithms (e.g. convolution)
may execute much faster (e.g. 2-3X) for x86-64 and/or when SSE is
enabled for floating point math (`-mfpmath=sse`) if the GCC option
`-frename-registers` is used. Default 32-bit builds do not
experience the problem since they use '387 math. It is not clear in
what version of GCC this problem started but it was not noticed by
the developers until the GCC 4.6 timeframe. Other compilers do not
suffer from this bug. Please lobby the GCC project to fix this
embarrassing performance bug.
* Magick++: Any libraries or applications using Magick++ should be
rebuilt in order to use this new release. Libraries and
applications will be able to continue to use prior versions of
Magick++ without being re-built, while benefiting from updated C
libraries, provided that the system supports library versioning.
Security Fixes:
* General Coverity fixes. Some might have security consequences.
* Ghostscript options concatenation is more secure against buffer
overflow.
* Windows: Built-in random number generator is now salted using
CryptGenRandom(). This improves the robustness of the temporary
file allocator.
Bug fixes:
* Coverity Fixes: Large amounts of fixes due to Coverity static
analysis. See the ChangeLog and Mercurial for details. Coverity now
reports zero issues.
* General: Fix problems with reading filenames that include a colon.
* General: Fixed performance problem with sub-image path extraction
when there are many files in the directory.
* General: Add missing options in utility help messages.
* BMP: Reader was wrongly rejecting RLE-compressed files as being too
small (regression added in 1.3.21 release).
* BMP: Fix inverted alpha channel when writing BGRA8888 format.
* DrawAffineImage(): Fix problem with negative x offset.
* DrawAffineImage(): Fix problem that sometimes output rows are skipped when using OpenMP.
* EXIF: Properly validate GPS_OFFSET.
* -format: %Q now reports JPEG quality estimate if it is available.
* -geometry: Fix handling of area geometries in the form "5000000@".
* MagickGetImageGravity(): Prototype was missing in header files.
* MIFF: Memory leak fixes.
* MIFF: MIFF reader failed to read some MIFF headers properly.
* MIFF: Detect buffer overrun attempt while reading zip compressed data.
* PDF: Set image frame scene ids appropriately.
* PNG: Memory leak fixes.
* PS: Set image frame scene ids appropriately.
* PTIF: Mark reduced frames as SubfileType 0x2 instead of 0x1.
* SetImageProfile(): Avoid crash given NULL profile pointer.
* TIFF: Fix reading Old JPEG and YCbCr sample images from libtiff
pics-3.8.0.tar.gz image file collection.
* TIFF: Disable matte channel for compression types which don't
support it.
* XPM: Memory leak fixes.
* XWD: Memory leak fixes.
New Features:
* GRAYA: New subformat for gray coder which supports alpha channel.
Format specifiers "R", "G", "B", "A", "C", "M", and "Y" may now be
used to save and restore the associated channel using the same raw
format as "GRAY".
* Magick++: Image::repage() method added to support resetting 'page'.
* PDF: Added '-define pdf:stop-on-error=true' optoin to cause PDF
reading to quit immediately upon any error.
* Subframe specification: Now specific PS and PDF pages may be
selected, including re-ordering.
Feature improvements:
* PALM: Still a work in progress. Closer to working using netpbm's
implementation as a reference.
Performance Improvements:
* None.
Windows Delegate Updates/Additions:
* dcraw: Update bundled dcraw to release 9.26.0.
* lcms: Update bundled lcms2 to release 2.7.
* png: Updated bundled libpng to release 1.6.17.
* tiff: Update bundled libtiff to release 4.0.6.
* ttf: Update bundled freetype to release 2.6.
* webp: Updated bundled libwebp to release 0.4.3.
* libxml: Update bundled libxml2 to release 2.9.2.
Build Changes:
* lcms ("Little CMS") v1 is no longer supported.
* VisualMagick: Remember and re-use already given paths.
Behavior Changes:
Magick++: adaptiveThreshold() now accepts a 'double' value and the
previous version of the method (using 'unsigned int') is deprecated.
The STL function-object equivalent of the deprecated method is removed
entirely.
Bob
--
Bob Friesenhahn
[email protected], http://www.simplesystems.org/users/bfriesen/
GraphicsMagick Maintainer, http://www.GraphicsMagick.org/
------------------------------------------------------------------------------