GraphicsMagick: 2 new changesets
GraphicsMagick Commits <[email protected]> Sat, 23 Sep 2023 14:02:36 -0500
| Newsgroups | gmane.comp.video.graphicsmagick.cvs |
|---|---|
| Message-ID | <mailman.3037.1695495766.7975.graphicsmagick-commit@lists.sourceforge.net> |
changeset 6ae1ff7cda9d in /hg/GraphicsMagick details: http://hg.GraphicsMagick.org/hg/GraphicsMagick?cmd=changeset;node=6ae1ff7cda9d summary: Merge changes for the 1.3.42 release changeset fa47877271c4 in /hg/GraphicsMagick details: http://hg.GraphicsMagick.org/hg/GraphicsMagick?cmd=changeset;node=fa47877271c4 summary: Fix release date diffstat: ChangeLog | 329 +++++++++++ Copyright.txt | 2 +- Makefile.am | 2 + Makefile.in | 2 + NEWS.txt | 91 +++- PerlMagick/Magick.pm | 2 +- PerlMagick/t/MasterImage_70x46.ppm | 3 + PerlMagick/t/input.pam | 3 + PerlMagick/t/input_64.pam | 3 + PerlMagick/t/input_p1.pbm | 3 + PerlMagick/t/input_p2.pgm | 3 + PerlMagick/t/input_p3.ppm | 3 + PerlMagick/t/input_p4.pbm | Bin PerlMagick/t/input_p5.pgm | 3 + PerlMagick/t/input_p6.ppm | 3 + PerlMagick/t/jpeg/input_JPEG.bmp | Bin PerlMagick/t/jpeg/read.t | 11 +- PerlMagick/t/reference/jpeg/input_JPEG.bmp.miff | Bin VisualMagick/configure/welcome_page.cpp | 45 +- VisualMagick/installer/gm-win32-Q16-dll.iss | 5 +- VisualMagick/installer/gm-win32-Q8-dll.iss | 5 +- VisualMagick/installer/gm-win64-Q16-dll.iss | 5 +- VisualMagick/installer/gm-win64-Q8-dll.iss | 5 +- VisualMagick/installer/inc/body.isx | 57 +- VisualMagick/installer/inc/files-dlls.isx | 44 +- VisualMagick/installer/inc/version.isx | 4 +- VisualMagick/installer/redist/VC2013/note.txt | 8 + VisualMagick/magick/magick_config.h.in | 12 +- VisualMagick/tests/runtest.bat | 3 +- coders/bmp.c | 673 ++++++++++++++++------- coders/jp2.c | 12 + coders/mat.c | 2 +- coders/pnm.c | 77 ++- coders/sun.c | 4 +- coders/svg.c | 27 +- coders/tiff.c | 47 +- coders/wmf.c | 562 ++++++++++--------- coders/xtrn.c | 12 +- doc/options.imdoc | 9 + magick/attribute.c | 7 +- magick/command.c | 13 +- magick/module_aliases.h | 5 +- magick/resize.c | 2 +- magick/static.c | 4 +- magick/utility.c | 30 +- magick/version.h | 10 +- tests/constitute.c | 16 +- tests/drawtest.c | 14 +- tests/rwblob.c | 16 +- tests/rwfile.c | 16 +- tiff/libtiff/stdbool2.h | 2 +- utilities/gm.1 | 15 +- version.sh | 6 +- wand/drawing_wand.c | 12 + wand/drawtest.c | 12 + wand/magick_wand.c | 11 + wand/pixel_wand.c | 25 +- wand/wandtest.c | 12 + webp/src/webp/types.h | 2 +- www/Changelog.html | 408 ++++++++++++++ www/Copyright.html | 2 +- www/GraphicsMagick.html | 8 + www/ImageMagickObject.html | 22 +- www/ImageMagickObject.rst | 22 +- www/NEWS.html | 261 ++++++--- www/gm.html | 8 + 66 files changed, 2310 insertions(+), 732 deletions(-) diffs (truncated from 5427 to 500 lines): diff -r ac9838528175 -r fa47877271c4 ChangeLog --- a/ChangeLog Sat Aug 12 10:33:08 2023 -0500 +++ b/ChangeLog Sat Sep 23 14:02:23 2023 -0500 @@ -1,3 +1,332 @@ +2023-09-23 Bob Friesenhahn <[email protected]> + + * version.sh : Updates for the 1.3.42 release. + + * NEWS.txt: Update the news for the 1.3.42 release. + + * VisualMagick/installer/redist/VC2013/note.txt: Add note about + where to get Visual Studio 2013 redistributables. File also + serves to create the needed directory. + +2023-09-22 Bob Friesenhahn <[email protected]> + + * coders/Makefile.am (coders_bmp_la_LIBADD): Extra modules are not + needed because the dependencies are taken care of by loading other + modules. + +2023-09-23 Fojtik Jaroslav <[email protected]> + + * coders/bmp.c: Emit error when OS/2 bitmap with compression BI_JPEG + or BI_PNG is detected. + + Read files compressed with BI_PNG. + +2023-09-22 Fojtik Jaroslav <[email protected]> + + * coders/bmp.c: Display bitmasks into optional log. + +2023-09-21 Bob Friesenhahn <[email protected]> + + * PerlMagick/t/jpeg/read.t: Add test for JPEG-compressed BMP. + Moved input reference file to PerlMagick/t/jpeg/input_JPEG.bmp and + reference output file is + PerlMagick/t/reference/jpeg/input_JPEG.bmp.miff. + +2023-09-21 Fojtik Jaroslav <[email protected]> + + * PerlMagick/t/input_JPEG.bmp: Added BMP sample with JPEG encoding. + + * coders/bmp.c: Only 16bpp and 32bpp is supported for BI_BITFIELDS + compression type. 8bpp is not implemented. This fixes oss-fuzz + issue 62519: "graphicsmagick:coder_BMP_fuzzer: + Use-of-uninitialized-value in WriteBMPImage". + +2023-09-20 Fojtik Jaroslav <[email protected]> + + * coders/bmp.c: Remove duplicity, same information has been logged + twice. + + 22:54:49 0:0.002746 0.000u 9688 bmp.c/ReadBMPImage/750/Coder: + File size: Claimed=8, Actual=1129 + + 22:54:49 0:0.002906 0.000u 9688 bmp.c/ReadBMPImage/1105/Coder: + File size: Claimed=8, Actual=1129 + +2023-09-20 Bob Friesenhahn <[email protected]> + + * tests/{constitute.c, drawtest.c, rwblob.c, rwfile.c}: Fix GCC 13 + warning. + +2023-09-19 Fojtik Jaroslav <[email protected]> + + * VisualMagick/tests/runtest.bat: VID is not a regular image format. + Do not use batch test for it. + +2023-09-18 Bob Friesenhahn <[email protected]> + + * coders/Makefile.am (coders_bmp_la_LIBADD): The BMP coder module + now optionally depends on libjpeg. + +2023-09-18 Bob Friesenhahn <[email protected]> + + * doc/options.imdoc: Add documentation for -define bmp:allow-jpeg. + +2023-09-18 Fojtik Jaroslav <[email protected]> + + * coders/bmp.c: Ability to write JPG encoded image. + Using a new command line switch: -define bmp:allow-jpeg + +2023-09-17 Bob Friesenhahn <[email protected]> + + * coders/jp2.c (BlobRead): For old libJasper, return 0 for size + value if the actual value does not fit in an 'int'. + * coders/jp2.c (BlobWrite): For old libJasper, return 0 for size + value if the actual value does not fit in an 'int'. + + * magick/command.c (MagickCommand): Eliminate duplicate utility + name output in error messages when utility is executed via a + magick compatibility link. For example via symbolic link from + 'convert' to 'gm'. This problem was added when the initial batch + mode implementation was submitted. Addresses SourceForge issue + #727 "convert convert" in error messages. + + * VisualMagick/configure/welcome_page.cpp: Update configure + welcome text based on my current understanding. + +2023-09-17 Fojtik Jaroslav <[email protected]> + + * VisualMagick/configure/welcome_page.cpp: Notify user that MSVC + older than 2008 is not supported. + + * VisualMagick/magick/magick_config.h.in Expose ENABLE_SVG_WRITER. + For debugging purpose this should be always enabled. Only for + final release you can disable it. + +2023-09-16 Fojtik Jaroslav <[email protected]> + + * coders/mat.c: Cleanup one unneeded warning. + +2023-09-16 Bob Friesenhahn <[email protected]> + + * VisualMagick/magick/magick_config.h.in: Update the copyright + year range. + + * Copyright.txt: Update the copyright year. + +2023-09-15 Bob Friesenhahn <[email protected]> + + * coders/wmf.c (ipa_bmp_draw): Print bmp.data as the pointer it is + rather than casting to a 'long'. + + * coders/pnm.c (PNMReadThreads): Fix compiler warning regarding + overflow. + + * coders/sun.c (WriteSUNImage): Test for sun_info.length overflow + in a way which should not provoke a compiler warning. + +2023-09-13 Bob Friesenhahn <[email protected]> + + * VisualMagick/magick/magick_config.h.in: Block building the XTRN + coder unless the user enables EnableXTRNCoder. The XTRN coder is + primarily used by the optional contributed ImageMagickObject COM+ + DLL object, but it might be used for a similar purpose. The XTRN + coder serves no purpose unless invoked from the address space of a + program using GraphicsMagick. + +2023-09-10 Bob Friesenhahn <[email protected]> + + * tests/{constitute.c, drawtest.c, rwblob.c, rwfile.c}: Initialize + locale settings the same as the 'gm' utility. + + * magick/{drawing_wand.c, drawtest.c, magick_wand.c, pixel_wand.c, + wandtest.c}: Initialize locale settings the same as the 'gm' + utility. + +2023-09-09 Fojtik Jaroslav <[email protected]> + + * coders/xtrn.c: Fixed crash on dereferenced NULL pointer. + +2023-09-07 Bob Friesenhahn <[email protected]> + + * magick/attribute.c (SetImageAttribute): Remove + SetImageAttribute() Extending attribute value text code entirely. + +2023-09-06 Bob Friesenhahn <[email protected]> + + * NEWS.txt: Updated the News. + + * magick/attribute.c (SetImageAttribute): Disable attribute + extension deprecation warning printf. It may be that eliminating + support for attribute value extension will never happen due to + subtly entrenched internal usage. + + * coders/pnm.c (ReadPNMImage): Fix reading comments from PAM + format. + +2023-09-06 Fojtik Jaroslav <[email protected]> + + * coders/bmp.c: Reverting to BI_BITFIELD. BI_ALPHABITFIELDS seems + to be very rare. + +2023-09-05 Bob Friesenhahn <[email protected]> + + * coders/wmf.c (ipa_draw_text): Treat pointer inputs as if they + may be NULL. Change live printfs to traces. Adjust white-space + in whole module to current conventions. Addresses SourceForge + issue #724 "Old WMF display: assert fails in draw.c", although I + am unable to reproduce it. + +2023-09-05 Fojtik Jaroslav <[email protected]> + + * coders/bmp.c: Sorry for a previous commit. After some + investigations it seems that bit field masks are behind header + when BI_SIZE=40. + +2023-09-04 Fojtik Jaroslav <[email protected]> + + * coders/bmp.c: Default bit split for older BMPs with 32bpp and + BI_BITFIELDS set is crazy. Verified against IrFanView and + bmpsuite-2.7.zip - image g/rgb32bf.bmp. + +2023-09-02 Bob Friesenhahn <[email protected]> + + * magick/resize.c (ResizeImage): Restore vertical/horizontal + filter order decision logic which was in place before the 1.3.41 + release since it may result in tiny changes to low order bits in + 16-bit/sample images, which may be concerning to some. Resolves + SourceForge issue #723 "montage result differ between 1.3.40 and + 1.3.41". The provided test-case showed that the filter filter + order changed from "Vertical/Horizontal" to "Horizontal/Vertical". + +2023-09-01 Bob Friesenhahn <[email protected]> + + * magick/command.c (MogrifyImage): Use MaxRGBDouble double + constant rather than integral MaxRGB as argument to + StringToDouble(). + +2023-09-01 Fojtik Jaroslav <[email protected]> + + * coders/bmp.c Bitmap header with size 52 bytes is also valid. + +2023-08-31 Bob Friesenhahn <[email protected]> + + * magick/module_aliases.h: Add missing module aliases "PNG00", + "PNG48", "PNG64". + +2023-08-31 Fojtik Jaroslav <[email protected]> + + * coders/bmp.c: BMP with 2bpp is a legal BMP variant. + https://en.wikipedia.org/wiki/BMP_file_format Quote: "The 2-bit + per pixel (2bpp) format supports 4 distinct colors and stores 4 + pixels per 1 byte, the left-most pixel being in the two most + significant bits (Windows CE only)." + + Partial revert: BITMAPV2INFOHEADER: RGB bit field masks, + BITMAPV3INFOHEADER+: RGBA + The opacity channel handling is even more complex. + +2023-08-29 Fojtik Jaroslav <[email protected]> + + * coders/bmp.c: First attempt to read BMP with BI_JPEG compression + inside. + +2023-08-28 Fojtik Jaroslav <[email protected]> + + * coders/bmp.c: Remove code duplicity and evaluate BiCompression + only on one place. + +2023-08-27 Bob Friesenhahn <[email protected]> + + * magick/attribute.c (GetImageInfoAttribute): For the "name" key, + return the input file base name, until reason is found to do + otherwise. + + * magick/utility.c (TranslateTextEx): Restore previous + functionality in which a NULL pointer is returned instead of an + empty string. Some algorithms are depending on this! Addresses + SourceForge issue #722 v1.3.41 "PerlMagick montage.t fails + completely". + +2023-08-23 Fojtik Jaroslav <[email protected]> + + * VisualMagick\installer\inc\files-dlls.isx + * VisualMagick\installer\inc\body.isx + + Prepare installation script for MSVC2013 runtime. + +2023-08-22 Fojtik Jaroslav <[email protected]> + + * VisualMagick\installer\inc\files-dlls.isx + * VisualMagick\installer\inc\body.isx + + Prepare installation script for MSVC2010 runtime. + +2023-08-21 Fojtik Jaroslav <[email protected]> + + * coders/bmp.c: When alpha is to be used, writer must not use + BI_BITFIELDS compression that instructs to strip alpha. + +2023-08-20 Fojtik Jaroslav <[email protected]> + + * tiff/libtiff/stdbool2.h MSVC2010 does not have stdbool.h nor inttypes.h + + * coders/bmp.c: Added support for BI_ALPHABITFIELDS compression. + https://learn.microsoft.com/en-us/previous-versions/windows/embedded/aa452885(v=msdn.10) + Remove unwanted duplicite check condition of biCompression. + +2023-08-19 Fojtik Jaroslav <[email protected]> + + * coders/bmp.c Reveal a contents of OS22XBITMAPHEADER. + +2023-08-17 Fojtik Jaroslav <[email protected]> + + * coders/bmp.c: Do not throttle on native low endian systems. + +2023-08-16 Fojtik Jaroslav <[email protected]> + + * coders/bmp.c: Populate upper byte to lower byte even for lower + bpp than 8. It overcomes quantum scalling error in gm. Code should + be redesigned, but it is better than previous state. + + Enforce default color masks when bmp_info.compression==BI_RGB + Existing masks will be ignored. + +2023-08-17 Fojtik Jaroslav <[email protected]> + + * coders/bmp.c: Enforce default matte for 40 byte header & 32bpp. + +2023-08-16 Bob Friesenhahn <[email protected]> + + * coders/tiff.c (ReadTIFFImage): For common formats with the + required number of channels, but one is an 'unspecified' channel, + promote unspecified alpha to unassociated alpha so that the alpha + channel is not ignored. Addresses the remainder of SourceForge + issue #718 "Set reasonable defaults when writing TIFF with + transparency". + +2023-08-15 Bob Friesenhahn <[email protected]> + + * Makefile.am (CHANGELOGS): Changelogs ChangeLog.2021 and + ChangeLog.2022 where missing from the distribution. + +2023-08-15 Fojtik Jaroslav <[email protected]> + + * coders/bmp.c: Fix reading corruption 16bpp. + +2023-08-15 Fojtik Jaroslav <[email protected]> + + * coders/tiff.c: Fix compilation problem in MSVC. + +2023-08-15 Bob Friesenhahn <[email protected]> + + * coders/tiff.c (WriteTIFFImage): Default the alpha channel to + type EXTRASAMPLE_UNASSALPHA(2). The default was + EXTRASAMPLE_UNSPECIFIED(0), which is particularly unfortunate + given that GraphicsMagick 1.3.41 now silently ignores such + channels. Patch by Markus Mützel. Addresses SourceForge issue + #718 "Set reasonable defaults when writing TIFF with + transparency". + 2023-08-12 Bob Friesenhahn <[email protected]> * NEWS.txt: Updated for 1.3.41 release. diff -r ac9838528175 -r fa47877271c4 Copyright.txt --- a/Copyright.txt Sat Aug 12 10:33:08 2023 -0500 +++ b/Copyright.txt Sat Sep 23 14:02:23 2023 -0500 @@ -23,7 +23,7 @@ from ImageMagick Studio's ImageMagick and applied the "MIT" style license: - Copyright (C) 2002-2022 GraphicsMagick Group + Copyright (C) 2002-2023 GraphicsMagick Group Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files diff -r ac9838528175 -r fa47877271c4 Makefile.am --- a/Makefile.am Sat Aug 12 10:33:08 2023 -0500 +++ b/Makefile.am Sat Sep 23 14:02:23 2023 -0500 @@ -110,6 +110,8 @@ # should want to concatenate them. CHANGELOGS = \ ChangeLog \ + ChangeLog.2022 \ + ChangeLog.2021 \ ChangeLog.2020 \ ChangeLog.2019 \ ChangeLog.2018 \ diff -r ac9838528175 -r fa47877271c4 Makefile.in --- a/Makefile.in Sat Aug 12 10:33:08 2023 -0500 +++ b/Makefile.in Sat Sep 23 14:02:23 2023 -0500 @@ -2811,6 +2811,8 @@ # should want to concatenate them. CHANGELOGS = \ ChangeLog \ + ChangeLog.2022 \ + ChangeLog.2021 \ ChangeLog.2020 \ ChangeLog.2019 \ ChangeLog.2018 \ diff -r ac9838528175 -r fa47877271c4 NEWS.txt --- a/NEWS.txt Sat Aug 12 10:33:08 2023 -0500 +++ b/NEWS.txt Sat Sep 23 14:02:23 2023 -0500 @@ -6,7 +6,7 @@ GraphicsMagick News =================== -This file was last updated to reflect changes up to August 12, 2023 +This file was last updated to reflect changes up to September 23, 2023 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,95 @@ .. contents:: :local: +1.3.42 (September 23, 2023) +=========================== + +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 22 + years already (and contributed to ImageMagick and GraphicsMagick + combined for 27 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. + +* GraphicsMagick has been participating in Synopsys's Coverity program + for free software projects since 2015. There has been a continuing + objective to keep outstanding defects at 0, or very close to 0. + Information about the Coverity status may be found at + https://scan.coverity.com/projects/graphicsmagick. + +Bug fixes: + +* TIFF: Default the alpha channel to type EXTRASAMPLE_UNASSALPHA(2). + +* BMP: Many fixes for reading esoteric BMP sub-formats. + +* TranslateTextEx(): Revert change so now a NULL pointer is returned + when given an empty string. Some algorithms (e.g. montage) were + depending on this!. + +* PAM: Fix reading comments. + +* PNG: Added Add missing module aliases "PNG00", "PNG48", "PNG64", so + it is again possible to request these subformats directly. + +* TIFF: For common formats with the required number of channels, but + one is an 'unspecified' channel, promote unspecified alpha to + unassociated alpha so that the alpha channel is not ignored. + +* "Magick" command line emulation: Eliminate duplicate utility name + output in error messages + +New Features: + +* BMP: Added the ability to read and write BMP using JPEG compression. + Use '-define bmp:allow-jpeg' to allow use of JPEG compression. + +* BMP: Added support for BI_ALPHABITFIELDS compression + +* BMP: Added support for reading BMP with PNG compression. + +API Updates: + +* None. + +Windows Delegate Updates/Additions: + +* None. + +Build Changes: + +* Inno-Setup installer script now also supports MSVC 2010 and 2013 + runtimes. + +* Support for the 'XTRN' coder (needed by ImageMagickObject) is now + optional and disabled by default. + +* Visual Studio 2013 (MSVC 12.0) (or later) is needed to build 64-bit + applications given that 'strtod()' is broken in earlier versions. + Not much works at all if strtod() does not work properly. + +Behavior Changes: + +* Decided to *not* deprecate the ability to extend existing image + attribute text by calling SetImageAttribute() multiple times. There + are too many subtle usages of this feature. The annoying printf + introduced in 1.3.41 has been disabled. + 1.3.41 (August 12, 2023) ========================= diff -r ac9838528175 -r fa47877271c4 PerlMagick/Magick.pm --- a/PerlMagick/Magick.pm Sat Aug 12 10:33:08 2023 -0500 +++ b/PerlMagick/Magick.pm Sat Sep 23 14:02:23 2023 -0500 @@ -40,7 +40,7 @@ ); # This version identifier must match the package version. -($VERSION) = '1.3.41' =~ /^([\d.]+)/g; +($VERSION) = '1.3.42' =~ /^([\d.]+)/g; sub AUTOLOAD { # This AUTOLOAD is used to 'autoload' constants from the constant() diff -r ac9838528175 -r fa47877271c4 PerlMagick/t/MasterImage_70x46.ppm --- a/PerlMagick/t/MasterImage_70x46.ppm Sat Aug 12 10:33:08 2023 -0500 +++ b/PerlMagick/t/MasterImage_70x46.ppm Sat Sep 23 14:02:23 2023 -0500 @@ -1,4 +1,7 @@ P6 +#This is the first line of a comment. +#And this is the second line +#And this is the third line.