On Sat, Aug 11, 2018 at 02:58:44PM +0100, Stuart Henderson wrote:
> On 2018/08/11 00:43, Solene Rapenne wrote:
> > this patch updates libpng to 1.6.35, the new version changelog is the
> > following:
> > Changes since the last public release (1.6.34):
> > Restored 21 of the contrib/pngsuite/i*.png, which do not cause test
> > failures. Placed the remainder in contrib/pngsuite/interlaced/i*.png.
> > Added calls to png_set_*() transforms commonly used by browsers to
> > the fuzzer.
> > Removed some unnecessary brackets in pngrtran.c
> > Fixed miscellaneous typos (Patch by github user "luzpaz").
> > Change "ASM C" to "C ASM" in CMakeLists.txt
> > Fixed incorrect handling of bKGD chunk in sub-8-bit files (Cosmin)
> > Added hardware optimization directories to zip and 7z distributions.
> > Fixed incorrect bitmask for options.
> > Fixed many spelling typos.
> > Make png_get_iCCP consistent with man page (allow compression-type
> > argument
> > to be NULL, bug report by Lenard Szolnoki).
> > Replaced the remaining uses of png_size_t with size_t (Cosmin)
> > Fixed the calculation of row_factor in png_check_chunk_length
> > (reported by Thuan Pham in SourceForge issue #278)
> > Added missing parentheses to a macro definition
> > (suggested by "irwir" in GitHub issue #216)
> > It compiles fine and the test pass 100%, maybe a bulk build is required?
> I've read through a diff of old and new source, I don't think a bulk
> build is necessary. OK with me though I wouldn't mind another pair of
> eyes on it as it's high in the dependency chain and the release approaches.
FWIW: I looked through the diff as well and couldn't spot anything
worrisome. I'm also ok with this.
There's one build warning:
warning: implicit declaration of function 'feenableexcept' is invalid in C99
feenableexcept(FE_DIVBYZERO | FE_INVALID | FE_OVERFLOW);
due to the fact that feenableexcept() is guarded by __BSD_VISIBLE, which
is set to 0 if _POSIX_SOURCE is defined without _BSD_SOURCE being defined.
Patch below would fix this. Tests still pass.
If a more experienced porter agrees with this, please include it with
RCS file: patches/patch-contrib_libtests_pngvalid_c
diff -N patches/patch-contrib_libtests_pngvalid_c
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-contrib_libtests_pngvalid_c 11 Aug 2018 15:43:41 -0000
@@ -0,0 +1,16 @@
+Avoid implicit declaration of feenableexcept(3).
+@@ -20,7 +20,7 @@
+ #define _POSIX_SOURCE 1
+ #define _ISOC99_SOURCE 1 /* For floating point */
+-#define _GNU_SOURCE 1 /* For the floating point exception extension */
++#define _BSD_SOURCE 1 /* For the floating point exception extension */
+ #include <signal.h>
+ #include <stdio.h>