Commit Graph

2564 Commits

Author SHA1 Message Date
Glenn Randers-Pehrson
59e655b020 [libpng16] Added sPLT support to pngtest.c 2015-10-10 12:05:55 -05:00
Glenn Randers-Pehrson
5bd9d66098 [libpng16] Updated CHANGES and ANNOUNCE 2015-10-03 15:16:53 -05:00
John Bowler
2163c930b0 pow and sbit fixes backported to pngvalid from 1.7
Signed-off-by: John Bowler <jbowler@acm.org>
2015-10-03 11:14:43 -07:00
John Bowler
18f0bd1d63 Merge remote-tracking branch 'local/libpng16' into libpng16 2015-09-27 08:52:50 -07:00
Glenn Randers-Pehrson
5b9c044332 Revert "[libpng16] Fix bad merge of contrib/libtests/pngvalid.c"
This reverts commit 9517f7b636.
2015-09-27 09:17:45 -05:00
John Bowler
dc3069bcb1 Merge branch 'libpng16' into libpng16-pngvalid-rgb-to-gray-digitize-issues 2015-09-26 21:29:06 -07:00
Glenn Randers-Pehrson
9517f7b636 [libpng16] Fix bad merge of contrib/libtests/pngvalid.c 2015-09-26 23:11:15 -05:00
Glenn Randers-Pehrson
b77d929217 [libpng16] Restored Makefile.am and configure.ac (they had been
inadvertently replaced with libpng17 versions).
2015-09-26 22:54:51 -05:00
Glenn Randers-Pehrson
b939ce06be [libpng17] Makefile.am and configure.ac were out of date. 2015-09-26 22:26:44 -05:00
Glenn Randers-Pehrson
f9e37f54eb [libpng16] Worked around rgb-to-gray issues in libpng 1.6. The previous
attempts to ignore the errors in the code aren't quite enough to
deal with the 'channel selection' encoding added to libpng 1.7; abort.
2015-09-26 21:31:53 -05:00
John Bowler
04402a9126 Fix (work round) rgb-to-gray issues in libpng 1.6
The previous attempts to ignore the errors in the code aren't quite enough to
deal with the 'channel selection' encoding added to libpng 1.7; abort.
pngvalid.c is changed to drop this encoding in prior versions.

Signed-off-by: John Bowler <jbowler@acm.org>
2015-09-26 17:41:02 -07:00
Glenn Randers-Pehrson
068cb3a64c [libpng16] Bump version to 1.6.19beta04 2015-09-26 09:44:43 -05:00
Glenn Randers-Pehrson
f4302a73ac [libpng16] Imported from libpng-1.6.19beta03.tar 2015-09-26 09:44:34 -05:00
John Bowler
23ddeb58a5 pngvalid tests: add --strict, fix test names
Signed-off-by: John Bowler <jbowler@acm.org>
2015-09-25 17:06:58 -07:00
John Bowler
956f295d48 Merge remote-tracking branch 'local/libpng16' into libpng16 2015-09-25 16:58:43 -07:00
Glenn Randers-Pehrson
61257bc2de [libpng16] Update CHANGES and ANNOUNCE 2015-09-25 18:25:08 -05:00
John Bowler
6297297708 Enable low-bit-depth gray tests in pngvalid
Signed-off-by: John Bowler <jbowler@acm.org>
2015-09-25 16:21:45 -07:00
John Bowler
fd42ef9b06 pngstest 1.6 error limit and warning revisions
Remove the '--strict' in 1.6 because of the double-gamma-correction warning,
update pngstest-errors.h for the errors detected with the new contrib/testspngs
PNG test files.

Signed-off-by: John Bowler <jbowler@acm.org>
2015-09-25 13:40:18 -07:00
John Bowler
a2671a7f49 test PNG files (contrib/testpngs)
Back ported from libpng 1.7

Signed-off-by: John Bowler <jbowler@acm.org>
2015-09-25 13:10:13 -07:00
John Bowler
fa5ba2e026 New test PNG files incorporated into make check
tests/pngstest-* are changed so that the new test files are divided into 8
groups by gamma and alpha channel.  This makes each test take just under 5
seconds on a moderately up-to-date x86_64 system using libpng16 (test times are
somewhat variable under libpng17 at present because of the lack of optimization
in some gamma processing paths.)

These tests have considerably better code and pixel-value coverage than
contrib/pngsuite however coverage is still incomplete.

Signed-off-by: John Bowler <jbowler@acm.org>
2015-09-25 12:41:56 -07:00
Glenn Randers-Pehrson
01a0e8062d [libpng16] Reverted addition of png_set_filler_16 and png_set_add_alpha_16()
functions. They unnecessarily duplicate png_set_filler() and png_set_add_alpha()
which now work properly with 16-bit images.
2015-09-24 22:39:53 -05:00
Glenn Randers-Pehrson
5b038f83e7 [libpng16] Fix typo in manual 2015-09-23 22:27:14 -05:00
Glenn Randers-Pehrson
efe4e5d10d [libpng16] Reverted the fix of byte order in png_do_read_filler() with 16-bit
input that was made in version 1.6.17beta01, to preserve legacy
behavior even though it was incorrect.  Instead, added new API
png_set_filter_16() and png_set_add_alpha_16() that set a flag to
make png_do_read_filter() interpret the filler bytes properly.
2015-09-23 22:08:04 -05:00
John Bowler
d6eb4b71ac Updated pngstest-errors.h
This update incorporates errors resulting from the more extensive image test
suite used in libpng 1.7

