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 <<a class="reference external" href="mailto:bfriesen%40simple.dallas.tx.us">bfriesen<span>@</span>simple<span>.</span>dallas<span>.</span>tx<span>.</span>us</a>></p> +<blockquote> +* 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.</blockquote> <p>2022-05-02 Bob Friesenhahn <<a class="reference external" href="mailto:bfriesen%40simple.dallas.tx.us">bfriesen<span>@</span>simple<span>.</span>dallas<span>.</span>tx<span>.</span>us</a>></p> <blockquote> * doc/options.imdoc: Add documentation for -define