GraphicsMagick 1.3.29 is now available

Bob Friesenhahn <[email protected]> Sun, 29 Apr 2018 15:07:50 -0500 (CDT)
Newsgroups gmane.comp.video.graphicsmagick.announce
Message-ID <[email protected]>
GraphicsMagick 1.3.29 (a general-purpose image processing package) is
now available.  This release is the product of significant bug and
security fixes due to GraphicsMagick now participating in Google's
oss-fuzz project.  This release fixes 173 issues detected by oss-fuzz.

While it is possible that there are some regressions due to the bug
fixes (please report any discovered), all users with exposure to
untrusted inputs are recommended to upgrade to this release
as soon as possible.

Read about GraphicsMagick 1.3.29 at its web site 
"http://www.graphicsmagick.org/".


SHA1 checksums for release files
--------------------------------

8ecfff711e164e1a41cf3d273e3c02781c54f3a8  GraphicsMagick-1.3.29-Q16-win32-dll.exe
8f6cd584b4a29daf0ad45632ab0bb6684fa4af70  GraphicsMagick-1.3.29-Q16-win64-dll.exe
fe24e6718c29df7ac32bd64a9a04def6abe85c83  GraphicsMagick-1.3.29-Q8-win32-dll.exe
e494a8f8d918db71ffd385e01a32c44fb9a446cd  GraphicsMagick-1.3.29-Q8-win64-dll.exe
bb7aa77608695e29de7fb4c5859badf3a0f4fee8  GraphicsMagick-1.3.29-windows-source.7z
290a83f6f10874a801e4d956fc61380eec8d47a4  GraphicsMagick-1.3.29.tar.bz2
af78c1c6fe99cf725c7e540dce9e775a99082af5  GraphicsMagick-1.3.29.tar.gz
0b9809e15cc3f5dba939319dc85c8f80f05f5588  GraphicsMagick-1.3.29.tar.lz
d6963fafaa0e0b5c3d9b112f176f9c8913edb8dd  GraphicsMagick-1.3.29.tar.xz


High-level summary of changes
-----------------------------

Special Issues:

* None

Security Fixes:

* GraphicsMagick is now participating in Google's oss-fuzz project due
   to the contributions and assistance of Alex Gaynor. Since February 4
   2018, 180 issues have been opened by oss-fuzz and 173 of those
   issues have been resolved.  The issues list is available at
   https://bugs.chromium.org/p/oss-fuzz/issues/list under search term
   "graphicsmagick".  Issues are available for anyone to view and
   duplicate if they have been in "Verified" status for 30 days, or if
   they have been in "New" status for 90 days.  There are too many
   fixes to list here.  Please consult the GraphicsMagick ChangeLog
   file, Mercurial repository commit log, and the oss-fuzz issues list
   for details.

* JNG: Require that the embedded JPEG image have the same dimensions
   as the JNG image as provided by JHDR. Avoids a heap write overflow.

* MNG: Arbitrarily limit the number of loops which may be requested by
   the MNG LOOP chunk to 512 loops, and provide the '-define
   mng:maximum-loops=value' option in case the user wants to change the
   limit.  This fixes a denial of service caused by large LOOP
   specifications.

Bug fixes:

* Many oss-fuzz fixes are bug fixes.

* DICOM: Pre/post rescale functions are temporarily disabled (until
   the implementation is fixed).

* JPEG: Fix regression in last release in which reading some JPEG
   files produces the error "Improper call to JPEG library in state
   201".

* ICON: Some DIB-based Windows ICON files were reported as corrupt to
   an unexpectedly missing opacity mask image.

* In-memory Blob I/O: Don't implicitly increase the allocation size
   due to seek offsets.

* MNG: Detect and handle failure to allocate global PLTE. Fix divide
   by zero.

* DrawGetStrokeDashArray(): Check for failure to allocate memory.

* BlobToImage(): Now produces useful exception reports to cover the
   cases where 'magick' was not set and the file format could not be
   deduced from its header.

New Features:

* None

API Updates:

* Wand API: Added MagickIsPaletteImage(), MagickIsOpaqueImage(),
   MagickIsMonochromeImage(), MagickIsGrayImage(), MagickHasColormap()
   based on contributions by Troy Patteson.

* New structure ImageExtra added and Image 'clip_mask' member is
   replaced by 'extra' which points to private ImageExtra allocation.
   The ImageGetClipMask() function now provides access to the clip mask
   image.

* New structure DrawInfoExtra and DrawInfo 'clip_path' is replaced by
   'extra' which points to private DrawInfoExtra allocation.  The
   DrawInfoGetClipPath() function now provides access to the clip path.

* New core library functions: GetImageCompositeMask(),
   CompositeMaskImage(), CompositePathImage(), SetImageCompositeMask(),
   ImageGetClipMask(), ImageGetCompositeMask(), DrawInfoGetClipPath(),
   DrawInfoGetCompositePath()

* Deprecated core library functions: RegisterStaticModules(),
   UnregisterStaticModules().

Feature improvements:

* Static modules (in static library or shared library without
   dynamically loadable modules) are now lazy-loaded using the same
   external interface as the lazy-loader for dynamic modules.  This
   results in more similarity between the builds and reduces the fixed
   initialization overhead by only initializing the modules which are
   used.

* SVG: The quality of SVG support has been significantly improved due
   to the efforts of Greg Wolfe.

* FreeType/TTF rendering: Rendering fixes for opacity.

Windows Delegate Updates/Additions:

* None

Build Changes:

* None

Behavior Changes:

* None

-- 
Bob Friesenhahn
[email protected], http://www.simplesystems.org/users/bfriesen/
GraphicsMagick Maintainer,    http://www.GraphicsMagick.org/

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot