GraphicsMagick: 4 new changesets
GraphicsMagick Commits <[email protected]>
| Newsgroups | gmane.comp.video.graphicsmagick.cvs |
|---|---|
| Message-ID | <mailman.37243.1672341302.1459.graphicsmagick-commit@lists.sourceforge.net> |
changeset aef1f9d8c3a8 in /hg/GraphicsMagick details: http://hg.GraphicsMagick.org/hg/GraphicsMagick?cmd=changeset;node=aef1f9d8c3a8 summary: Add use of GetFirstImageInList() where needed to assure that the list pointer is to the first image. changeset eb8abe152366 in /hg/GraphicsMagick details: http://hg.GraphicsMagick.org/hg/GraphicsMagick?cmd=changeset;node=eb8abe152366 summary: ReadImage(): Only perform subimage processing when required changeset 46ec8bb0a9ac in /hg/GraphicsMagick details: http://hg.GraphicsMagick.org/hg/GraphicsMagick?cmd=changeset;node=46ec8bb0a9ac summary: AppendImageToList(): Add more documentation changeset 5b5f8e90be72 in /hg/GraphicsMagick details: http://hg.GraphicsMagick.org/hg/GraphicsMagick?cmd=changeset;node=5b5f8e90be72 summary: Update generated files diffstat: ChangeLog | 13 + NEWS.txt | 50 +++++++- VisualMagick/installer/inc/version.isx | 4 +- magick/command.c | 4 + magick/constitute.c | 57 ++++++++- magick/list.c | 4 +- magick/version.h | 4 +- www/Changelog.html | 12 + www/NEWS.html | 217 +++++++++++++++++++------------- www/api/list.html | 4 +- 10 files changed, 273 insertions(+), 96 deletions(-) diffs (truncated from 823 to 500 lines): diff -r 1db2bd055d4e -r 5b5f8e90be72 ChangeLog --- a/ChangeLog Wed Dec 28 19:40:44 2022 -0600 +++ b/ChangeLog Thu Dec 29 13:14:51 2022 -0600 @@ -1,3 +1,16 @@ +2022-12-29 Bob Friesenhahn <[email protected]> + + * NEWS.txt: Update the news. + + * magick/command.c: Add use of GetFirstImageInList() where needed + to assure that the list pointer is to the first image. + + * magick/constitute.c (ReadImage): Only perform subimage + processing when required. + + * magick/command.c (MogrifyImages): Restore mogrify_images as + first image in list since the rest of the code expects that. + 2022-12-28 Bob Friesenhahn <[email protected]> * coders/mat.c (ReadMATImageV4): Use ReplaceImageInList(). diff -r 1db2bd055d4e -r 5b5f8e90be72 NEWS.txt --- a/NEWS.txt Wed Dec 28 19:40:44 2022 -0600 +++ b/NEWS.txt Thu Dec 29 13:14:51 2022 -0600 @@ -6,7 +6,7 @@ GraphicsMagick News =================== -This file was last updated to reflect changes up to December 26, 2022 +This file was last updated to reflect changes up to December 29, 2022 Please note that this file records news for the associated development branch and that each development branch has its own NEWS file. See the @@ -19,6 +19,54 @@ .. contents:: :local: +1.3.40 (XXXXXX XX, 2022) +========================== + +Special Issues: + +* GraphicsMagick really does need some additional productive + volunteers. For several years now, the burden has entirely been on + me (Bob Friesenhahn). I have been sheparding the project for 20 + years already (and contributed to ImageMagick and GraphicsMagick + combined for 26 years already). It is not reasonable to expect + someone with a full time job (and expecting to retire in a few + years) to do all of the work. + +Security Fixes: + +* GraphicsMagick is participating in Google's oss-fuzz project since + February 4 2018 due to the contributions and assistance of Alex + Gaynor and Paul Kehrer. 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. Please consult the + GraphicsMagick ChangeLog file, Mercurial repository commit log, and + the oss-fuzz issues list for details. + +Security Fixes: + +Bug fixes: + +New Features: + +API Updates: + +* AppendImageToList() now updates the image list pointer to be the + image which was just added. Use GetFirstImageInList() when the + pointer to the first image in the list is needed. + +Windows Delegate Updates/Additions: + +Build Changes: + +Behavior Changes: + +* AppendImageToList() now updates the image list pointer to be the + image which was just added. Use GetFirstImageInList() when the + pointer to the first image in the list is needed. + + 1.3.39 (December 26, 2022) ========================== diff -r 1db2bd055d4e -r 5b5f8e90be72 VisualMagick/installer/inc/version.isx --- a/VisualMagick/installer/inc/version.isx Wed Dec 28 19:40:44 2022 -0600 +++ b/VisualMagick/installer/inc/version.isx Thu Dec 29 13:14:51 2022 -0600 @@ -10,5 +10,5 @@ #define public MagickPackageName "GraphicsMagick" #define public MagickPackageVersion "1.4" -#define public MagickPackageVersionAddendum ".020221228" -#define public MagickPackageReleaseDate "snapshot-20221228" +#define public MagickPackageVersionAddendum ".020221229" +#define public MagickPackageReleaseDate "snapshot-20221229" diff -r 1db2bd055d4e -r 5b5f8e90be72 magick/command.c --- a/magick/command.c Wed Dec 28 19:40:44 2022 -0600 +++ b/magick/command.c Thu Dec 29 13:14:51 2022 -0600 @@ -1474,6 +1474,7 @@ (void) CatchImageException(image); AppendImageToList(&image_list,image); } + image_list=GetFirstImageInList(image_list); if (resource_info.window_id != (char *) NULL) MagickXAnimateBackgroundImage(display,&resource_info,image_list); else @@ -6228,6 +6229,7 @@ GetImageException(image,exception); AppendImageToList(&image_list,image); } + image_list=GetFirstImageInList(image_list); status&=WriteImages(image_info,image_list,argv[argc-1],exception); if (metadata != (char **) NULL) { @@ -11583,6 +11585,7 @@ } AppendImageToList(&mogrify_images,image); } + mogrify_images=GetFirstImageInList(mogrify_images); /* Apply options to the entire image list. @@ -15195,6 +15198,7 @@ */ (void) strlcpy(montage_info->filename,argv[argc-1],MaxTextExtent); /* (void) memmove(montage_info->filename,argv[argc-1],strlen(argv[argc-1])+1); */ + image_list=GetFirstImageInList(image_list); montage_image=MontageImages(image_list,montage_info,exception); if (montage_image == (Image *) NULL) ThrowMontageException(OptionError,RequestDidNotReturnAnImage,(char *) NULL); diff -r 1db2bd055d4e -r 5b5f8e90be72 magick/constitute.c --- a/magick/constitute.c Wed Dec 28 19:40:44 2022 -0600 +++ b/magick/constitute.c Thu Dec 29 13:14:51 2022 -0600 @@ -1463,6 +1463,57 @@ errno=0; } +/* + Test if image list is a simple ordered list already in the bounds of + subimage/subrange or if it needs to be reconciled. +*/ +static MagickBool MagickReconcileListNeeded(const Image* image, const ImageInfo *image_info) MAGICK_FUNC_PURE; +static MagickBool MagickReconcileListNeeded(const Image* image, const ImageInfo *image_info) +{ + const Image + *list; + + const unsigned long + min_scene = image_info->subimage, + max_scene = image_info->subimage+image_info->subrange; + + MagickBool + res = MagickFalse; + + do + { + if (strchr(image_info->tile, ',') != (char *) NULL) + { + res=MagickTrue; + break; + } + + for (list = image; list != (Image *) NULL; list=list->next) + { + if (!(list->scene >= min_scene)) + { + res=MagickTrue; + break; + } + + if (!(list->scene < max_scene)) + { + res=MagickTrue; + break; + } + + if ((list->next) && (list->scene+1 != list->next->scene)) + { + res=MagickTrue; + break; + } + } + + } while (0); + + return res; +} + MagickExport Image *ReadImage(const ImageInfo *image_info, ExceptionInfo *exception) { @@ -1634,6 +1685,7 @@ if (image != (Image *) NULL) { + image=GetFirstImageInList(image); (void) LogMagickEvent(CoderEvent,GetMagickModule(), "Returned from \"%.1024s\" decoder: frames=%lu cache=%s" " monochrome=%s grayscale=%s class=%s colorspace=%s", @@ -1750,6 +1802,7 @@ if (image != (Image *) NULL) { + image=GetFirstImageInList(image); (void) LogMagickEvent(CoderEvent,GetMagickModule(), "Returned from \"%.1024s\" decoder: frames=%lu" " cache=%s monochrome=%s grayscale=%s class=%s" @@ -1818,7 +1871,8 @@ if (GetBlobTemporary(image)) RemoveTemporaryInputFile(clone_info); - if ((image->next != (Image *) NULL) && IsSubimage(clone_info->tile,False)) + if ((image->next != (Image *) NULL) && IsSubimage(clone_info->tile,False) && + MagickReconcileListNeeded(image,clone_info)) { char *q; @@ -1842,7 +1896,6 @@ /* User specified subimages (e.g. image.miff[1,3-5,7-6,2]). - FIXME: Slow! */ subimages=NewImageList(); p=clone_info->tile; diff -r 1db2bd055d4e -r 5b5f8e90be72 magick/list.c --- a/magick/list.c Wed Dec 28 19:40:44 2022 -0600 +++ b/magick/list.c Thu Dec 29 13:14:51 2022 -0600 @@ -51,7 +51,9 @@ % % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % -% AppendImageToList() appends an image to the end of the list. +% AppendImageToList() appends an image to the end of the list. Please +% note that this API allows the list pointer to be updated and in fact +% it now updates the list pointer to be the image which was just added. % % The format of the AppendImageToList method is: % diff -r 1db2bd055d4e -r 5b5f8e90be72 magick/version.h --- a/magick/version.h Wed Dec 28 19:40:44 2022 -0600 +++ b/magick/version.h Thu Dec 29 13:14:51 2022 -0600 @@ -38,8 +38,8 @@ #define MagickLibVersion 0x272401 #define MagickLibVersionText "1.4" #define MagickLibVersionNumber 27,24,1 -#define MagickChangeDate "20221228" -#define MagickReleaseDate "snapshot-20221228" +#define MagickChangeDate "20221229" +#define MagickReleaseDate "snapshot-20221229" /* The MagickLibInterfaceNewest and MagickLibInterfaceOldest defines diff -r 1db2bd055d4e -r 5b5f8e90be72 www/Changelog.html --- a/www/Changelog.html Wed Dec 28 19:40:44 2022 -0600 +++ b/www/Changelog.html Thu Dec 29 13:14:51 2022 -0600 @@ -37,6 +37,18 @@ </div> <div class="document"> +<p>2022-12-29 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> +<ul class="simple"> +<li><p>NEWS.txt: Update the news.</p></li> +<li><p>magick/command.c: Add use of GetFirstImageInList() where needed +to assure that the list pointer is to the first image.</p></li> +<li><p>magick/constitute.c (ReadImage): Only perform subimage +processing when required.</p></li> +<li><p>magick/command.c (MogrifyImages): Restore mogrify_images as +first image in list since the rest of the code expects that.</p></li> +</ul> +</blockquote> <p>2022-12-28 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> <ul class="simple"> diff -r 1db2bd055d4e -r 5b5f8e90be72 www/NEWS.html --- a/www/NEWS.html Wed Dec 28 19:40:44 2022 -0600 +++ b/www/NEWS.html Thu Dec 29 13:14:51 2022 -0600 @@ -41,7 +41,7 @@ <!-- -*- mode: rst -*- --> <!-- This text is in reStucturedText format, so it may look a bit odd. --> <!-- See http://docutils.sourceforge.net/rst.html for details. --> -<p>This file was last updated to reflect changes up to December 26, 2022</p> +<p>This file was last updated to reflect changes up to December 29, 2022</p> <p>Please note that this file records news for the associated development branch and that each development branch has its own NEWS file. See the ChangeLog file, and/or the Mercurial changesets, for full details.</p> @@ -50,53 +50,96 @@ release and not attempt to patch older releases.</p> <div class="contents local topic" id="contents"> <ul class="simple"> -<li><p><a class="reference internal" href="#december-26-2022" id="id2">1.3.39 (December 26, 2022)</a></p></li> -<li><p><a class="reference internal" href="#march-26-2022" id="id3">1.3.38 (March 26, 2022)</a></p></li> -<li><p><a class="reference internal" href="#december-12-2021" id="id4">1.3.37 (December 12, 2021)</a></p></li> -<li><p><a class="reference internal" href="#december-26-2020" id="id5">1.3.36 (December 26, 2020)</a></p></li> -<li><p><a class="reference internal" href="#february-23-2020" id="id6">1.3.35 (February 23, 2020)</a></p></li> -<li><p><a class="reference internal" href="#december-24-2019" id="id7">1.3.34 (December 24, 2019)</a></p></li> -<li><p><a class="reference internal" href="#july-20-2019" id="id8">1.3.33 (July 20, 2019)</a></p></li> -<li><p><a class="reference internal" href="#june-15-2019" id="id9">1.3.32 (June 15, 2019)</a></p></li> -<li><p><a class="reference internal" href="#november-17-2018" id="id10">1.3.31 (November 17, 2018)</a></p></li> -<li><p><a class="reference internal" href="#june-23-2018" id="id11">1.3.30 (June 23, 2018)</a></p></li> -<li><p><a class="reference internal" href="#april-29-2018" id="id12">1.3.29 (April 29, 2018)</a></p></li> -<li><p><a class="reference internal" href="#january-20-2018" id="id13">1.3.28 (January 20, 2018)</a></p></li> -<li><p><a class="reference internal" href="#december-9-2017" id="id14">1.3.27 (December 9, 2017)</a></p></li> -<li><p><a class="reference internal" href="#july-4-2017" id="id15">1.3.26 (July 4, 2017)</a></p></li> -<li><p><a class="reference internal" href="#september-5-2016" id="id16">1.3.25 (September 5, 2016)</a></p></li> -<li><p><a class="reference internal" href="#may-30-2016" id="id17">1.3.24 (May 30, 2016)</a></p></li> -<li><p><a class="reference internal" href="#november-7-2015" id="id18">1.3.23 (November 7, 2015)</a></p></li> -<li><p><a class="reference internal" href="#october-4-2015" id="id19">1.3.22 (October 4, 2015)</a></p></li> -<li><p><a class="reference internal" href="#february-28-2015" id="id20">1.3.21 (February 28, 2015)</a></p></li> -<li><p><a class="reference internal" href="#august-16-2014" id="id21">1.3.20 (August 16, 2014)</a></p></li> -<li><p><a class="reference internal" href="#december-31-2013" id="id22">1.3.19 (December 31, 2013)</a></p></li> -<li><p><a class="reference internal" href="#march-10-2013" id="id23">1.3.18 (March 10, 2013)</a></p></li> -<li><p><a class="reference internal" href="#october-13-2012" id="id24">1.3.17 (October 13, 2012)</a></p></li> -<li><p><a class="reference internal" href="#june-24-2012" id="id25">1.3.16 (June 24, 2012)</a></p></li> -<li><p><a class="reference internal" href="#april-28-2012" id="id26">1.3.15 (April 28, 2012)</a></p></li> -<li><p><a class="reference internal" href="#february-25-2012" id="id27">1.3.14 (February 25, 2012)</a></p></li> -<li><p><a class="reference internal" href="#december-24-2011" id="id28">1.3.13 (December 24, 2011)</a></p></li> -<li><p><a class="reference internal" href="#march-8-2010" id="id29">1.3.12 (March 8, 2010)</a></p></li> -<li><p><a class="reference internal" href="#february-21-2010" id="id30">1.3.11 (February 21, 2010)</a></p></li> -<li><p><a class="reference internal" href="#february-10-2010" id="id31">1.3.10 (February 10, 2010)</a></p></li> -<li><p><a class="reference internal" href="#february-4-2010" id="id32">1.3.9 (February 4, 2010)</a></p></li> -<li><p><a class="reference internal" href="#january-21-2010" id="id33">1.3.8 (January 21, 2010)</a></p></li> -<li><p><a class="reference internal" href="#september-17-2009" id="id34">1.3.7 (September 17, 2009)</a></p></li> -<li><p><a class="reference internal" href="#july-25-2009" id="id35">1.3.6 (July 25, 2009)</a></p></li> -<li><p><a class="reference internal" href="#january-26-2009" id="id36">1.3.5 (January 26, 2009)</a></p></li> -<li><p><a class="reference internal" href="#january-13-2009" id="id37">1.3.4 (January 13, 2009)</a></p></li> -<li><p><a class="reference internal" href="#december-9-2008" id="id38">1.3.3 (December 9, 2008)</a></p></li> -<li><p><a class="reference internal" href="#november-29-2008" id="id39">1.3.2 (November 29, 2008)</a></p></li> -<li><p><a class="reference internal" href="#november-17-2008" id="id40">1.3.1 (November 17, 2008)</a></p></li> -<li><p><a class="reference internal" href="#november-9-2008" id="id41">1.3 (November 9, 2008)</a></p></li> -<li><p><a class="reference internal" href="#april-29-2008" id="id42">1.2 (April 29, 2008)</a></p></li> -<li><p><a class="reference internal" href="#released-april-4-2004" id="id43">1.1 (Released April 4, 2004)</a></p></li> -<li><p><a class="reference internal" href="#released-in-may-2003" id="id44">1.0 (Released in May, 2003)</a></p></li> +<li><p><a class="reference internal" href="#xxxxxx-xx-2022" id="id2">1.3.40 (XXXXXX XX, 2022)</a></p></li> +<li><p><a class="reference internal" href="#december-26-2022" id="id3">1.3.39 (December 26, 2022)</a></p></li> +<li><p><a class="reference internal" href="#march-26-2022" id="id4">1.3.38 (March 26, 2022)</a></p></li> +<li><p><a class="reference internal" href="#december-12-2021" id="id5">1.3.37 (December 12, 2021)</a></p></li> +<li><p><a class="reference internal" href="#december-26-2020" id="id6">1.3.36 (December 26, 2020)</a></p></li> +<li><p><a class="reference internal" href="#february-23-2020" id="id7">1.3.35 (February 23, 2020)</a></p></li> +<li><p><a class="reference internal" href="#december-24-2019" id="id8">1.3.34 (December 24, 2019)</a></p></li> +<li><p><a class="reference internal" href="#july-20-2019" id="id9">1.3.33 (July 20, 2019)</a></p></li> +<li><p><a class="reference internal" href="#june-15-2019" id="id10">1.3.32 (June 15, 2019)</a></p></li> +<li><p><a class="reference internal" href="#november-17-2018" id="id11">1.3.31 (November 17, 2018)</a></p></li> +<li><p><a class="reference internal" href="#june-23-2018" id="id12">1.3.30 (June 23, 2018)</a></p></li> +<li><p><a class="reference internal" href="#april-29-2018" id="id13">1.3.29 (April 29, 2018)</a></p></li> +<li><p><a class="reference internal" href="#january-20-2018" id="id14">1.3.28 (January 20, 2018)</a></p></li> +<li><p><a class="reference internal" href="#december-9-2017" id="id15">1.3.27 (December 9, 2017)</a></p></li> +<li><p><a class="reference internal" href="#july-4-2017" id="id16">1.3.26 (July 4, 2017)</a></p></li> +<li><p><a class="reference internal" href="#september-5-2016" id="id17">1.3.25 (September 5, 2016)</a></p></li> +<li><p><a class="reference internal" href="#may-30-2016" id="id18">1.3.24 (May 30, 2016)</a></p></li> +<li><p><a class="reference internal" href="#november-7-2015" id="id19">1.3.23 (November 7, 2015)</a></p></li> +<li><p><a class="reference internal" href="#october-4-2015" id="id20">1.3.22 (October 4, 2015)</a></p></li> +<li><p><a class="reference internal" href="#february-28-2015" id="id21">1.3.21 (February 28, 2015)</a></p></li> +<li><p><a class="reference internal" href="#august-16-2014" id="id22">1.3.20 (August 16, 2014)</a></p></li> +<li><p><a class="reference internal" href="#december-31-2013" id="id23">1.3.19 (December 31, 2013)</a></p></li> +<li><p><a class="reference internal" href="#march-10-2013" id="id24">1.3.18 (March 10, 2013)</a></p></li> +<li><p><a class="reference internal" href="#october-13-2012" id="id25">1.3.17 (October 13, 2012)</a></p></li> +<li><p><a class="reference internal" href="#june-24-2012" id="id26">1.3.16 (June 24, 2012)</a></p></li> +<li><p><a class="reference internal" href="#april-28-2012" id="id27">1.3.15 (April 28, 2012)</a></p></li> +<li><p><a class="reference internal" href="#february-25-2012" id="id28">1.3.14 (February 25, 2012)</a></p></li> +<li><p><a class="reference internal" href="#december-24-2011" id="id29">1.3.13 (December 24, 2011)</a></p></li> +<li><p><a class="reference internal" href="#march-8-2010" id="id30">1.3.12 (March 8, 2010)</a></p></li> +<li><p><a class="reference internal" href="#february-21-2010" id="id31">1.3.11 (February 21, 2010)</a></p></li> +<li><p><a class="reference internal" href="#february-10-2010" id="id32">1.3.10 (February 10, 2010)</a></p></li> +<li><p><a class="reference internal" href="#february-4-2010" id="id33">1.3.9 (February 4, 2010)</a></p></li> +<li><p><a class="reference internal" href="#january-21-2010" id="id34">1.3.8 (January 21, 2010)</a></p></li> +<li><p><a class="reference internal" href="#september-17-2009" id="id35">1.3.7 (September 17, 2009)</a></p></li> +<li><p><a class="reference internal" href="#july-25-2009" id="id36">1.3.6 (July 25, 2009)</a></p></li> +<li><p><a class="reference internal" href="#january-26-2009" id="id37">1.3.5 (January 26, 2009)</a></p></li> +<li><p><a class="reference internal" href="#january-13-2009" id="id38">1.3.4 (January 13, 2009)</a></p></li> +<li><p><a class="reference internal" href="#december-9-2008" id="id39">1.3.3 (December 9, 2008)</a></p></li> +<li><p><a class="reference internal" href="#november-29-2008" id="id40">1.3.2 (November 29, 2008)</a></p></li> +<li><p><a class="reference internal" href="#november-17-2008" id="id41">1.3.1 (November 17, 2008)</a></p></li> +<li><p><a class="reference internal" href="#november-9-2008" id="id42">1.3 (November 9, 2008)</a></p></li> +<li><p><a class="reference internal" href="#april-29-2008" id="id43">1.2 (April 29, 2008)</a></p></li> +<li><p><a class="reference internal" href="#released-april-4-2004" id="id44">1.1 (Released April 4, 2004)</a></p></li> +<li><p><a class="reference internal" href="#released-in-may-2003" id="id45">1.0 (Released in May, 2003)</a></p></li> +</ul> +</div> +<div class="section" id="xxxxxx-xx-2022"> +<h1><a class="toc-backref" href="#id2">1.3.40 (XXXXXX XX, 2022)</a></h1> +<p>Special Issues:</p> +<ul class="simple"> +<li><p>GraphicsMagick really does need some additional productive +volunteers. For several years now, the burden has entirely been on +me (Bob Friesenhahn). I have been sheparding the project for 20 +years already (and contributed to ImageMagick and GraphicsMagick +combined for 26 years already). It is not reasonable to expect +someone with a full time job (and expecting to retire in a few +years) to do all of the work.</p></li> +</ul> +<p>Security Fixes:</p> +<ul class="simple"> +<li><p>GraphicsMagick is participating in Google's oss-fuzz project since +February 4 2018 due to the contributions and assistance of Alex +Gaynor and Paul Kehrer. The issues list is available at +<a class="reference external" href="https://bugs.chromium.org/p/oss-fuzz/issues/list">https://bugs.chromium.org/p/oss-fuzz/issues/list</a> 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. Please consult the +GraphicsMagick ChangeLog file, Mercurial repository commit log, and +the oss-fuzz issues list for details.</p></li> +</ul> +<p>Security Fixes:</p> +<p>Bug fixes:</p> +<p>New Features:</p> +<p>API Updates:</p> +<ul class="simple"> +<li><p>AppendImageToList() now updates the image list pointer to be the +image which was just added. Use GetFirstImageInList() when the +pointer to the first image in the list is needed.</p></li> +</ul> +<p>Windows Delegate Updates/Additions:</p> +<p>Build Changes:</p> +<p>Behavior Changes:</p> +<ul class="simple"> +<li><p>AppendImageToList() now updates the image list pointer to be the +image which was just added. Use GetFirstImageInList() when the +pointer to the first image in the list is needed.</p></li> </ul> </div> <div class="section" id="december-26-2022"> -<h1><a class="toc-backref" href="#id2">1.3.39 (December 26, 2022)</a></h1> +<h1><a class="toc-backref" href="#id3">1.3.39 (December 26, 2022)</a></h1> <p>Special Issues:</p> <ul class="simple"> <li><p>GraphicsMagick really does need some additional productive @@ -226,7 +269,7 @@ </ul> </div> <div class="section" id="march-26-2022"> -<h1><a class="toc-backref" href="#id3">1.3.38 (March 26, 2022)</a></h1> +<h1><a class="toc-backref" href="#id4">1.3.38 (March 26, 2022)</a></h1> <p>Special Issues:</p> <ul class="simple"> <li><p>The FTP site ftp.graphicsmagick.org is now shut down due to a lack @@ -327,7 +370,7 @@ </ul> </div> <div class="section" id="december-12-2021"> -<h1><a class="toc-backref" href="#id4">1.3.37 (December 12, 2021)</a></h1> +<h1><a class="toc-backref" href="#id5">1.3.37 (December 12, 2021)</a></h1> <p>Special Issues:</p> <ul class="simple"> <li><p>The FTP site ftp.graphicsmagick.org is now shut down due to a lack @@ -462,7 +505,7 @@ </ul> </div> <div class="section" id="december-26-2020"> -<h1><a class="toc-backref" href="#id5">1.3.36 (December 26, 2020)</a></h1> +<h1><a class="toc-backref" href="#id6">1.3.36 (December 26, 2020)</a></h1> <p>Special Issues:</p> <ul class="simple"> <li><p>None</p></li> @@ -623,7 +666,7 @@ </ul> </div> <div class="section" id="february-23-2020"> -<h1><a class="toc-backref" href="#id6">1.3.35 (February 23, 2020)</a></h1> +<h1><a class="toc-backref" href="#id7">1.3.35 (February 23, 2020)</a></h1> <p>Special Issues:</p> <ul class="simple"> <li><p>It has been discovered that the 'ICU' library (a perhaps 30MB C++ @@ -733,7 +776,7 @@ </ul> </div> <div class="section" id="december-24-2019"> -<h1><a class="toc-backref" href="#id7">1.3.34 (December 24, 2019)</a></h1> +<h1><a class="toc-backref" href="#id8">1.3.34 (December 24, 2019)</a></h1> <p>Special Issues:</p> <ul class="simple"> <li><p>It has been discovered that the 'ICU' library (a perhaps 30MB C++ @@ -850,7 +893,7 @@ </ul> </div> <div class="section" id="july-20-2019"> -<h1><a class="toc-backref" href="#id8">1.3.33 (July 20, 2019)</a></h1> +<h1><a class="toc-backref" href="#id9">1.3.33 (July 20, 2019)</a></h1> <p>Special Issues:</p> <ul class="simple"> <li><p>It has been discovered that the 'ICU' library (a perhaps 30MB C++ @@ -934,7 +977,7 @@ </ul> </div> <div class="section" id="june-15-2019"> -<h1><a class="toc-backref" href="#id9">1.3.32 (June 15, 2019)</a></h1> +<h1><a class="toc-backref" href="#id10">1.3.32 (June 15, 2019)</a></h1> <p>Special Issues:</p> <ul class="simple"> <li><p>It has been discovered that the 'ICU' library (a perhaps 30MB C++ @@ -1144,7 +1187,7 @@ </ul> </div> <div class="section" id="november-17-2018"> -<h1><a class="toc-backref" href="#id10">1.3.31 (November 17, 2018)</a></h1> +<h1><a class="toc-backref" href="#id11">1.3.31 (November 17, 2018)</a></h1>