]>
Commit | Line | Data |
---|---|---|
9c0d9ce3 | 1 | Libpng 1.5.6 - November 3, 2011 |
0272a10d VZ |
2 | |
3 | This is a public release of libpng, intended for use in production codes. | |
4 | ||
5 | Files available for download: | |
6 | ||
7 | Source files with LF line endings (for Unix/Linux) and with a | |
8 | "configure" script | |
9 | ||
9c0d9ce3 DS |
10 | libpng-1.5.6.tar.xz (LZMA-compressed, recommended) |
11 | libpng-1.5.6.tar.gz | |
12 | libpng-1.5.6.tar.bz2 | |
0272a10d VZ |
13 | |
14 | Source files with CRLF line endings (for Windows), without the | |
15 | "configure" script | |
16 | ||
9c0d9ce3 DS |
17 | lpng156.7z (LZMA-compressed, recommended) |
18 | lpng156.zip | |
0272a10d VZ |
19 | |
20 | Other information: | |
21 | ||
9c0d9ce3 DS |
22 | libpng-1.5.6-README.txt |
23 | libpng-1.5.6-LICENSE.txt | |
24 | ||
25 | Changes since the last public release (1.5.5): | |
b61cc19c | 26 | |
9c0d9ce3 DS |
27 | Fixed some 64-bit type conversion warnings in pngrtran.c |
28 | Moved row_info from png_struct to a local variable. | |
29 | The various interlace mask arrays have been made into arrays of | |
30 | bytes and made PNG_CONST and static (previously some arrays were | |
31 | marked PNG_CONST and some weren't). | |
32 | Additional checks have been added to the transform code to validate the | |
33 | pixel depths after the transforms on both read and write. | |
34 | Removed some redundant code from pngwrite.c, in png_desgtroy_write_struct(). | |
35 | Changed chunk reading/writing code to use png_uint_32 instead of png_byte[4]. | |
36 | This removes the need to allocate temporary strings for chunk names on | |
37 | the stack in the read/write code. Unknown chunk handling still uses the | |
38 | string form because this is exposed in the API. | |
39 | Added a note in the manual the png_read_update_info() must be called only | |
40 | once with a particular info_ptr. | |
41 | Revised test-pngtest.sh to report FAIL when pngtest fails. | |
42 | Added "--strict" option to pngtest, to report FAIL when the failure is | |
43 | only because the resulting valid files are different. | |
44 | Revised CMakeLists.txt to work with mingw and removed some material from | |
45 | CMakeLists.txt that is no longer useful in libpng-1.5. | |
46 | Fixed typo in Makefile.in and Makefile.am ("-M Wl" should be "-M -Wl")." | |
47 | Speed up png_combine_row() for interlaced images. This reduces the generality | |
48 | of the code, allowing it to be optimized for Adam7 interlace. The masks | |
49 | passed to png_combine_row() are now generated internally, avoiding | |
50 | some code duplication and localizing the interlace handling somewhat. | |
51 | Align png_struct::row_buf - previously it was always unaligned, caused by | |
52 | a bug in the code that attempted to align it; the code needs to subtract | |
53 | one from the pointer to take account of the filter byte prepended to | |
54 | each row. | |
55 | Optimized png_combine_row() when rows are aligned. This gains a small | |
56 | percentage for 16-bit and 32-bit pixels in the typical case where the | |
57 | output row buffers are appropriately aligned. The optimization was not | |
58 | previously possible because the png_struct buffer was always misaligned. | |
59 | Removed two redundant tests for unitialized row. | |
60 | Fixed a relatively harmless memory overwrite in compressed text writing | |
61 | with a 1 byte zlib buffer. | |
62 | Add ability to call png_read_update_info multiple times to pngvalid.c | |
63 | Fixes for multiple calls to png_read_update_info. These fixes attend to | |
64 | most of the errors revealed in pngvalid, however doing the gamma work | |
65 | twice results in inaccuracies that can't be easily fixed. There is now | |
66 | a warning in the code if this is going to happen. | |
67 | Turned on multiple png_read_update_info in pngvalid transform tests. | |
68 | Prevent libpng from overwriting unused bits at the end of the image when | |
69 | it is not byte aligned, while reading. Prior to libpng-1.5.6 libpng would | |
70 | overwrite the partial byte at the end of each row if the row width was not | |
71 | an exact multiple of 8 bits and the image is not interlaced. | |
72 | Made png_ptr->prev_row an aligned pointer into png_ptr->big_prev_row | |
73 | (Mans Rullgard). | |
74 | Changed misleading "Missing PLTE before cHRM" warning to "Out of place cHRM" | |
75 | Added PNG_LSR() and PNG_LSL() macros to defend against buggy compilers that | |
76 | evaluate non-taken code branches and complain about out-of-range shifts. | |
77 | Renamed the local variable 'byte' because it appears in a MSYS header | |
78 | file. | |
79 | Added #define PNG_ALIGN_TYPE PNG_ALIGN_NONE to contrib/pngminim/*/pngusr.h | |
b61cc19c | 80 | |
9c0d9ce3 DS |
81 | Send comments/corrections/commendations to png-mng-implement at lists.sf.net |
82 | (subscription required; visit | |
83 | https://lists.sourceforge.net/lists/listinfo/png-mng-implement | |
84 | to subscribe) | |
85 | or to glennrp at users.sourceforge.net | |
0272a10d VZ |
86 | |
87 | Glenn R-P |