Signed-off-by: John Bowler <jbowler@acm.org>
2015-09-20 20:59:10 -07:00
Glenn Randers-Pehrson
4c9c43d4d4 [libpng16] Added license info to pngstest-errors.h and its generator. 2015-09-19 20:17:44 -05:00
Glenn Randers-Pehrson
0cc11b86ba [libpng16] Update ANNOUNCE and CHANGES with recent pngstest updates. 2015-09-19 19:57:59 -05:00
John Bowler
93b4568fc0 pngstest: make error limits version specific
Splitting the machine generated error structs out to a file allows the values to
be updated without changing pngstest.c itself, since libpng 1.6 and 1.7 have
slightly different error limits this simplifies maintenance.

Signed-off-by: John Bowler <jbowler@acm.org>
2015-09-19 16:34:30 -07:00
Glenn Randers-Pehrson
f6cd8f2d65 [libpng16] Updated description of filler-byte bugfix in CHANGES. 2015-09-18 23:37:25 -05:00
Glenn Randers-Pehrson
8bfcb4c7a7 [libpng16] Copied contrib/libtests/pngvalid.c from libpng17. 2015-09-18 14:24:49 -05:00
Glenn Randers-Pehrson
eb0bf4f468 [libpng16] Updated pngvalid.c with recent changes from libpng17 2015-09-18 13:09:57 -05:00
John Bowler
e8c554661c Back-port pngvalid corrections and enhancements
This is a patch for libpng16.
It incorporates fixes to the low-bit-depth gray background handling from
libpng17 and turns one of the low-bit-depth gray cases that does work (and,
indeed, did work before) in libpng16

Signed-off-by: John Bowler <jbowler@acm.org>
2015-09-17 07:56:30 -07:00
John Bowler
c3e7e7d715 [libpng16] tests backported from libpng 1.7
This updates libpng16 with all the test changes from libpng17,
including changes to pngvalid.c to ensure that the original,
distributed, version of contrib/visupng/cexcept.h can be used.

pngvalid contains the correction to the use of SAVE/STORE_
UNKNOWN_CHUNKS; a bug revealed by changes in libpng 1.7.  More
tests contain the --strict option to detect warnings and the
pngvalid-standard test has been corrected so that it does not
turn on progresive-read (there is a separate test which does
that.)

Some signed/unsigned fixes have been made.

Signed-off-by: John Bowler <jbowler@acm.org>
2015-09-15 15:38:52 -07:00
Glenn Randers-Pehrson
1e16e8829d [libpng16] Fix typo (extra "*/") in contrib/libtests/fakepng.c 2015-09-15 17:07:34 -05:00
John Bowler
33a97c5c8a [libpng16] Fixed png_save_int_32 when int is not 2's complement (John Bowler). 2015-08-21 14:42:00 -05:00
Glenn Randers-Pehrson
39be3b81da [libpng16] Bump version to 1.6.19beta03 2015-08-19 12:58:26 -05:00
Glenn Randers-Pehrson
4c02a5930a [libpng16] Imported from libpng-1.6.19beta02.tar 2015-08-19 12:58:14 -05:00
John Bowler
2d62f7406f [libpng16] Fixed the recently reported 1's complement security issue by
replacing the value that is illegal in the PNG spec, in both signed and
unsigned values, with 0. Illegal unsigned values (anything greater than or equal
to  0x80000000) can still pass through, but since these are not illegal
in ANSI-C (unlike 0x80000000 in the signed case) the checking that
occurs later can catch them (John Bowler).
2015-08-19 12:56:48 -05:00
Glenn Randers-Pehrson
6530e3898d [libpng16] Restored previous handling of negative input to png_set_sig_bytes(). 2015-08-17 21:56:03 -05:00
Glenn Randers-Pehrson
5a26171dd7 [libpng16] Mention the change in png_set_sig_bytes() behavior in the man page. 2015-08-17 21:39:22 -05:00
Robert C. Seacord
167b5e4c27 [libpng16] Safely convert num_bytes to a png_byte in png_set_sig_bytes() 2015-08-17 21:20:34 -05:00
Glenn Randers-Pehrson
a8242fe6fb [libng16] Reverted recent mistaken change of 0xnnnn to 0xnnnnUL 2015-08-17 20:46:27 -05:00
Glenn Randers-Pehrson
15e69748f1 [libpng16] Removed new unnecessary typecast in pngrutil.c 2015-08-17 12:52:56 -05:00
Glenn Randers-Pehrson
268c7bf68b [libpng16] Use unsigned hex constants in "reciprocal" computations 2015-08-17 12:40:19 -05:00
Glenn Randers-Pehrson
d8b93c29a7 [libpng16] Appended more "UL" to hex constants. 2015-08-17 10:56:17 -05:00
Glenn Randers-Pehrson
b9ba8d6a57 [libpng16] Mention in manual that 16-bit platform support has been dropped. 2015-08-16 23:32:04 -05:00
John Bowler
751cee5ef1 [libpng16] Added signed/unsigned 16-bit safety net. This removes the dubious
0x8000 flag definitions on 16-bit systems. They aren't supported
yet the defs *probably* work, however it seems much safer to do this
and be advised if anyone, contrary to advice, is building libpng 1.6
on a 16-bit system. It also adds back various switch default clauses
for GCC; GCC errors out if they are not present (with an appropriately
high level of warnings).
2015-08-16 22:54:21 -05:00
Glenn Randers-Pehrson
8ba4b13c55 [libpng16] Changed 0xnnnn constants to 0xnnnnUL. 2015-08-16 22:49:58 -05:00
Glenn Randers-Pehrson
8b83ff3704 [libpng16] Change "n bit" to "n-bit" in comments. 2015-08-13 20:57:18 -05:00
Glenn Randers-Pehrson
a472858297 [libpng16] Fix links in man page 2015-08-11 15:34:08 -05:00
Glenn Randers-Pehrson
682f4ba2d5 [libpng16] Fix links in man page 2015-08-11 13:04:01 -05:00