GraphicsMagick: ReadOnePNGImage(): Assure that entire image list...

GraphicsMagick Commits <[email protected]>
Newsgroups gmane.comp.video.graphicsmagick.cvs
Message-ID <mailman.4386.1652025378.1410.graphicsmagick-commit@lists.sourceforge.net>
changeset 06f5cda2ec7b in /hg/GraphicsMagick
details: http://hg.GraphicsMagick.org/hg/GraphicsMagick?cmd=changeset;node=06f5cda2ec7b
summary: ReadOnePNGImage(): Assure that entire image list is freed.

diffstat:

 ChangeLog                              |  7 +++++++
 VisualMagick/installer/inc/version.isx |  4 ++--
 coders/png.c                           |  9 ++++++++-
 magick/version.h                       |  4 ++--
 www/Changelog.html                     |  6 ++++++
 5 files changed, 25 insertions(+), 5 deletions(-)

diffs (77 lines):

diff -r f36cb4a21602 -r 06f5cda2ec7b ChangeLog
--- a/ChangeLog	Mon May 02 08:12:55 2022 -0500
+++ b/ChangeLog	Sun May 08 10:55:57 2022 -0500
@@ -1,3 +1,10 @@
+2022-05-08  Bob Friesenhahn  <[email protected]>
+
+        * coders/png.c (ReadOnePNGImage): Assure that entire image list is
+        freed. Addresses oss-fuzz 46997 "graphicsmagick:coder_MNG_fuzzer:
+        Indirect-leak in MagickMallocCleared".  This is a new issue due to
+        incrementally seeking the complete correct error-handling cleanup.
+
 2022-05-02  Bob Friesenhahn  <[email protected]>
 
         * doc/options.imdoc: Add documentation for -define
diff -r f36cb4a21602 -r 06f5cda2ec7b VisualMagick/installer/inc/version.isx
--- a/VisualMagick/installer/inc/version.isx	Mon May 02 08:12:55 2022 -0500
+++ b/VisualMagick/installer/inc/version.isx	Sun May 08 10:55:57 2022 -0500
@@ -10,5 +10,5 @@
 
 #define public MagickPackageName "GraphicsMagick"
 #define public MagickPackageVersion "1.4"
-#define public MagickPackageVersionAddendum ".020220502"
-#define public MagickPackageReleaseDate "snapshot-20220502"
+#define public MagickPackageVersionAddendum ".020220508"
+#define public MagickPackageReleaseDate "snapshot-20220508"
diff -r f36cb4a21602 -r 06f5cda2ec7b coders/png.c
--- a/coders/png.c	Mon May 02 08:12:55 2022 -0500
+++ b/coders/png.c	Sun May 08 10:55:57 2022 -0500
@@ -1629,10 +1629,17 @@
         }
       if (image)
         {
-          DestroyImage(image);
+          /* Image is part of mng_info->image list (see above) */
+          DestroyImageList(image);
           image=(Image *) NULL;
           mng_info->image=(Image *) NULL;
         }
+      /* We are not aware that the following case ever happens */
+      if (mng_info->image)
+        {
+          DestroyImageList(mng_info->image);
+          mng_info->image=(Image *) NULL;
+        }
       return(image);
     }
 
diff -r f36cb4a21602 -r 06f5cda2ec7b magick/version.h
--- a/magick/version.h	Mon May 02 08:12:55 2022 -0500
+++ b/magick/version.h	Sun May 08 10:55:57 2022 -0500
@@ -38,8 +38,8 @@
 #define MagickLibVersion  0x272400
 #define MagickLibVersionText  "1.4"
 #define MagickLibVersionNumber 27,24,0
-#define MagickChangeDate   "20220502"
-#define MagickReleaseDate  "snapshot-20220502"
+#define MagickChangeDate   "20220508"
+#define MagickReleaseDate  "snapshot-20220508"
 
 /*
   The MagickLibInterfaceNewest and MagickLibInterfaceOldest defines
diff -r f36cb4a21602 -r 06f5cda2ec7b www/Changelog.html
--- a/www/Changelog.html	Mon May 02 08:12:55 2022 -0500
+++ b/www/Changelog.html	Sun May 08 10:55:57 2022 -0500
@@ -35,6 +35,12 @@
 <div class="document">
 
 
+<p>2022-05-08  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
+<blockquote>
+* coders/png.c (ReadOnePNGImage): Assure that entire image list is
+freed. Addresses oss-fuzz 46997 &quot;graphicsmagick:coder_MNG_fuzzer:
+Indirect-leak in MagickMallocCleared&quot;.  This is a new issue due to
+incrementally seeking the complete correct error-handling cleanup.</blockquote>
 <p>2022-05-02  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
 <blockquote>
 * doc/options.imdoc: Add documentation for -define
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.