1 | CHANGES - changes for libpng
|
---|
2 |
|
---|
3 | version 0.1 [March 29, 1995]
|
---|
4 | initial work-in-progress release
|
---|
5 |
|
---|
6 | version 0.2 [April 1, 1995]
|
---|
7 | added reader into png.h
|
---|
8 | fixed small problems in stub file
|
---|
9 |
|
---|
10 | version 0.3 [April 8, 1995]
|
---|
11 | added pull reader
|
---|
12 | split up pngwrite.c to several files
|
---|
13 | added pnglib.txt
|
---|
14 | added example.c
|
---|
15 | cleaned up writer, adding a few new transformations
|
---|
16 | fixed some bugs in writer
|
---|
17 | interfaced with zlib 0.5
|
---|
18 | added K&R support
|
---|
19 | added check for 64 KB blocks for 16 bit machines
|
---|
20 |
|
---|
21 | version 0.4 [April 26, 1995]
|
---|
22 | cleaned up code and commented code
|
---|
23 | simplified time handling into png_time
|
---|
24 | created png_color_16 and png_color_8 to handle color needs
|
---|
25 | cleaned up color type defines
|
---|
26 | fixed various bugs
|
---|
27 | made various names more consistent
|
---|
28 | interfaced with zlib 0.71
|
---|
29 | cleaned up zTXt reader and writer (using zlib's Reset functions)
|
---|
30 | split transformations into pngrtran.c and pngwtran.c
|
---|
31 |
|
---|
32 | version 0.5 [April 30, 1995]
|
---|
33 | interfaced with zlib 0.8
|
---|
34 | fixed many reading and writing bugs
|
---|
35 | saved using 3 spaces instead of tabs
|
---|
36 |
|
---|
37 | version 0.6 [May 1, 1995]
|
---|
38 | first beta release
|
---|
39 | added png_large_malloc() and png_large_free()
|
---|
40 | added png_size_t
|
---|
41 | cleaned up some compiler warnings
|
---|
42 | added png_start_read_image()
|
---|
43 |
|
---|
44 | version 0.7 [June 24, 1995]
|
---|
45 | cleaned up lots of bugs
|
---|
46 | finished dithering and other stuff
|
---|
47 | added test program
|
---|
48 | changed name from pnglib to libpng
|
---|
49 |
|
---|
50 | version 0.71 [June 26, 1995]
|
---|
51 | changed pngtest.png for zlib 0.93
|
---|
52 | fixed error in libpng.txt and example.c
|
---|
53 |
|
---|
54 | version 0.8 [August 20, 1995]
|
---|
55 | cleaned up some bugs
|
---|
56 | added png_set_filler()
|
---|
57 | split up pngstub.c into pngmem.c, pngio.c, and pngerror.c
|
---|
58 | added #define's to remove unwanted code
|
---|
59 | moved png_info_init() to png.c
|
---|
60 | added old_size into png_realloc()
|
---|
61 | added functions to manually set filtering and compression info
|
---|
62 | changed compression parameters based on image type
|
---|
63 | optimized filter selection code
|
---|
64 | added version info
|
---|
65 | changed external functions passing floats to doubles (k&r problems?)
|
---|
66 | put all the configurable stuff in pngconf.h
|
---|
67 | enabled png_set_shift to work with paletted images on read
|
---|
68 | added png_read_update_info() - updates info structure with transformations
|
---|
69 |
|
---|
70 | Version 0.81 [August, 1995]
|
---|
71 | incorporated Tim Wegner's medium model code (thanks, Tim)
|
---|
72 |
|
---|
73 | Version 0.82 [September, 1995]
|
---|
74 | [unspecified changes]
|
---|
75 |
|
---|
76 | Version 0.85 [December, 1995]
|
---|
77 | added more medium model code (almost everything's a far)
|
---|
78 | added i/o, error, and memory callback functions
|
---|
79 | fixed some bugs (16-bit, 4-bit interlaced, etc.)
|
---|
80 | added first run progressive reader (barely tested)
|
---|
81 |
|
---|
82 | Version 0.86 [January, 1996]
|
---|
83 | fixed bugs
|
---|
84 | improved documentation
|
---|
85 |
|
---|
86 | Version 0.87 [January, 1996]
|
---|
87 | fixed medium model bugs
|
---|
88 | fixed other bugs introduced in 0.85 and 0.86
|
---|
89 | added some minor documentation
|
---|
90 |
|
---|
91 | Version 0.88 [January, 1996]
|
---|
92 | fixed progressive bugs
|
---|
93 | replaced tabs with spaces
|
---|
94 | cleaned up documentation
|
---|
95 | added callbacks for read/write and warning/error functions
|
---|
96 |
|
---|
97 | Version 0.89 [June 5, 1996]
|
---|
98 | Added new initialization API to make libpng work better with shared libs
|
---|
99 | we now have png_create_read_struct(), png_create_write_struct(),
|
---|
100 | png_create_info_struct(), png_destroy_read_struct(), and
|
---|
101 | png_destroy_write_struct() instead of the separate calls to
|
---|
102 | malloc and png_read_init(), png_info_init(), and png_write_init()
|
---|
103 | Changed warning/error callback functions to fix bug - this means you
|
---|
104 | should use the new initialization API if you were using the old
|
---|
105 | png_set_message_fn() calls, and that the old API no longer exists
|
---|
106 | so that people are aware that they need to change their code
|
---|
107 | Changed filter selection API to allow selection of multiple filters
|
---|
108 | since it didn't work in previous versions of libpng anyways
|
---|
109 | Optimized filter selection code
|
---|
110 | Fixed png_set_background() to allow using an arbitrary RGB color for
|
---|
111 | paletted images
|
---|
112 | Fixed gamma and background correction for paletted images, so
|
---|
113 | png_correct_palette is not needed unless you are correcting an
|
---|
114 | external palette (you will need to #define PNG_CORRECT_PALETTE_SUPPORTED
|
---|
115 | in pngconf.h) - if nobody uses this, it may disappear in the future.
|
---|
116 | Fixed bug with Borland 64K memory allocation (Alexander Lehmann)
|
---|
117 | Fixed bug in interlace handling (Smarasderagd, I think)
|
---|
118 | Added more error checking for writing and image to reduce invalid files
|
---|
119 | Separated read and write functions so that they won't both be linked
|
---|
120 | into a binary when only reading or writing functionality is used
|
---|
121 | New pngtest image also has interlacing and zTXt
|
---|
122 | Updated documentation to reflect new API
|
---|
123 |
|
---|
124 | Version 0.89c [June 17, 1996]
|
---|
125 | Bug fixes.
|
---|
126 |
|
---|
127 | Version 0.90 [January, 1997]
|
---|
128 | Made CRC errors/warnings on critical and ancillary chunks configurable
|
---|
129 | libpng will use the zlib CRC routines by (compile-time) default
|
---|
130 | Changed DOS small/medium model memory support - needs zlib 1.04 (Tim Wegner)
|
---|
131 | Added external C++ wrapper statements to png.h (Gilles Dauphin)
|
---|
132 | Allow PNG file to be read when some or all of file signature has already
|
---|
133 | been read from the beginning of the stream. ****This affects the size
|
---|
134 | of info_struct and invalidates all programs that use a shared libpng****
|
---|
135 | Fixed png_filler() declarations
|
---|
136 | Fixed? background color conversions
|
---|
137 | Fixed order of error function pointers to match documentation
|
---|
138 | Current chunk name is now available in png_struct to reduce the number
|
---|
139 | of nearly identical error messages (will simplify multi-lingual
|
---|
140 | support when available)
|
---|
141 | Try to get ready for unknown-chunk callback functions:
|
---|
142 | - previously read critical chunks are flagged, so the chunk handling
|
---|
143 | routines can determine if the chunk is in the right place
|
---|
144 | - all chunk handling routines have the same prototypes, so we will
|
---|
145 | be able to handle all chunks via a callback mechanism
|
---|
146 | Try to fix Linux "setjmp" buffer size problems
|
---|
147 | Removed png_large_malloc, png_large_free, and png_realloc functions.
|
---|
148 |
|
---|
149 | Version 0.95 [March, 1997]
|
---|
150 | Fixed bug in pngwutil.c allocating "up_row" twice and "avg_row" never
|
---|
151 | Fixed bug in PNG file signature compares when start != 0
|
---|
152 | Changed parameter type of png_set_filler(...filler...) from png_byte
|
---|
153 | to png_uint_32
|
---|
154 | Added test for MACOS to ensure that both math.h and fp.h are not #included
|
---|
155 | Added macros for libpng to be compiled as a Windows DLL (Andreas Kupries)
|
---|
156 | Added "packswap" transformation, which changes the endianness of
|
---|
157 | packed-pixel bytes (Kevin Bracey)
|
---|
158 | Added "strip_alpha" transformation, which removes the alpha channel of
|
---|
159 | input images without using it (not necessarily a good idea)
|
---|
160 | Added "swap_alpha" transformation, which puts the alpha channel in front
|
---|
161 | of the color bytes instead of after
|
---|
162 | Removed all implicit variable tests which assume NULL == 0 (I think)
|
---|
163 | Changed several variables to "png_size_t" to show 16/32-bit limitations
|
---|
164 | Added new pCAL chunk read/write support
|
---|
165 | Added experimental filter selection weighting (Greg Roelofs)
|
---|
166 | Removed old png_set_rgbx() and png_set_xrgb() functions that have been
|
---|
167 | obsolete for about 2 years now (use png_set_filler() instead)
|
---|
168 | Added macros to read 16- and 32-bit ints directly from buffer, to be
|
---|
169 | used only on those systems that support it (namely PowerPC and 680x0)
|
---|
170 | With some testing, this may become the default for MACOS/PPC systems.
|
---|
171 | Only calculate CRC on data if we are going to use it
|
---|
172 | Added macros for zTXt compression type PNG_zTXt_COMPRESSION_???
|
---|
173 | Added macros for simple libpng debugging output selectable at compile time
|
---|
174 | Removed PNG_READ_END_MODE in progressive reader (Smarasderagd)
|
---|
175 | More description of info_struct in libpng.txt and png.h
|
---|
176 | More instructions in example.c
|
---|
177 | More chunk types tested in pngtest.c
|
---|
178 | Renamed pngrcb.c to pngset.c, and all png_read_<chunk> functions to be
|
---|
179 | png_set_<chunk>. We now have corresponding png_get_<chunk>
|
---|
180 | functions in pngget.c to get information in info_ptr. This isolates
|
---|
181 | the application from the internal organization of png_info_struct
|
---|
182 | (good for shared library implementations).
|
---|
183 |
|
---|
184 | Version 0.96 [May, 1997]
|
---|
185 | Fixed serious bug with < 8bpp images introduced in 0.95
|
---|
186 | Fixed 256-color transparency bug (Greg Roelofs)
|
---|
187 | Fixed up documentation (Greg Roelofs, Laszlo Nyul)
|
---|
188 | Fixed "error" in pngconf.h for Linux setjmp() behavior
|
---|
189 | Fixed DOS medium model support (Tim Wegner)
|
---|
190 | Fixed png_check_keyword() for case with error in static string text
|
---|
191 | Added read of CRC after IEND chunk for embedded PNGs (Laszlo Nyul)
|
---|
192 | Added typecasts to quiet compiler errors
|
---|
193 | Added more debugging info
|
---|
194 |
|
---|
195 | Version 0.97 [January, 1998]
|
---|
196 | Removed PNG_USE_OWN_CRC capability
|
---|
197 | Relocated png_set_crc_action from pngrutil.c to pngrtran.c
|
---|
198 | Fixed typecasts of "new_key", etc. (Andreas Dilger)
|
---|
199 | Added RFC 1152 [sic] date support
|
---|
200 | Fixed bug in gamma handling of 4-bit grayscale
|
---|
201 | Added 2-bit grayscale gamma handling (Glenn R-P)
|
---|
202 | Added more typecasts. 65536L becomes (png_uint_32)65536L, etc. (Glenn R-P)
|
---|
203 | Minor corrections in libpng.txt
|
---|
204 | Added simple sRGB support (Glenn R-P)
|
---|
205 | Easier conditional compiling, e.g.,
|
---|
206 | define PNG_READ/WRITE_NOT_FULLY_SUPPORTED;
|
---|
207 | all configurable options can be selected from command line instead
|
---|
208 | of having to edit pngconf.h (Glenn R-P)
|
---|
209 | Fixed memory leak in pngwrite.c (free info_ptr->text) (Glenn R-P)
|
---|
210 | Added more conditions for png_do_background, to avoid changing
|
---|
211 | black pixels to background when a background is supplied and
|
---|
212 | no pixels are transparent
|
---|
213 | Repaired PNG_NO_STDIO behavior
|
---|
214 | Tested NODIV support and made it default behavior (Greg Roelofs)
|
---|
215 | Added "-m" option and PNGTEST_DEBUG_MEMORY to pngtest (John Bowler)
|
---|
216 | Regularized version numbering scheme and bumped shared-library major
|
---|
217 | version number to 2 to avoid problems with libpng 0.89 apps
|
---|
218 | (Greg Roelofs)
|
---|
219 |
|
---|
220 | Version 0.98 [January, 1998]
|
---|
221 | Cleaned up some typos in libpng.txt and in code documentation
|
---|
222 | Fixed memory leaks in pCAL chunk processing (Glenn R-P and John Bowler)
|
---|
223 | Cosmetic change "display_gamma" to "screen_gamma" in pngrtran.c
|
---|
224 | Changed recommendation about file_gamma for PC images to .51 from .45,
|
---|
225 | in example.c and libpng.txt, added comments to distinguish between
|
---|
226 | screen_gamma, viewing_gamma, and display_gamma.
|
---|
227 | Changed all references to RFC1152 to read RFC1123 and changed the
|
---|
228 | PNG_TIME_RFC1152_SUPPORTED macro to PNG_TIME_RFC1123_SUPPORTED
|
---|
229 | Added png_invert_alpha capability (Glenn R-P -- suggestion by Jon Vincent)
|
---|
230 | Changed srgb_intent from png_byte to int to avoid compiler bugs
|
---|
231 |
|
---|
232 | Version 0.99 [January 30, 1998]
|
---|
233 | Free info_ptr->text instead of end_info_ptr->text in pngread.c (John Bowler)
|
---|
234 | Fixed a longstanding "packswap" bug in pngtrans.c
|
---|
235 | Fixed some inconsistencies in pngconf.h that prevented compiling with
|
---|
236 | PNG_READ_GAMMA_SUPPORTED and PNG_READ_hIST_SUPPORTED undefined
|
---|
237 | Fixed some typos and made other minor rearrangement of libpng.txt (Andreas)
|
---|
238 | Changed recommendation about file_gamma for PC images to .50 from .51 in
|
---|
239 | example.c and libpng.txt, and changed file_gamma for sRGB images to .45
|
---|
240 | Added a number of functions to access information from the png structure
|
---|
241 | png_get_image_height(), etc. (Glenn R-P, suggestion by Brad Pettit)
|
---|
242 | Added TARGET_MACOS similar to zlib-1.0.8
|
---|
243 | Define PNG_ALWAYS_EXTERN when __MWERKS__ && WIN32 are defined
|
---|
244 | Added type casting to all png_malloc() function calls
|
---|
245 |
|
---|
246 | Version 0.99a [January 31, 1998]
|
---|
247 | Added type casts and parentheses to all returns that return a value.(Tim W.)
|
---|
248 |
|
---|
249 | Version 0.99b [February 4, 1998]
|
---|
250 | Added type cast png_uint_32 on malloc function calls where needed.
|
---|
251 | Changed type of num_hist from png_uint_32 to int (same as num_palette).
|
---|
252 | Added checks for rowbytes overflow, in case png_size_t is less than 32 bits.
|
---|
253 | Renamed makefile.elf to makefile.lnx.
|
---|
254 |
|
---|
255 | Version 0.99c [February 7, 1998]
|
---|
256 | More type casting. Removed erroneous overflow test in pngmem.c.
|
---|
257 | Added png_buffered_memcpy() and png_buffered_memset(), apply them to rowbytes.
|
---|
258 | Added UNIX manual pages libpng.3 (incorporating libpng.txt) and png.5.
|
---|
259 |
|
---|
260 | Version 0.99d [February 11, 1998]
|
---|
261 | Renamed "far_to_near()" "png_far_to_near()"
|
---|
262 | Revised libpng.3
|
---|
263 | Version 99c "buffered" operations didn't work as intended. Replaced them
|
---|
264 | with png_memcpy_check() and png_memset_check().
|
---|
265 | Added many "if (png_ptr == NULL) return" to quell compiler warnings about
|
---|
266 | unused png_ptr, mostly in pngget.c and pngset.c.
|
---|
267 | Check for overlength tRNS chunk present when indexed-color PLTE is read.
|
---|
268 | Cleaned up spelling errors in libpng.3/libpng.txt
|
---|
269 | Corrected a problem with png_get_tRNS() which returned undefined trans array
|
---|
270 |
|
---|
271 | Version 0.99e [February 28, 1998]
|
---|
272 | Corrected png_get_tRNS() again.
|
---|
273 | Add parentheses for easier reading of pngget.c, fixed "||" should be "&&".
|
---|
274 | Touched up example.c to make more of it compileable, although the entire
|
---|
275 | file still can't be compiled (Willem van Schaik)
|
---|
276 | Fixed a bug in png_do_shift() (Bryan Tsai)
|
---|
277 | Added a space in png.h prototype for png_write_chunk_start()
|
---|
278 | Replaced pngtest.png with one created with zlib 1.1.1
|
---|
279 | Changed pngtest to report PASS even when file size is different (Jean-loup G.)
|
---|
280 | Corrected some logic errors in png_do_invert_alpha() (Chris Patterson)
|
---|
281 |
|
---|
282 | Version 0.99f [March 5, 1998]
|
---|
283 | Corrected a bug in pngpread() introduced in version 99c (Kevin Bracey)
|
---|
284 | Moved makefiles into a "scripts" directory, and added INSTALL instruction file
|
---|
285 | Added makefile.os2 and pngos2.def (A. Zabolotny) and makefile.s2x (W. Sebok)
|
---|
286 | Added pointers to "note on libpng versions" in makefile.lnx and README
|
---|
287 | Added row callback feature when reading and writing nonprogressive rows
|
---|
288 | and added a test of this feature in pngtest.c
|
---|
289 | Added user transform callbacks, with test of the feature in pngtest.c
|
---|
290 |
|
---|
291 | Version 0.99g [March 6, 1998, morning]
|
---|
292 | Minor changes to pngtest.c to suppress compiler warnings.
|
---|
293 | Removed "beta" language from documentation.
|
---|
294 |
|
---|
295 | Version 0.99h [March 6, 1998, evening]
|
---|
296 | Minor changes to previous minor changes to pngtest.c
|
---|
297 | Changed PNG_READ_NOT_FULLY_SUPPORTED to PNG_READ_TRANSFORMS_NOT_SUPPORTED
|
---|
298 | and added PNG_PROGRESSIVE_READ_NOT_SUPPORTED macro
|
---|
299 | Added user transform capability
|
---|
300 |
|
---|
301 | Version 1.00 [March 7, 1998]
|
---|
302 | Changed several typedefs in pngrutil.c
|
---|
303 | Added makefile.wat (Pawel Mrochen), updated makefile.tc3 (Willem van Schaik)
|
---|
304 | Replaced "while(1)" with "for(;;)"
|
---|
305 | Added PNGARG() to prototypes in pngtest.c and removed some prototypes
|
---|
306 | Updated some of the makefiles (Tom Lane)
|
---|
307 | Changed some typedefs (s_start, etc.) in pngrutil.c
|
---|
308 | Fixed dimensions of "short_months" array in pngwrite.c
|
---|
309 | Replaced ansi2knr.c with the one from jpeg-v6
|
---|
310 |
|
---|
311 | Version 1.0.0 [March 8, 1998]
|
---|
312 | Changed name from 1.00 to 1.0.0 (Adam Costello)
|
---|
313 | Added smakefile.ppc (with SCOPTIONS.ppc) for Amiga PPC (Andreas Kleinert)
|
---|
314 |
|
---|
315 | Version 1.0.0a [March 9, 1998]
|
---|
316 | Fixed three bugs in pngrtran.c to make gamma+background handling consistent
|
---|
317 | (Greg Roelofs)
|
---|
318 | Changed format of the PNG_LIBPNG_VER integer to xyyzz instead of xyz
|
---|
319 | for major, minor, and bugfix releases. This is 10001. (Adam Costello,
|
---|
320 | Tom Lane)
|
---|
321 | Make months range from 1-12 in png_convert_to_rfc1123
|
---|
322 |
|
---|
323 | Version 1.0.0b [March 13, 1998]
|
---|
324 | Quieted compiler complaints about two empty "for" loops in pngrutil.c
|
---|
325 | Minor changes to makefile.s2x
|
---|
326 | Removed #ifdef/#endif around a png_free() in pngread.c
|
---|
327 |
|
---|
328 | Version 1.0.1 [March 14, 1998]
|
---|
329 | Changed makefile.s2x to reduce security risk of using a relative pathname
|
---|
330 | Fixed some typos in the documentation (Greg).
|
---|
331 | Fixed a problem with value of "channels" returned by png_read_update_info()
|
---|
332 |
|
---|
333 | Version 1.0.1a [April 21, 1998]
|
---|
334 | Optimized Paeth calculations by replacing abs() function calls with intrinsics
|
---|
335 | plus other loop optimizations. Improves avg decoding speed by about 20%.
|
---|
336 | Commented out i386istic "align" compiler flags in makefile.lnx.
|
---|
337 | Reduced the default warning level in some makefiles, to make them consistent.
|
---|
338 | Removed references to IJG and JPEG in the ansi2knr.c copyright statement.
|
---|
339 | Fixed a bug in png_do_strip_filler with XXRRGGBB => RRGGBB transformation.
|
---|
340 | Added grayscale and 16-bit capability to png_do_read_filler().
|
---|
341 | Fixed a bug in pngset.c, introduced in version 0.99c, that sets rowbytes
|
---|
342 | too large when writing an image with bit_depth < 8 (Bob Dellaca).
|
---|
343 | Corrected some bugs in the experimental weighted filtering heuristics.
|
---|
344 | Moved a misplaced pngrutil code block that truncates tRNS if it has more
|
---|
345 | than num_palette entries -- test was done before num_palette was defined.
|
---|
346 | Fixed a png_convert_to_rfc1123() bug that converts day 31 to 0 (Steve Eddins).
|
---|
347 | Changed compiler flags in makefile.wat for better optimization
|
---|
348 | (Pawel Mrochen).
|
---|
349 |
|
---|
350 | Version 1.0.1b [May 2, 1998]
|
---|
351 | Relocated png_do_gray_to_rgb() within png_do_read_transformations() (Greg).
|
---|
352 | Relocated the png_composite macros from pngrtran.c to png.h (Greg).
|
---|
353 | Added makefile.sco (contributed by Mike Hopkirk).
|
---|
354 | Fixed two bugs (missing definitions of "istop") introduced in libpng-1.0.1a.
|
---|
355 | Fixed a bug in pngrtran.c that would set channels=5 under some circumstances.
|
---|
356 | More work on the Paeth-filtering, achieving imperceptible speedup
|
---|
357 | (A Kleinert).
|
---|
358 | More work on loop optimization which may help when compiled with C++
|
---|
359 | compilers.
|
---|
360 | Added warnings when people try to use transforms they've defined out.
|
---|
361 | Collapsed 4 "i" and "c" loops into single "i" loops in pngrtran and pngwtran.
|
---|
362 | Revised paragraph about png_set_expand() in libpng.txt and libpng.3 (Greg)
|
---|
363 |
|
---|
364 | Version 1.0.1c [May 11, 1998]
|
---|
365 | Fixed a bug in pngrtran.c (introduced in libpng-1.0.1a) where the masks for
|
---|
366 | filler bytes should have been 0xff instead of 0xf.
|
---|
367 | Added max_pixel_depth=32 in pngrutil.c when using FILLER with palette images.
|
---|
368 | Moved PNG_WRITE_WEIGHTED_FILTER_SUPPORTED and PNG_WRITE_FLUSH_SUPPORTED
|
---|
369 | out of the PNG_WRITE_TRANSFORMS_NOT_SUPPORTED block of pngconf.h
|
---|
370 | Added "PNG_NO_WRITE_TRANSFORMS" etc., as alternatives for *_NOT_SUPPORTED,
|
---|
371 | for consistency, in pngconf.h
|
---|
372 | Added individual "ifndef PNG_NO_[CAPABILITY]" in pngconf.h to make it easier
|
---|
373 | to remove unwanted capabilities via the compile line
|
---|
374 | Made some corrections to grammar (which, it's) in documentation (Greg).
|
---|
375 | Corrected example.c, use of row_pointers in png_write_image().
|
---|
376 |
|
---|
377 | Version 1.0.1d [May 24, 1998]
|
---|
378 | Corrected several statements that used side effects illegally in pngrutil.c
|
---|
379 | and pngtrans.c, that were introduced in version 1.0.1b
|
---|
380 | Revised png_read_rows() to avoid repeated if-testing for NULL (A Kleinert)
|
---|
381 | More corrections to example.c, use of row_pointers in png_write_image()
|
---|
382 | and png_read_rows().
|
---|
383 | Added pngdll.mak and pngdef.pas to scripts directory, contributed by
|
---|
384 | Bob Dellaca, to make a png32bd.dll with Borland C++ 4.5
|
---|
385 | Fixed error in example.c with png_set_text: num_text is 3, not 2 (Guido V.)
|
---|
386 | Changed several loops from count-down to count-up, for consistency.
|
---|
387 |
|
---|
388 | Version 1.0.1e [June 6, 1998]
|
---|
389 | Revised libpng.txt and libpng.3 description of png_set_read|write_fn(), and
|
---|
390 | added warnings when people try to set png_read_fn and png_write_fn in
|
---|
391 | the same structure.
|
---|
392 | Added a test such that png_do_gamma will be done when num_trans==0
|
---|
393 | for truecolor images that have defined a background. This corrects an
|
---|
394 | error that was introduced in libpng-0.90 that can cause gamma processing
|
---|
395 | to be skipped.
|
---|
396 | Added tests in png.h to include "trans" and "trans_values" in structures
|
---|
397 | when PNG_READ_BACKGROUND_SUPPORTED or PNG_READ_EXPAND_SUPPORTED is defined.
|
---|
398 | Add png_free(png_ptr->time_buffer) in png_destroy_read_struct()
|
---|
399 | Moved png_convert_to_rfc_1123() from pngwrite.c to png.c
|
---|
400 | Added capability for user-provided malloc_fn() and free_fn() functions,
|
---|
401 | and revised pngtest.c to demonstrate their use, replacing the
|
---|
402 | PNGTEST_DEBUG_MEM feature.
|
---|
403 | Added makefile.w32, for Microsoft C++ 4.0 and later (Tim Wegner).
|
---|
404 |
|
---|
405 | Version 1.0.2 [June 14, 1998]
|
---|
406 | Fixed two bugs in makefile.bor .
|
---|
407 |
|
---|
408 | Version 1.0.2a [December 30, 1998]
|
---|
409 | Replaced and extended code that was removed from png_set_filler() in 1.0.1a.
|
---|
410 | Fixed a bug in png_do_filler() that made it fail to write filler bytes in
|
---|
411 | the left-most pixel of each row (Kevin Bracey).
|
---|
412 | Changed "static pngcharp tIME_string" to "static char tIME_string[30]"
|
---|
413 | in pngtest.c (Duncan Simpson).
|
---|
414 | Fixed a bug in pngtest.c that caused pngtest to try to write a tIME chunk
|
---|
415 | even when no tIME chunk was present in the source file.
|
---|
416 | Fixed a problem in pngrutil.c: gray_to_rgb didn't always work with 16-bit.
|
---|
417 | Fixed a problem in png_read_push_finish_row(), which would not skip some
|
---|
418 | passes that it should skip, for images that are less than 3 pixels high.
|
---|
419 | Interchanged the order of calls to png_do_swap() and png_do_shift()
|
---|
420 | in pngwtran.c (John Cromer).
|
---|
421 | Added #ifdef PNG_DEBUG/#endif surrounding use of PNG_DEBUG in png.h .
|
---|
422 | Changed "bad adaptive filter type" from error to warning in pngrutil.c .
|
---|
423 | Fixed a documentation error about default filtering with 8-bit indexed-color.
|
---|
424 | Separated the PNG_NO_STDIO macro into PNG_NO_STDIO and PNG_NO_CONSOLE_IO
|
---|
425 | (L. Peter Deutsch).
|
---|
426 | Added png_set_rgb_to_gray() and png_get_rgb_to_gray_status() functions.
|
---|
427 | Added png_get_copyright() and png_get_header_version() functions.
|
---|
428 | Revised comments on png_set_progressive_read_fn() in libpng.txt and example.c
|
---|
429 | Added information about debugging in libpng.txt and libpng.3 .
|
---|
430 | Changed "ln -sf" to "ln -s -f" in makefile.s2x, makefile.lnx, and
|
---|
431 | makefile.sco.
|
---|
432 | Removed lines after Dynamic Dependencies" in makefile.aco .
|
---|
433 | Revised makefile.dec to make a shared library (Jeremie Petit).
|
---|
434 | Removed trailing blanks from all files.
|
---|
435 |
|
---|
436 | Version 1.0.2a [January 6, 1999]
|
---|
437 | Removed misplaced #endif and #ifdef PNG_NO_EXTERN near the end of png.h
|
---|
438 | Added "if" tests to silence complaints about unused png_ptr in png.h and png.c
|
---|
439 | Changed "check_if_png" function in example.c to return true (nonzero) if PNG.
|
---|
440 | Changed libpng.txt to demonstrate png_sig_cmp() instead of png_check_sig()
|
---|
441 | which is obsolete.
|
---|
442 |
|
---|
443 | Version 1.0.3 [January 14, 1999]
|
---|
444 | Added makefile.hux, for Hewlett Packard HPUX 10.20 and 11.00 (Jim Rice)
|
---|
445 | Added a statement of Y2K compliance in png.h, libpng.3, and Y2KINFO.
|
---|
446 |
|
---|
447 | Version 1.0.3a [August 12, 1999]
|
---|
448 | Added check for PNG_READ_INTERLACE_SUPPORTED in pngread.c; issue a warning
|
---|
449 | if an attempt is made to read an interlaced image when it's not supported.
|
---|
450 | Added check if png_ptr->trans is defined before freeing it in pngread.c
|
---|
451 | Modified the Y2K statement to include versions back to version 0.71
|
---|
452 | Fixed a bug in the check for valid IHDR bit_depth/color_types in pngrutil.c
|
---|
453 | Modified makefile.wat (added -zp8 flag, ".symbolic", changed some comments)
|
---|
454 | Replaced leading blanks with tab characters in makefile.hux
|
---|
455 | Changed "dworkin.wustl.edu" to "ccrc.wustl.edu" in various documents.
|
---|
456 | Changed (float)red and (float)green to (double)red, (double)green
|
---|
457 | in png_set_rgb_to_gray() to avoid "promotion" problems in AIX.
|
---|
458 | Fixed a bug in pngconf.h that omitted <stdio.h> when PNG_DEBUG==0 (K Bracey).
|
---|
459 | Reformatted libpng.3 and libpngpf.3 with proper fonts (script by J. vanZandt).
|
---|
460 | Updated documentation to refer to the PNG-1.2 specification.
|
---|
461 | Removed ansi2knr.c and left pointers to the latest source for ansi2knr.c
|
---|
462 | in makefile.knr, INSTALL, and README (L. Peter Deutsch)
|
---|
463 | Fixed bugs in calculation of the length of rowbytes when adding alpha
|
---|
464 | channels to 16-bit images, in pngrtran.c (Chris Nokleberg)
|
---|
465 | Added function png_set_user_transform_info() to store user_transform_ptr,
|
---|
466 | user_depth, and user_channels into the png_struct, and a function
|
---|
467 | png_get_user_transform_ptr() to retrieve the pointer (Chris Nokleberg)
|
---|
468 | Added function png_set_empty_plte_permitted() to make libpng useable
|
---|
469 | in MNG applications.
|
---|
470 | Corrected the typedef for png_free_ptr in png.h (Jesse Jones).
|
---|
471 | Correct gamma with srgb is 45455 instead of 45000 in pngrutil.c, to be
|
---|
472 | consistent with PNG-1.2, and allow variance of 500 before complaining.
|
---|
473 | Added assembler code contributed by Intel in file pngvcrd.c and modified
|
---|
474 | makefile.w32 to use it (Nirav Chhatrapati, INTEL Corporation,
|
---|
475 | Gilles Vollant)
|
---|
476 | Changed "ln -s -f" to "ln -f -s" in the makefiles to make Solaris happy.
|
---|
477 | Added some aliases for png_set_expand() in pngrtran.c, namely
|
---|
478 | png_set_expand_PLTE(), png_set_expand_depth(), and png_set_expand_tRNS()
|
---|
479 | (Greg Roelofs, in "PNG: The Definitive Guide").
|
---|
480 | Added makefile.beo for BEOS on X86, contributed by Sander Stok.
|
---|
481 |
|
---|
482 | Version 1.0.3b [August 26, 1999]
|
---|
483 | Replaced 2147483647L several places with PNG_MAX_UINT macro, defined in png.h
|
---|
484 | Changed leading blanks to tabs in all makefiles.
|
---|
485 | Define PNG_USE_PNGVCRD in makefile.w32, to get MMX assembler code.
|
---|
486 | Made alternate versions of png_set_expand() in pngrtran.c, namely
|
---|
487 | png_set_gray_1_2_4_to_8, png_set_palette_to_rgb, and png_set_tRNS_to_alpha
|
---|
488 | (Greg Roelofs, in "PNG: The Definitive Guide"). Deleted the 1.0.3a aliases.
|
---|
489 | Relocated start of 'extern "C"' block in png.h so it doesn't include pngconf.h
|
---|
490 | Revised calculation of num_blocks in pngmem.c to avoid a potentially
|
---|
491 | negative shift distance, whose results are undefined in the C language.
|
---|
492 | Added a check in pngset.c to prevent writing multiple tIME chunks.
|
---|
493 | Added a check in pngwrite.c to detect invalid small window_bits sizes.
|
---|
494 |
|
---|
495 | Version 1.0.3d [September 4, 1999]
|
---|
496 | Fixed type casting of igamma in pngrutil.c
|
---|
497 | Added new png_expand functions to scripts/pngdef.pas and pngos2.def
|
---|
498 | Added a demo read_user_transform_fn that examines the row filters in pngtest.c
|
---|
499 |
|
---|
500 | Version 1.0.4 [September 24, 1999, not distributed publicly]
|
---|
501 | Define PNG_ALWAYS_EXTERN in pngconf.h if __STDC__ is defined
|
---|
502 | Delete #define PNG_INTERNAL and include "png.h" from pngasmrd.h
|
---|
503 | Made several minor corrections to pngtest.c
|
---|
504 | Renamed the makefiles with longer but more user friendly extensions.
|
---|
505 | Copied the PNG copyright and license to a separate LICENSE file.
|
---|
506 | Revised documentation, png.h, and example.c to remove reference to
|
---|
507 | "viewing_gamma" which no longer appears in the PNG specification.
|
---|
508 | Revised pngvcrd.c to use MMX code for interlacing only on the final pass.
|
---|
509 | Updated pngvcrd.c to use the faster C filter algorithms from libpng-1.0.1a
|
---|
510 | Split makefile.win32vc into two versions, makefile.vcawin32 (uses MMX
|
---|
511 | assembler code) and makefile.vcwin32 (doesn't).
|
---|
512 | Added a CPU timing report to pngtest.c (enabled by defining PNGTEST_TIMING)
|
---|
513 | Added a copy of pngnow.png to the distribution.
|
---|
514 |
|
---|
515 | Version 1.0.4a [September 25, 1999]
|
---|
516 | Increase max_pixel_depth in pngrutil.c if a user transform needs it.
|
---|
517 | Changed several division operations to right-shifts in pngvcrd.c
|
---|
518 |
|
---|
519 | Version 1.0.4b [September 30, 1999]
|
---|
520 | Added parentheses in line 3732 of pngvcrd.c
|
---|
521 | Added a comment in makefile.linux warning about buggy -O3 in pgcc 2.95.1
|
---|
522 |
|
---|
523 | Version 1.0.4c [October 1, 1999]
|
---|
524 | Added a "png_check_version" function in png.c and pngtest.c that will generate
|
---|
525 | a helpful compiler error if an old png.h is found in the search path.
|
---|
526 | Changed type of png_user_transform_depth|channels from int to png_byte.
|
---|
527 | Added "Libpng is OSI Certified Open Source Software" statement to png.h
|
---|
528 |
|
---|
529 | Version 1.0.4d [October 6, 1999]
|
---|
530 | Changed 0.45 to 0.45455 in png_set_sRGB()
|
---|
531 | Removed unused PLTE entries from pngnow.png
|
---|
532 | Re-enabled some parts of pngvcrd.c (png_combine_row) that work properly.
|
---|
533 |
|
---|
534 | Version 1.0.4e [October 10, 1999]
|
---|
535 | Fixed sign error in pngvcrd.c (Greg Roelofs)
|
---|
536 | Replaced some instances of memcpy with simple assignments in pngvcrd (GR-P)
|
---|
537 |
|
---|
538 | Version 1.0.4f [October 15, 1999]
|
---|
539 | Surrounded example.c code with #if 0 .. #endif to prevent people from
|
---|
540 | inadvertently trying to compile it.
|
---|
541 | Changed png_get_header_version() from a function to a macro in png.h
|
---|
542 | Added type casting mostly in pngrtran.c and pngwtran.c
|
---|
543 | Removed some pointless "ptr = NULL" in pngmem.c
|
---|
544 | Added a "contrib" directory containing the source code from Greg's book.
|
---|
545 |
|
---|
546 | Version 1.0.5 [October 15, 1999]
|
---|
547 | Minor editing of the INSTALL and README files.
|
---|
548 |
|
---|
549 | Version 1.0.5a [October 23, 1999]
|
---|
550 | Added contrib/pngsuite and contrib/pngminus (Willem van Schaik)
|
---|
551 | Fixed a typo in the png_set_sRGB() function call in example.c (Jan Nijtmans)
|
---|
552 | Further optimization and bugfix of pngvcrd.c
|
---|
553 | Revised pngset.c so that it does not allocate or free memory in the user's
|
---|
554 | text_ptr structure. Instead, it makes its own copy.
|
---|
555 | Created separate write_end_info_struct in pngtest.c for a more severe test.
|
---|
556 | Added code in pngwrite.c to free info_ptr->text[i].key to stop a memory leak.
|
---|
557 |
|
---|
558 | Version 1.0.5b [November 23, 1999]
|
---|
559 | Moved PNG_FLAG_HAVE_CHUNK_HEADER, PNG_FLAG_BACKGROUND_IS_GRAY and
|
---|
560 | PNG_FLAG_WROTE_tIME from flags to mode.
|
---|
561 | Added png_write_info_before_PLTE() function.
|
---|
562 | Fixed some typecasting in contrib/gregbook/*.c
|
---|
563 | Updated scripts/makevms.com and added makevms.com to contrib/gregbook
|
---|
564 | and contrib/pngminus (Martin Zinser)
|
---|
565 |
|
---|
566 | Version 1.0.5c [November 26, 1999]
|
---|
567 | Moved png_get_header_version from png.h to png.c, to accommodate ansi2knr.
|
---|
568 | Removed all global arrays (according to PNG_NO_GLOBAL_ARRAYS macro), to
|
---|
569 | accommodate making DLL's: Moved usr_png_ver from global variable to function
|
---|
570 | png_get_header_ver() in png.c. Moved png_sig to png_sig_bytes in png.c and
|
---|
571 | eliminated use of png_sig in pngwutil.c. Moved the various png_CHNK arrays
|
---|
572 | into pngtypes.h. Eliminated use of global png_pass arrays. Declared the
|
---|
573 | png_CHNK and png_pass arrays to be "const". Made the global arrays
|
---|
574 | available to applications (although none are used in libpng itself) when
|
---|
575 | PNG_NO_GLOBAL_ARRAYS is not defined or when PNG_GLOBAL_ARRAYS is defined.
|
---|
576 | Removed some extraneous "-I" from contrib/pngminus/makefile.std
|
---|
577 | Changed the PNG_sRGB_INTENT macros in png.h to be consistent with PNG-1.2.
|
---|
578 | Change PNG_SRGB_INTENT to PNG_sRGB_INTENT in libpng.txt and libpng.3
|
---|
579 |
|
---|
580 | Version 1.0.5d [November 29, 1999]
|
---|
581 | Add type cast (png_const_charp) two places in png.c
|
---|
582 | Eliminated pngtypes.h; use macros instead to declare PNG_CHNK arrays.
|
---|
583 | Renamed "PNG_GLOBAL_ARRAYS" to "PNG_USE_GLOBAL_ARRAYS" and made available
|
---|
584 | to applications a macro "PNG_USE_LOCAL_ARRAYS".
|
---|
585 | comment out (with #ifdef) all the new declarations when
|
---|
586 | PNG_USE_GLOBAL_ARRAYS is defined.
|
---|
587 | Added PNG_EXPORT_VAR macro to accommodate making DLL's.
|
---|
588 |
|
---|
589 | Version 1.0.5e [November 30, 1999]
|
---|
590 | Added iCCP, iTXt, and sPLT support; added "lang" member to the png_text
|
---|
591 | structure; refactored the inflate/deflate support to make adding new chunks
|
---|
592 | with trailing compressed parts easier in the future, and added new functions
|
---|
593 | png_free_iCCP, png_free_pCAL, png_free_sPLT, png_free_text, png_get_iCCP,
|
---|
594 | png_get_spalettes, png_set_iCCP, png_set_spalettes (Eric S. Raymond).
|
---|
595 | NOTE: Applications that write text chunks MUST define png_text->lang
|
---|
596 | before calling png_set_text(). It must be set to NULL if you want to
|
---|
597 | write tEXt or zTXt chunks. If you want your application to be able to
|
---|
598 | run with older versions of libpng, use
|
---|
599 |
|
---|
600 | #ifdef PNG_iTXt_SUPPORTED
|
---|
601 | png_text[i].lang = NULL;
|
---|
602 | #endif
|
---|
603 |
|
---|
604 | Changed png_get_oFFs() and png_set_oFFs() to use signed rather than unsigned
|
---|
605 | offsets (Eric S. Raymond).
|
---|
606 | Combined PNG_READ_cHNK_SUPPORTED and PNG_WRITE_cHNK_SUPPORTED macros into
|
---|
607 | PNG_cHNK_SUPPORTED and combined the three types of PNG_text_SUPPORTED
|
---|
608 | macros, leaving the separate macros also available.
|
---|
609 | Removed comments on #endifs at the end of many short, non-nested #if-blocks.
|
---|
610 |
|
---|
611 | Version 1.0.5f [December 6, 1999]
|
---|
612 | Changed makefile.solaris to issue a warning about potential problems when
|
---|
613 | the ucb "ld" is in the path ahead of the ccs "ld".
|
---|
614 | Removed "- [date]" from the "synopsis" line in libpng.3 and libpngpf.3.
|
---|
615 | Added sCAL chunk support (Eric S. Raymond).
|
---|
616 |
|
---|
617 | Version 1.0.5g [December 7, 1999]
|
---|
618 | Fixed "png_free_spallettes" typo in png.h
|
---|
619 | Added code to handle new chunks in pngpread.c
|
---|
620 | Moved PNG_CHNK string macro definitions outside of PNG_NO_EXTERN block
|
---|
621 | Added "translated_key" to png_text structure and png_write_iTXt().
|
---|
622 | Added code in pngwrite.c to work around a newly discovered zlib bug.
|
---|
623 |
|
---|
624 | Version 1.0.5h [December 10, 1999]
|
---|
625 | NOTE: regarding the note for version 1.0.5e, the following must also
|
---|
626 | be included in your code:
|
---|
627 | png_text[i].translated_key = NULL;
|
---|
628 | Unknown chunk handling is now supported.
|
---|
629 | Option to eliminate all floating point support was added. Some new
|
---|
630 | fixed-point functions such as png_set_gAMA_fixed() were added.
|
---|
631 | Expanded tabs and removed trailing blanks in source files.
|
---|
632 |
|
---|
633 | Version 1.0.5i [December 13, 1999]
|
---|
634 | Added some type casts to silence compiler warnings.
|
---|
635 | Renamed "png_free_spalette" to "png_free_spalettes" for consistency.
|
---|
636 | Removed leading blanks from a #define in pngvcrd.c
|
---|
637 | Added some parameters to the new png_set_keep_unknown_chunks() function.
|
---|
638 | Added a test for up->location != 0 in the first instance of writing
|
---|
639 | unknown chunks in pngwrite.c
|
---|
640 | Changed "num" to "i" in png_free_spalettes() and png_free_unknowns() to
|
---|
641 | prevent recursion.
|
---|
642 | Added png_free_hIST() function.
|
---|
643 | Various patches to fix bugs in the sCAL and integer cHRM processing,
|
---|
644 | and to add some convenience macros for use with sCAL.
|
---|
645 |
|
---|
646 | Version 1.0.5j [December 21, 1999]
|
---|
647 | Changed "unit" parameter of png_write_sCAL from png_byte to int, to work
|
---|
648 | around buggy compilers.
|
---|
649 | Added new type "png_fixed_point" for integers that hold float*100000 values
|
---|
650 | Restored backward compatibility of tEXt/zTXt chunk processing:
|
---|
651 | Restored the first four members of png_text to the same order as v.1.0.5d.
|
---|
652 | Added members "lang_key" and "itxt_length" to png_text struct. Set
|
---|
653 | text_length=0 when "text" contains iTXt data. Use the "compression"
|
---|
654 | member to distinguish among tEXt/zTXt/iTXt types. Added
|
---|
655 | PNG_ITXT_COMPRESSION_NONE (1) and PNG_ITXT_COMPRESSION_zTXt(2) macros.
|
---|
656 | The "Note" above, about backward incompatibility of libpng-1.0.5e, no
|
---|
657 | longer applies.
|
---|
658 | Fixed png_read|write_iTXt() to read|write parameters in the right order,
|
---|
659 | and to write the iTXt chunk after IDAT if it appears in the end_ptr.
|
---|
660 | Added pnggccrd.c, version of pngvcrd.c Intel assembler for gcc (Greg Roelofs)
|
---|
661 | Reversed the order of trying to write floating-point and fixed-point gAMA.
|
---|
662 |
|
---|
663 | Version 1.0.5k [December 27, 1999]
|
---|
664 | Added many parentheses, e.g., "if (a && b & c)" becomes "if (a && (b & c))"
|
---|
665 | Added png_handle_as_unknown() function (Glenn)
|
---|
666 | Added png_free_chunk_list() function and chunk_list and num_chunk_list members
|
---|
667 | of png_ptr.
|
---|
668 | Eliminated erroneous warnings about multiple sPLT chunks and sPLT-after-PLTE.
|
---|
669 | Fixed a libpng-1.0.5h bug in pngrutil.c that was issuing erroneous warnings
|
---|
670 | about ignoring incorrect gAMA with sRGB (gAMA was in fact not ignored)
|
---|
671 | Added png_free_tRNS(); png_set_tRNS() now malloc's its own trans array (ESR).
|
---|
672 | Define png_get_int_32 when oFFs chunk is supported as well as when pCAL is.
|
---|
673 | Changed type of proflen from png_int_32 to png_uint_32 in png_get_iCCP().
|
---|
674 |
|
---|
675 | Version 1.0.5l [January 1, 2000]
|
---|
676 | Added functions png_set_read_user_chunk_fn() and png_get_user_chunk_ptr()
|
---|
677 | for setting a callback function to handle unknown chunks and for
|
---|
678 | retrieving the associated user pointer (Glenn).
|
---|
679 |
|
---|
680 | Version 1.0.5m [January 7, 2000]
|
---|
681 | Added high-level functions png_read_png(), png_write_png(), png_free_pixels().
|
---|
682 |
|
---|
683 | Version 1.0.5n [January 9, 2000]
|
---|
684 | Added png_free_PLTE() function, and modified png_set_PLTE() to malloc its
|
---|
685 | own memory for info_ptr->palette. This makes it safe for the calling
|
---|
686 | application to free its copy of the palette any time after it calls
|
---|
687 | png_set_PLTE().
|
---|
688 |
|
---|
689 | Version 1.0.5o [January 20, 2000]
|
---|
690 | Cosmetic changes only (removed some trailing blanks and TABs)
|
---|
691 |
|
---|
692 | Version 1.0.5p [January 31, 2000]
|
---|
693 | Renamed pngdll.mak to makefile.bd32
|
---|
694 | Cosmetic changes in pngtest.c
|
---|
695 |
|
---|
696 | Version 1.0.5q [February 5, 2000]
|
---|
697 | Relocated the makefile.solaris warning about PATH problems.
|
---|
698 | Fixed pngvcrd.c bug by pushing/popping registers in mmxsupport (Bruce Oberg)
|
---|
699 | Revised makefile.gcmmx
|
---|
700 | Added PNG_SETJMP_SUPPORTED, PNG_SETJMP_NOT_SUPPORTED, and PNG_ABORT() macros
|
---|
701 |
|
---|
702 | Version 1.0.5r [February 7, 2000]
|
---|
703 | Removed superfluous prototype for png_get_itxt from png.h
|
---|
704 | Fixed a bug in pngrtran.c that improperly expanded the background color.
|
---|
705 | Return *num_text=0 from png_get_text() when appropriate, and fix documentation
|
---|
706 | of png_get_text() in libpng.txt/libpng.3.
|
---|
707 |
|
---|
708 | Version 1.0.5s [February 18, 2000]
|
---|
709 | Added "png_jmp_env()" macro to pngconf.h, to help people migrate to the
|
---|
710 | new error handler that's planned for the next libpng release, and changed
|
---|
711 | example.c, pngtest.c, and contrib programs to use this macro.
|
---|
712 | Revised some of the DLL-export macros in pngconf.h (Greg Roelofs)
|
---|
713 | Fixed a bug in png_read_png() that caused it to fail to expand some images
|
---|
714 | that it should have expanded.
|
---|
715 | Fixed some mistakes in the unused and undocumented INCH_CONVERSIONS functions
|
---|
716 | in pngget.c
|
---|
717 | Changed the allocation of palette, history, and trans arrays back to
|
---|
718 | the version 1.0.5 method (linking instead of copying) which restores
|
---|
719 | backward compatibility with version 1.0.5. Added some remarks about
|
---|
720 | that in example.c. Added "free_me" member to info_ptr and png_ptr
|
---|
721 | and added png_free_data() function.
|
---|
722 | Updated makefile.linux and makefile.gccmmx to make directories conditionally.
|
---|
723 | Made cosmetic changes to pngasmrd.h
|
---|
724 | Added png_set_rows() and png_get_rows(), for use with png_read|write_png().
|
---|
725 | Modified png_read_png() to allocate info_ptr->row_pointers only if it
|
---|
726 | hasn't already been allocated.
|
---|
727 |
|
---|
728 | Version 1.0.5t [March 4, 2000]
|
---|
729 | Changed png_jmp_env() migration aiding macro to png_jmpbuf().
|
---|
730 | Fixed "interlace" typo (should be "interlaced") in contrib/gregbook/read2-x.c
|
---|
731 | Fixed bug with use of PNG_BEFORE_IHDR bit in png_ptr->mode, introduced when
|
---|
732 | PNG_FLAG_HAVE_CHUNK_HEADER was moved into png_ptr->mode in version 1.0.5b
|
---|
733 | Files in contrib/gregbook were revised to use png_jmpbuf() and to select
|
---|
734 | a 24-bit visual if one is available, and to allow abbreviated options.
|
---|
735 | Files in contrib/pngminus were revised to use the png_jmpbuf() macro.
|
---|
736 | Removed spaces in makefile.linux and makefile.gcmmx, introduced in 1.0.5s
|
---|
737 |
|
---|
738 | Version 1.0.5u [March 5, 2000]
|
---|
739 | Simplified the code that detects old png.h in png.c and pngtest.c
|
---|
740 | Renamed png_spalette (_p, _pp) to png_sPLT_t (_tp, _tpp)
|
---|
741 | Increased precision of rgb_to_gray calculations from 8 to 15 bits and
|
---|
742 | added png_set_rgb_to_gray_fixed() function.
|
---|
743 | Added makefile.bc32 (32-bit Borland C++, C mode)
|
---|
744 |
|
---|
745 | Version 1.0.5v [March 11, 2000]
|
---|
746 | Added some parentheses to the png_jmpbuf macro definition.
|
---|
747 | Updated references to the zlib home page, which has moved to freesoftware.com.
|
---|
748 | Corrected bugs in documentation regarding png_read_row() and png_write_row().
|
---|
749 | Updated documentation of png_rgb_to_gray calculations in libpng.3/libpng.txt.
|
---|
750 | Renamed makefile.borland,turboc3 back to makefile.bor,tc3 as in version 1.0.3,
|
---|
751 | revised borland makefiles; added makefile.ibmvac3 and makefile.gcc (Cosmin)
|
---|
752 |
|
---|
753 | Version 1.0.6 [March 20, 2000]
|
---|
754 | Minor revisions of makefile.bor, libpng.txt, and gregbook/rpng2-win.c
|
---|
755 | Added makefile.sggcc (SGI IRIX with gcc)
|
---|
756 |
|
---|
757 | Version 1.0.6d [April 7, 2000]
|
---|
758 | Changed sprintf() to strcpy() in png_write_sCAL_s() to work without STDIO
|
---|
759 | Added data_length parameter to png_decompress_chunk() function
|
---|
760 | Revised documentation to remove reference to abandoned png_free_chnk functions
|
---|
761 | Fixed an error in png_rgb_to_gray_fixed()
|
---|
762 | Revised example.c, usage of png_destroy_write_struct().
|
---|
763 | Renamed makefile.ibmvac3 to makefile.ibmc, added libpng.icc IBM project file
|
---|
764 | Added a check for info_ptr->free_me&PNG_FREE_TEXT when freeing text in png.c
|
---|
765 | Simplify png_sig_bytes() function to remove use of non-ISO-C strdup().
|
---|
766 |
|
---|
767 | Version 1.0.6e [April 9, 2000]
|
---|
768 | Added png_data_freer() function.
|
---|
769 | In the code that checks for over-length tRNS chunks, added check of
|
---|
770 | info_ptr->num_trans as well as png_ptr->num_trans (Matthias Benckmann)
|
---|
771 | Minor revisions of libpng.txt/libpng.3.
|
---|
772 | Check for existing data and free it if the free_me flag is set, in png_set_*()
|
---|
773 | and png_handle_*().
|
---|
774 | Only define PNG_WEIGHTED_FILTERS_SUPPORTED when PNG_FLOATING_POINT_SUPPORTED
|
---|
775 | is defined.
|
---|
776 | Changed several instances of PNG_NO_CONSOLE_ID to PNG_NO_STDIO in pngrutil.c
|
---|
777 | and mentioned the purposes of the two macros in libpng.txt/libpng.3.
|
---|
778 |
|
---|
779 | Version 1.0.6f [April 14, 2000]
|
---|
780 | Revised png_set_iCCP() and png_set_rows() to avoid prematurely freeing data.
|
---|
781 | Add checks in png_set_text() for NULL members of the input text structure.
|
---|
782 | Revised libpng.txt/libpng.3.
|
---|
783 | Removed superfluous prototype for png_set_iTXt from png.h
|
---|
784 | Removed "else" from pngread.c, after png_error(), and changed "0" to "length".
|
---|
785 | Changed several png_errors about malformed ancillary chunks to png_warnings.
|
---|
786 |
|
---|
787 | Version 1.0.6g [April 24, 2000]
|
---|
788 | Added png_pass-* arrays to pnggccrd.c when PNG_USE_LOCAL_ARRAYS is defined.
|
---|
789 | Relocated paragraph about png_set_background() in libpng.3/libpng.txt
|
---|
790 | and other revisions (Matthias Benckmann)
|
---|
791 | Relocated info_ptr->free_me, png_ptr->free_me, and other info_ptr and
|
---|
792 | png_ptr members to restore binary compatibility with libpng-1.0.5
|
---|
793 | (breaks compatibility with libpng-1.0.6).
|
---|
794 |
|
---|
795 | Version 1.0.6h [April 24, 2000]
|
---|
796 | Changed shared library so-number pattern from 2.x.y.z to xy.z (this builds
|
---|
797 | libpng.so.10 & libpng.so.10.6h instead of libpng.so.2 & libpng.so.2.1.0.6h)
|
---|
798 | This is a temporary change for test purposes.
|
---|
799 |
|
---|
800 | Version 1.0.6i [May 2, 2000]
|
---|
801 | Rearranged some members at the end of png_info and png_struct, to put
|
---|
802 | unknown_chunks_num and free_me within the original size of the png_structs
|
---|
803 | and free_me, png_read_user_fn, and png_free_fn within the original png_info,
|
---|
804 | because some old applications allocate the structs directly instead of
|
---|
805 | using png_create_*().
|
---|
806 | Added documentation of user memory functions in libpng.txt/libpng.3
|
---|
807 | Modified png_read_png so that it will use user_allocated row_pointers
|
---|
808 | if present, unless free_me directs that it be freed, and added description
|
---|
809 | of the use of png_set_rows() and png_get_rows() in libpng.txt/libpng.3.
|
---|
810 | Added PNG_LEGACY_SUPPORTED macro, and #ifdef out all new (since version
|
---|
811 | 1.00) members of png_struct and png_info, to regain binary compatibility
|
---|
812 | when you define this macro. Capabilities lost in this event
|
---|
813 | are user transforms (new in version 1.0.0),the user transform pointer
|
---|
814 | (new in version 1.0.2), rgb_to_gray (new in 1.0.5), iCCP, sCAL, sPLT,
|
---|
815 | the high-level interface, and unknown chunks support (all new in 1.0.6).
|
---|
816 | This was necessary because of old applications that allocate the structs
|
---|
817 | directly as authors were instructed to do in libpng-0.88 and earlier,
|
---|
818 | instead of using png_create_*().
|
---|
819 | Added modes PNG_CREATED_READ_STRUCT and PNG_CREATED_WRITE_STRUCT which
|
---|
820 | can be used to detect codes that directly allocate the structs, and
|
---|
821 | code to check these modes in png_read_init() and png_write_init() and
|
---|
822 | generate a libpng error if the modes aren't set and PNG_LEGACY_SUPPORTED
|
---|
823 | was not defined.
|
---|
824 | Added makefile.intel and updated makefile.watcom (Pawel Mrochen)
|
---|
825 |
|
---|
826 | Version 1.0.6j [May 3, 2000]
|
---|
827 | Overloaded png_read_init() and png_write_init() with macros that convert
|
---|
828 | calls to png_read_init_2() or png_write_init_2() that check the version
|
---|
829 | and structure sizes.
|
---|
830 |
|
---|
831 | Version 1.0.7beta11 [May 7, 2000]
|
---|
832 | Removed the new PNG_CREATED_READ_STRUCT and PNG_CREATED_WRITE_STRUCT modes
|
---|
833 | which are no longer used.
|
---|
834 | Eliminated the three new members of png_text when PNG_LEGACY_SUPPORTED is
|
---|
835 | defined or when neither PNG_READ_iTXt_SUPPORTED nor PNG_WRITE_iTXt_SUPPORTED
|
---|
836 | is defined.
|
---|
837 | Made PNG_NO_READ|WRITE_iTXt the default setting, to avoid memory
|
---|
838 | overrun when old applications fill the info_ptr->text structure directly.
|
---|
839 | Added PNGAPI macro, and added it to the definitions of all exported functions.
|
---|
840 | Relocated version macro definitions ahead of the includes of zlib.h and
|
---|
841 | pngconf.h in png.h.
|
---|
842 |
|
---|
843 | Version 1.0.7beta12 [May 12, 2000]
|
---|
844 | Revised pngset.c to avoid a problem with expanding the png_debug macro.
|
---|
845 | Deleted some extraneous defines from pngconf.h
|
---|
846 | Made PNG_NO_CONSOLE_IO the default condition when PNG_BUILD_DLL is defined.
|
---|
847 | Use MSC _RPTn debugging instead of fprintf if _MSC_VER is defined.
|
---|
848 | Added png_access_version_number() function.
|
---|
849 | Check for mask&PNG_FREE_CHNK (for TEXT, SCAL, PCAL) in png_free_data().
|
---|
850 | Expanded libpng.3/libpng.txt information about png_data_freer().
|
---|
851 |
|
---|
852 | Version 1.0.7beta14 [May 17, 2000] (beta13 was not published)
|
---|
853 | Changed pnggccrd.c and pngvcrd.c to handle bad adaptive filter types as
|
---|
854 | warnings instead of errors, as pngrutil.c does.
|
---|
855 | Set the PNG_INFO_IDAT valid flag in png_set_rows() so png_write_png()
|
---|
856 | will actually write IDATs.
|
---|
857 | Made the default PNG_USE_LOCAL_ARRAYS depend on PNG_DLL instead of WIN32.
|
---|
858 | Make png_free_data() ignore its final parameter except when freeing data
|
---|
859 | that can have multiple instances (text, sPLT, unknowns).
|
---|
860 | Fixed a new bug in png_set_rows().
|
---|
861 | Removed info_ptr->valid tests from png_free_data(), as in version 1.0.5.
|
---|
862 | Added png_set_invalid() function.
|
---|
863 | Fixed incorrect illustrations of png_destroy_write_struct() in example.c.
|
---|
864 |
|
---|
865 | Version 1.0.7beta15 [May 30, 2000]
|
---|
866 | Revised the deliberately erroneous Linux setjmp code in pngconf.h to produce
|
---|
867 | fewer error messages.
|
---|
868 | Rearranged checks for Z_OK to check the most likely path first in pngpread.c
|
---|
869 | and pngwutil.c.
|
---|
870 | Added checks in pngtest.c for png_create_*() returning NULL, and mentioned
|
---|
871 | in libpng.txt/libpng.3 the need for applications to check this.
|
---|
872 | Changed names of png_default_*() functions in pngtest to pngtest_*().
|
---|
873 | Changed return type of png_get_x|y_offset_*() from png_uint_32 to png_int_32.
|
---|
874 | Fixed some bugs in the unused PNG_INCH_CONVERSIONS functions in pngget.c
|
---|
875 | Set each pointer to NULL after freeing it in png_free_data().
|
---|
876 | Worked around a problem in pngconf.h; AIX's strings.h defines an "index"
|
---|
877 | macro that conflicts with libpng's png_color_16.index. (Dimitri
|
---|
878 | Papadapoulos)
|
---|
879 | Added "msvc" directory with MSVC++ project files (Simon-Pierre Cadieux).
|
---|
880 |
|
---|
881 | Version 1.0.7beta16 [June 4, 2000]
|
---|
882 | Revised the workaround of AIX string.h "index" bug.
|
---|
883 | Added a check for overlength PLTE chunk in pngrutil.c.
|
---|
884 | Added PNG_NO_POINTER_INDEXING macro to use array-indexing instead of pointer
|
---|
885 | indexing in pngrutil.c and pngwutil.c to accommodate a buggy compiler.
|
---|
886 | Added a warning in png_decompress_chunk() when it runs out of data, e.g.
|
---|
887 | when it tries to read an erroneous PhotoShop iCCP chunk.
|
---|
888 | Added PNG_USE_DLL macro.
|
---|
889 | Revised the copyright/disclaimer/license notice.
|
---|
890 | Added contrib/msvctest directory
|
---|
891 |
|
---|
892 | Version 1.0.7rc1 [June 9, 2000]
|
---|
893 | Corrected the definition of PNG_TRANSFORM_INVERT_ALPHA (0x0400 not 0x0200)
|
---|
894 | Added contrib/visupng directory (Willem van Schaik)
|
---|
895 |
|
---|
896 | Version 1.0.7beta18 [June 23, 2000]
|
---|
897 | Revised PNGAPI definition, and pngvcrd.c to work with __GCC__
|
---|
898 | and do not redefine PNGAPI if it is passed in via a compiler directive.
|
---|
899 | Revised visupng/PngFile.c to remove returns from within the Try block.
|
---|
900 | Removed leading underscores from "_PNG_H" and "_PNG_SAVE_BSD_SOURCE" macros.
|
---|
901 | Updated contrib/visupng/cexcept.h to version 1.0.0.
|
---|
902 | Fixed bugs in pngwrite.c and pngwutil.c that prevented writing iCCP chunks.
|
---|
903 |
|
---|
904 | Version 1.0.7rc2 [June 28, 2000]
|
---|
905 | Updated license to include disclaimers required by UCITA.
|
---|
906 | Fixed "DJBPP" typo in pnggccrd.c introduced in beta18.
|
---|
907 |
|
---|
908 | Version 1.0.7 [July 1, 2000]
|
---|
909 | Revised the definition of "trans_values" in libpng.3/libpng.txt
|
---|
910 |
|
---|
911 | Version 1.0.8beta1 [July 8, 2000]
|
---|
912 | Added png_free(png_ptr, key) two places in pngpread.c to stop memory leaks.
|
---|
913 | Changed PNG_NO_STDIO to PNG_NO_CONSOLE_IO, several places in pngrutil.c and
|
---|
914 | pngwutil.c.
|
---|
915 | Changed PNG_EXPORT_VAR to use PNG_IMPEXP, in pngconf.h.
|
---|
916 | Removed unused "#include <assert.h>" from png.c
|
---|
917 | Added WindowsCE support.
|
---|
918 | Revised pnggccrd.c to work with gcc-2.95.2 and in the Cygwin environment.
|
---|
919 |
|
---|
920 | Version 1.0.8beta2 [July 10, 2000]
|
---|
921 | Added project files to the wince directory and made further revisions
|
---|
922 | of pngtest.c, pngrio.c, and pngwio.c in support of WindowsCE.
|
---|
923 |
|
---|
924 | Version 1.0.8beta3 [July 11, 2000]
|
---|
925 | Only set the PNG_FLAG_FREE_TRNS or PNG_FREE_TRNS flag in png_handle_tRNS()
|
---|
926 | for indexed-color input files to avoid potential double-freeing trans array
|
---|
927 | under some unusual conditions; problem was introduced in version 1.0.6f.
|
---|
928 | Further revisions to pngtest.c and files in the wince subdirectory.
|
---|
929 |
|
---|
930 | Version 1.0.8beta4 [July 14, 2000]
|
---|
931 | Added the files pngbar.png and pngbar.jpg to the distribution.
|
---|
932 | Added makefile.cygwin, and cygwin support in pngconf.h
|
---|
933 | Added PNG_NO_ZALLOC_ZERO macro (makes png_zalloc skip zeroing memory)
|
---|
934 |
|
---|
935 | Version 1.0.8rc1 [July 16, 2000]
|
---|
936 | Revised png_debug() macros and statements to eliminate compiler warnings.
|
---|
937 |
|
---|
938 | Version 1.0.8 [July 24, 2000]
|
---|
939 | Added png_flush() in pngwrite.c, after png_write_IEND().
|
---|
940 | Updated makefile.hpux to build a shared library.
|
---|
941 |
|
---|
942 | Version 1.0.9beta1 [November 10, 2000]
|
---|
943 | Fixed typo in scripts/makefile.hpux
|
---|
944 | Updated makevms.com in scripts and contrib/* and contrib/* (Martin Zinser)
|
---|
945 | Fixed sequence-point bug in contrib/pngminus/png2pnm (Martin Zinser)
|
---|
946 | Changed "cdrom.com" in documentation to "libpng.org"
|
---|
947 | Revised pnggccrd.c to get it all working, and updated makefile.gcmmx (Greg).
|
---|
948 | Changed type of "params" from voidp to png_voidp in png_read|write_png().
|
---|
949 | Make sure PNGAPI and PNG_IMPEXP are defined in pngconf.h.
|
---|
950 | Revised the 3 instances of WRITEFILE in pngtest.c.
|
---|
951 | Relocated "msvc" and "wince" project subdirectories into "dll" subdirectory.
|
---|
952 | Updated png.rc in dll/msvc project
|
---|
953 | Revised makefile.dec to define and use LIBPATH and INCPATH
|
---|
954 | Increased size of global png_libpng_ver[] array from 12 to 18 chars.
|
---|
955 | Made global png_libpng_ver[], png_sig[] and png_pass_*[] arrays const.
|
---|
956 | Removed duplicate png_crc_finish() from png_handle_bKGD() function.
|
---|
957 | Added a warning when application calls png_read_update_info() multiple times.
|
---|
958 | Revised makefile.cygwin
|
---|
959 | Fixed bugs in iCCP support in pngrutil.c and pngwutil.c.
|
---|
960 | Replaced png_set_empty_plte_permitted() with png_permit_mng_features().
|
---|
961 |
|
---|
962 | Version 1.0.9beta2 [November 19, 2000]
|
---|
963 | Renamed the "dll" subdirectory "projects".
|
---|
964 | Added borland project files to "projects" subdirectory.
|
---|
965 | Set VS_FF_PRERELEASE and VS_FF_PATCHED flags in msvc/png.rc when appropriate.
|
---|
966 | Add error message in png_set_compression_buffer_size() when malloc fails.
|
---|
967 |
|
---|
968 | Version 1.0.9beta3 [November 23, 2000]
|
---|
969 | Revised PNG_LIBPNG_BUILD_TYPE macro in png.h, used in the msvc project.
|
---|
970 | Removed the png_flush() in pngwrite.c that crashes some applications
|
---|
971 | that don't set png_output_flush_fn.
|
---|
972 | Added makefile.macosx and makefile.aix to scripts directory.
|
---|
973 |
|
---|
974 | Version 1.0.9beta4 [December 1, 2000]
|
---|
975 | Change png_chunk_warning to png_warning in png_check_keyword().
|
---|
976 | Increased the first part of msg buffer from 16 to 18 in png_chunk_error().
|
---|
977 |
|
---|
978 | Version 1.0.9beta5 [December 15, 2000]
|
---|
979 | Added support for filter method 64 (for PNG datastreams embedded in MNG).
|
---|
980 |
|
---|
981 | Version 1.0.9beta6 [December 18, 2000]
|
---|
982 | Revised png_set_filter() to accept filter method 64 when appropriate.
|
---|
983 | Added new PNG_HAVE_PNG_SIGNATURE bit to png_ptr->mode and use it to
|
---|
984 | help prevent applications from using MNG features in PNG datastreams.
|
---|
985 | Added png_permit_mng_features() function.
|
---|
986 | Revised libpng.3/libpng.txt. Changed "filter type" to "filter method".
|
---|
987 |
|
---|
988 | Version 1.0.9rc1 [December 23, 2000]
|
---|
989 | Revised test for PNG_HAVE_PNG_SIGNATURE in pngrutil.c
|
---|
990 | Fixed error handling of unknown compression type in png_decompress_chunk().
|
---|
991 | In pngconf.h, define __cdecl when _MSC_VER is defined.
|
---|
992 |
|
---|
993 | Version 1.0.9beta7 [December 28, 2000]
|
---|
994 | Changed PNG_TEXT_COMPRESSION_zTXt to PNG_COMPRESSION_TYPE_BASE several places.
|
---|
995 | Revised memory management in png_set_hIST and png_handle_hIST in a backward
|
---|
996 | compatible manner. PLTE and tRNS were revised similarly.
|
---|
997 | Revised the iCCP chunk reader to ignore trailing garbage.
|
---|
998 |
|
---|
999 | Version 1.0.9beta8 [January 12, 2001]
|
---|
1000 | Moved pngasmrd.h into pngconf.h.
|
---|
1001 | Improved handling of out-of-spec garbage iCCP chunks generated by PhotoShop.
|
---|
1002 |
|
---|
1003 | Version 1.0.9beta9 [January 15, 2001]
|
---|
1004 | Added png_set_invalid, png_permit_mng_features, and png_mmx_supported to
|
---|
1005 | wince and msvc project module definition files.
|
---|
1006 | Minor revision of makefile.cygwin.
|
---|
1007 | Fixed bug with progressive reading of narrow interlaced images in pngpread.c
|
---|
1008 |
|
---|
1009 | Version 1.0.9beta10 [January 16, 2001]
|
---|
1010 | Do not typedef png_FILE_p in pngconf.h when PNG_NO_STDIO is defined.
|
---|
1011 | Fixed "png_mmx_supported" typo in project definition files.
|
---|
1012 |
|
---|
1013 | Version 1.0.9beta11 [January 19, 2001]
|
---|
1014 | Updated makefile.sgi to make shared library.
|
---|
1015 | Removed png_mmx_support() function and disabled PNG_MNG_FEATURES_SUPPORTED
|
---|
1016 | by default, for the benefit of DLL forward compatibility. These will
|
---|
1017 | be re-enabled in version 1.2.0.
|
---|
1018 |
|
---|
1019 | Version 1.0.9rc2 [January 22, 2001]
|
---|
1020 | Revised cygwin support.
|
---|
1021 |
|
---|
1022 | Version 1.0.9 [January 31, 2001]
|
---|
1023 | Added check of cygwin's ALL_STATIC in pngconf.h
|
---|
1024 | Added "-nommx" parameter to contrib/gregbook/rpng2-win and rpng2-x demos.
|
---|
1025 |
|
---|
1026 | Version 1.0.10beta1 [March 14, 2001]
|
---|
1027 | Revised makefile.dec, makefile.sgi, and makefile.sggcc; added makefile.hpgcc.
|
---|
1028 | Reformatted libpng.3 to eliminate bad line breaks.
|
---|
1029 | Added checks for _mmx_supported in the read_filter_row function of pnggccrd.c
|
---|
1030 | Added prototype for png_mmx_support() near the top of pnggccrd.c
|
---|
1031 | Moved some error checking from png_handle_IHDR to png_set_IHDR.
|
---|
1032 | Added PNG_NO_READ_SUPPORTED and PNG_NO_WRITE_SUPPORTED macros.
|
---|
1033 | Revised png_mmx_support() function in pnggccrd.c
|
---|
1034 | Restored version 1.0.8 PNG_WRITE_EMPTY_PLTE_SUPPORTED behavior in pngwutil.c
|
---|
1035 | Fixed memory leak in contrib/visupng/PngFile.c
|
---|
1036 | Fixed bugs in png_combine_row() in pnggccrd.c and pngvcrd.c (C version)
|
---|
1037 | Added warnings when retrieving or setting gamma=0.
|
---|
1038 | Increased the first part of msg buffer from 16 to 18 in png_chunk_warning().
|
---|
1039 |
|
---|
1040 | Version 1.0.10rc1 [March 23, 2001]
|
---|
1041 | Changed all instances of memcpy, strcpy, and strlen to png_memcpy, png_strcpy,
|
---|
1042 | and png_strlen.
|
---|
1043 | Revised png_mmx_supported() function in pnggccrd.c to return proper value.
|
---|
1044 | Fixed bug in progressive reading (pngpread.c) with small images (height < 8).
|
---|
1045 |
|
---|
1046 | Version 1.0.10 [March 30, 2001]
|
---|
1047 | Deleted extraneous space (introduced in 1.0.9) from line 42 of makefile.cygwin
|
---|
1048 | Added beos project files (Chris Herborth)
|
---|
1049 |
|
---|
1050 | Version 1.0.11beta1 [April 3, 2001]
|
---|
1051 | Added type casts on several png_malloc() calls (Dimitri Papadapoulos).
|
---|
1052 | Removed a no-longer needed AIX work-around from pngconf.h
|
---|
1053 | Changed several "//" single-line comments to C-style in pnggccrd.c
|
---|
1054 |
|
---|
1055 | Version 1.0.11beta2 [April 11, 2001]
|
---|
1056 | Removed PNGAPI from several functions whose prototypes did not have PNGAPI.
|
---|
1057 | Updated scripts/pngos2.def
|
---|
1058 |
|
---|
1059 | Version 1.0.11beta3 [April 14, 2001]
|
---|
1060 | Added checking the results of many instances of png_malloc() for NULL
|
---|
1061 |
|
---|
1062 | Version 1.0.11beta4 [April 20, 2001]
|
---|
1063 | Undid the changes from version 1.0.11beta3. Added a check for NULL return
|
---|
1064 | from user's malloc_fn().
|
---|
1065 | Removed some useless type casts of the NULL pointer.
|
---|
1066 | Added makefile.netbsd
|
---|
1067 |
|
---|
1068 | Version 1.0.11 [April 27, 2001]
|
---|
1069 | Revised makefile.netbsd
|
---|
1070 |
|
---|
1071 | Version 1.0.12beta1 [May 14, 2001]
|
---|
1072 | Test for Windows platform in pngconf.h when including malloc.h (Emmanuel Blot)
|
---|
1073 | Updated makefile.cygwin and handling of Cygwin's ALL_STATIC in pngconf.h
|
---|
1074 | Added some never-to-be-executed code in pnggccrd.c to quiet compiler warnings.
|
---|
1075 | Eliminated the png_error about apps using png_read|write_init(). Instead,
|
---|
1076 | libpng will reallocate the png_struct and info_struct if they are too small.
|
---|
1077 | This retains future binary compatibility for old applications written for
|
---|
1078 | libpng-0.88 and earlier.
|
---|
1079 |
|
---|
1080 | Version 1.2.0beta1 [May 6, 2001]
|
---|
1081 | Bumped DLLNUM to 2.
|
---|
1082 | Re-enabled PNG_MNG_FEATURES_SUPPORTED and enabled PNG_ASSEMBLER_CODE_SUPPORTED
|
---|
1083 | by default.
|
---|
1084 | Added runtime selection of MMX features.
|
---|
1085 | Added png_set_strip_error_numbers function and related macros.
|
---|
1086 |
|
---|
1087 | Version 1.2.0beta2 [May 7, 2001]
|
---|
1088 | Finished merging 1.2.0beta1 with version 1.0.11
|
---|
1089 | Added a check for attempts to read or write PLTE in grayscale PNG datastreams.
|
---|
1090 |
|
---|
1091 | Version 1.2.0beta3 [May 17, 2001]
|
---|
1092 | Enabled user memory function by default.
|
---|
1093 | Modified png_create_struct so it passes user mem_ptr to user memory allocator.
|
---|
1094 | Increased png_mng_features flag from png_byte to png_uint_32.
|
---|
1095 | Bumped shared-library (so-number) and dll-number to 3.
|
---|
1096 |
|
---|
1097 | Version 1.2.0beta4 [June 23, 2001]
|
---|
1098 | Check for missing profile length field in iCCP chunk and free chunk_data
|
---|
1099 | in case of truncated iCCP chunk.
|
---|
1100 | Bumped shared-library number to 3 in makefile.sgi and makefile.sggcc
|
---|
1101 | Bumped dll-number from 2 to 3 in makefile.cygwin
|
---|
1102 | Revised contrib/gregbook/rpng*-x.c to avoid a memory leak and to exit cleanly
|
---|
1103 | if user attempts to run it on an 8-bit display.
|
---|
1104 | Updated contrib/gregbook
|
---|
1105 | Use png_malloc instead of png_zalloc to allocate palette in pngset.c
|
---|
1106 | Updated makefile.ibmc
|
---|
1107 | Added some typecasts to eliminate gcc 3.0 warnings. Changed prototypes
|
---|
1108 | of png_write_oFFS width and height from png_uint_32 to png_int_32.
|
---|
1109 | Updated example.c
|
---|
1110 | Revised prototypes for png_debug_malloc and png_debug_free in pngtest.c
|
---|
1111 |
|
---|
1112 | Version 1.2.0beta5 [August 8, 2001]
|
---|
1113 | Revised contrib/gregbook
|
---|
1114 | Revised makefile.gcmmx
|
---|
1115 | Revised pnggccrd.c to conditionally compile some thread-unsafe code only
|
---|
1116 | when PNG_THREAD_UNSAFE_OK is defined.
|
---|
1117 | Added tests to prevent pngwutil.c from writing a bKGD or tRNS chunk with
|
---|
1118 | value exceeding 2^bit_depth-1
|
---|
1119 | Revised makefile.sgi and makefile.sggcc
|
---|
1120 | Replaced calls to fprintf(stderr,...) with png_warning() in pnggccrd.c
|
---|
1121 | Removed restriction that do_invert_mono only operate on 1-bit opaque files
|
---|
1122 |
|
---|
1123 | Version 1.2.0 [September 1, 2001]
|
---|
1124 | Changed a png_warning() to png_debug() in pnggccrd.c
|
---|
1125 | Fixed contrib/gregbook/rpng-x.c, rpng2-x.c to avoid crash with XFreeGC().
|
---|
1126 |
|
---|
1127 | Version 1.2.1beta1 [October 19, 2001]
|
---|
1128 | Revised makefile.std in contrib/pngminus
|
---|
1129 | Include background_1 in png_struct regardless of gamma support.
|
---|
1130 | Revised makefile.netbsd and makefile.macosx, added makefile.darwin.
|
---|
1131 | Revised example.c to provide more details about using row_callback().
|
---|
1132 |
|
---|
1133 | Version 1.2.1beta2 [October 25, 2001]
|
---|
1134 | Added type cast to each NULL appearing in a function call, except for
|
---|
1135 | WINCE functions.
|
---|
1136 | Added makefile.so9.
|
---|
1137 |
|
---|
1138 | Version 1.2.1beta3 [October 27, 2001]
|
---|
1139 | Removed type casts from all NULLs.
|
---|
1140 | Simplified png_create_struct_2().
|
---|
1141 |
|
---|
1142 | Version 1.2.1beta4 [November 7, 2001]
|
---|
1143 | Revised png_create_info_struct() and png_creat_struct_2().
|
---|
1144 | Added error message if png_write_info() was omitted.
|
---|
1145 | Type cast NULLs appearing in function calls when _NO_PROTO or
|
---|
1146 | PNG_TYPECAST_NULL is defined.
|
---|
1147 |
|
---|
1148 | Version 1.2.1rc1 [November 24, 2001]
|
---|
1149 | Type cast NULLs appearing in function calls except when PNG_NO_TYPECAST_NULL
|
---|
1150 | is defined.
|
---|
1151 | Changed typecast of "size" argument to png_size_t in pngmem.c calls to
|
---|
1152 | the user malloc_fn, to agree with the prototype in png.h
|
---|
1153 | Added a pop/push operation to pnggccrd.c, to preserve Eflag (Maxim Sobolev)
|
---|
1154 | Updated makefile.sgi to recognize LIBPATH and INCPATH.
|
---|
1155 | Updated various makefiles so "make clean" does not remove previous major
|
---|
1156 | version of the shared library.
|
---|
1157 |
|
---|
1158 | Version 1.2.1rc2 [December 4, 2001]
|
---|
1159 | Always allocate 256-entry internal palette, hist, and trans arrays, to
|
---|
1160 | avoid out-of-bounds memory reference caused by invalid PNG datastreams.
|
---|
1161 | Added a check for prefix_length > data_length in iCCP chunk handler.
|
---|
1162 |
|
---|
1163 | Version 1.2.1 [December 7, 2001]
|
---|
1164 | None.
|
---|
1165 |
|
---|
1166 | Version 1.2.2beta1 [February 22, 2002]
|
---|
1167 | Fixed a bug with reading the length of iCCP profiles (Larry Reeves).
|
---|
1168 | Revised makefile.linux, makefile.gcmmx, and makefile.sgi to generate
|
---|
1169 | libpng.a, libpng12.so (not libpng.so.3), and libpng12/png.h
|
---|
1170 | Revised makefile.darwin to remove "-undefined suppress" option.
|
---|
1171 | Added checks for gamma and chromaticity values over 21474.83, which exceed
|
---|
1172 | the limit for PNG unsigned 32-bit integers when encoded.
|
---|
1173 | Revised calls to png_create_read_struct() and png_create_write_struct()
|
---|
1174 | for simpler debugging.
|
---|
1175 | Revised png_zalloc() so zlib handles errors (uses PNG_FLAG_MALLOC_NULL_MEM_OK)
|
---|
1176 |
|
---|
1177 | Version 1.2.2beta2 [February 23, 2002]
|
---|
1178 | Check chunk_length and idat_size for invalid (over PNG_MAX_UINT) lengths.
|
---|
1179 | Check for invalid image dimensions in png_get_IHDR.
|
---|
1180 | Added missing "fi;" in the install target of the SGI makefiles.
|
---|
1181 | Added install-static to all makefiles that make shared libraries.
|
---|
1182 | Always do gamma compensation when image is partially transparent.
|
---|
1183 |
|
---|
1184 | Version 1.2.2beta3 [March 7, 2002]
|
---|
1185 | Compute background.gray and background_1.gray even when color_type is RGB
|
---|
1186 | in case image gets reduced to gray later.
|
---|
1187 | Modified shared-library makefiles to install pkgconfig/libpngNN.pc.
|
---|
1188 | Export (with PNGAPI) png_zalloc, png_zfree, and png_handle_as_unknown
|
---|
1189 | Removed unused png_write_destroy_info prototype from png.h
|
---|
1190 | Eliminated incorrect use of width_mmx from pnggccrd.c in pixel_bytes == 8 case
|
---|
1191 | Added install-shared target to all makefiles that make shared libraries.
|
---|
1192 | Stopped a double free of palette, hist, and trans when not using free_me.
|
---|
1193 | Added makefile.32sunu for Sun Ultra 32 and makefile.64sunu for Sun Ultra 64.
|
---|
1194 |
|
---|
1195 | Version 1.2.2beta4 [March 8, 2002]
|
---|
1196 | Compute background.gray and background_1.gray even when color_type is RGB
|
---|
1197 | in case image gets reduced to gray later (Jason Summers).
|
---|
1198 | Relocated a misplaced /bin/rm in the "install-shared" makefile targets
|
---|
1199 | Added PNG_1_0_X macro which can be used to build a 1.0.x-compatible library.
|
---|
1200 |
|
---|
1201 | Version 1.2.2beta5 [March 26, 2002]
|
---|
1202 | Added missing PNGAPI to several function definitions.
|
---|
1203 | Check for invalid bit_depth or color_type in png_get_IHDR(), and
|
---|
1204 | check for missing PLTE or IHDR in png_push_read_chunk() (Matthias Clasen).
|
---|
1205 | Revised iTXt support to accept NULL for lang and lang_key.
|
---|
1206 | Compute gamma for color components of background even when color_type is gray.
|
---|
1207 | Changed "()" to "{}" in scripts/libpng.pc.in.
|
---|
1208 | Revised makefiles to put png.h and pngconf.h only in $prefix/include/libpngNN
|
---|
1209 | Revised makefiles to make symlink to libpng.so.NN in addition to libpngNN.so
|
---|
1210 |
|
---|
1211 | Version 1.2.2beta6 [March 31, 2002]
|
---|
1212 |
|
---|
1213 | Version 1.0.13beta1 [March 31, 2002]
|
---|
1214 | Prevent png_zalloc() from trying to memset memory that it failed to acquire.
|
---|
1215 | Add typecasts of PNG_MAX_UINT in pngset_cHRM_fixed() (Matt Holgate).
|
---|
1216 | Ensure that the right function (user or default) is used to free the
|
---|
1217 | png_struct after an error in png_create_read_struct_2().
|
---|
1218 |
|
---|
1219 | Version 1.2.2rc1 [April 7, 2002]
|
---|
1220 |
|
---|
1221 | Version 1.0.13rc1 [April 7, 2002]
|
---|
1222 | Save the ebx register in pnggccrd.c (Sami Farin)
|
---|
1223 | Add "mem_ptr = png_ptr->mem_ptr" in png_destroy_write_struct() (Paul Gardner).
|
---|
1224 | Updated makefiles to put headers in include/libpng and remove old include/*.h.
|
---|
1225 |
|
---|
1226 | Version 1.2.2 [April 15, 2002]
|
---|
1227 |
|
---|
1228 | Version 1.0.13 [April 15, 2002]
|
---|
1229 | Revised description of png_set_filter() in libpng.3/libpng.txt.
|
---|
1230 | Revised makefile.netbsd and added makefile.neNNbsd and makefile.freebsd
|
---|
1231 |
|
---|
1232 | Version 1.0.13patch01 [April 17, 2002]
|
---|
1233 |
|
---|
1234 | Version 1.2.2patch01 [April 17, 2002]
|
---|
1235 | Changed ${PNGMAJ}.${PNGVER} bug to ${PNGVER} in makefile.sgi and
|
---|
1236 | makefile.sggcc
|
---|
1237 | Fixed VER -> PNGVER typo in makefile.macosx and added install-static to
|
---|
1238 | install
|
---|
1239 | Added install: target to makefile.32sunu and makefile.64sunu
|
---|
1240 |
|
---|
1241 | Version 1.0.13patch03 [April 18, 2002]
|
---|
1242 |
|
---|
1243 | Version 1.2.2patch03 [April 18, 2002]
|
---|
1244 | Revised 15 makefiles to link libpng.a to libpngNN.a and the include libpng
|
---|
1245 | subdirectory to libpngNN subdirectory without the full pathname.
|
---|
1246 | Moved generation of libpng.pc from "install" to "all" in 15 makefiles.
|
---|
1247 |
|
---|
1248 | Version 1.2.3rc1 [April 28, 2002]
|
---|
1249 | Added install-man target to 15 makefiles (Dimitri Papadopolous-Orfanos).
|
---|
1250 | Added $(DESTDIR) feature to 24 makefiles (Tim Mooney)
|
---|
1251 | Fixed bug with $prefix, should be $(prefix) in makefile.hpux.
|
---|
1252 | Updated cygwin-specific portion of pngconf.h and revised makefile.cygwin
|
---|
1253 | Added a link from libpngNN.pc to libpng.pc in 15 makefiles.
|
---|
1254 | Added links from include/libpngNN/*.h to include/*.h in 24 makefiles.
|
---|
1255 | Revised makefile.darwin to make relative links without full pathname.
|
---|
1256 | Added setjmp() at the end of png_create_*_struct_2() in case user forgets
|
---|
1257 | to put one in their application.
|
---|
1258 | Restored png_zalloc() and png_zfree() prototypes to version 1.2.1 and
|
---|
1259 | removed them from module definition files.
|
---|
1260 |
|
---|
1261 | Version 1.2.3rc2 [May 1, 2002]
|
---|
1262 | Fixed bug in reporting number of channels in pngget.c and pngset.c,
|
---|
1263 | that was introduced in version 1.2.2beta5.
|
---|
1264 | Exported png_zalloc(), png_zfree(), png_default_read(), png_default_write(),
|
---|
1265 | png_default_flush(), and png_push_fill_buffer() and included them in
|
---|
1266 | module definition files.
|
---|
1267 | Added "libpng.pc" dependency to the "install-shared" target in 15 makefiles.
|
---|
1268 |
|
---|
1269 | Version 1.2.3rc3 [May 1, 2002]
|
---|
1270 | Revised prototype for png_default_flush()
|
---|
1271 | Remove old libpng.pc and libpngNN.pc before installing new ones.
|
---|
1272 |
|
---|
1273 | Version 1.2.3rc4 [May 2, 2002]
|
---|
1274 | Typos in *.def files (png_default_read|write -> png_default_read|write_data)
|
---|
1275 | In makefiles, changed rm libpng.NN.pc to rm libpngNN.pc
|
---|
1276 | Added libpng-config and libpngNN-config and modified makefiles to install
|
---|
1277 | them.
|
---|
1278 | Changed $(MANPATH) to $(DESTDIR)$(MANPATH) in makefiles
|
---|
1279 | Added "Win32 DLL VB" configuration to projects/msvc/libpng.dsp
|
---|
1280 |
|
---|
1281 | Version 1.2.3rc5 [May 11, 2002]
|
---|
1282 | Changed "error" and "message" in prototypes to "error_message" and
|
---|
1283 | "warning_message" to avoid namespace conflict.
|
---|
1284 | Revised 15 makefiles to build libpng-config from libpng-config-*.in
|
---|
1285 | Once more restored png_zalloc and png_zfree to regular nonexported form.
|
---|
1286 | Restored png_default_read|write_data, png_default_flush, png_read_fill_buffer
|
---|
1287 | to nonexported form, but with PNGAPI, and removed them from module def
|
---|
1288 | files.
|
---|
1289 |
|
---|
1290 | Version 1.2.3rc6 [May 14, 2002]
|
---|
1291 | Removed "PNGAPI" from png_zalloc() and png_zfree() in png.c
|
---|
1292 | Changed "Gz" to "Gd" in projects/msvc/libpng.dsp and zlib.dsp.
|
---|
1293 | Removed leftover libpng-config "sed" script from four makefiles.
|
---|
1294 | Revised libpng-config creating script in 16 makefiles.
|
---|
1295 |
|
---|
1296 | Version 1.2.3 [May 22, 2002]
|
---|
1297 | Revised libpng-config target in makefile.cygwin.
|
---|
1298 | Removed description of png_set_mem_fn() from documentation.
|
---|
1299 | Revised makefile.freebsd.
|
---|
1300 | Minor cosmetic changes to 15 makefiles, e.g., $(DI) = $(DESTDIR)/$(INCDIR).
|
---|
1301 | Revised projects/msvc/README.txt
|
---|
1302 | Changed -lpng to -lpngNN in LDFLAGS in several makefiles.
|
---|
1303 |
|
---|
1304 | Version 1.2.4beta1 [May 24, 2002]
|
---|
1305 | Added libpng.pc and libpng-config to "all:" target in 16 makefiles.
|
---|
1306 | Fixed bug in 16 makefiles: $(DESTDIR)/$(LIBPATH) to $(DESTDIR)$(LIBPATH)
|
---|
1307 | Added missing "\" before closing double quote in makefile.gcmmx.
|
---|
1308 | Plugged various memory leaks; added png_malloc_warn() and png_set_text_2()
|
---|
1309 | functions.
|
---|
1310 |
|
---|
1311 | Version 1.2.4beta2 [June 25, 2002]
|
---|
1312 | Plugged memory leak of png_ptr->current_text (Matt Holgate).
|
---|
1313 | Check for buffer overflow before reading CRC in pngpread.c (Warwick Allison)
|
---|
1314 | Added -soname to the loader flags in makefile.dec, makefile.sgi, and
|
---|
1315 | makefile.sggcc.
|
---|
1316 | Added "test-installed" target to makefile.linux, makefile.gcmmx,
|
---|
1317 | makefile.sgi, and makefile.sggcc.
|
---|
1318 |
|
---|
1319 | Version 1.2.4beta3 [June 28, 2002]
|
---|
1320 | Plugged memory leak of row_buf in pngtest.c when there is a png_error().
|
---|
1321 | Detect buffer overflow in pngpread.c when IDAT is corrupted with extra data.
|
---|
1322 | Added "test-installed" target to makefile.32sunu, makefile.64sunu,
|
---|
1323 | makefile.beos, makefile.darwin, makefile.dec, makefile.macosx,
|
---|
1324 | makefile.solaris, makefile.hpux, makefile.hpgcc, and makefile.so9.
|
---|
1325 |
|
---|
1326 | Version 1.2.4rc1 and 1.0.14rc1 [July 2, 2002]
|
---|
1327 | Added "test-installed" target to makefile.cygwin and makefile.sco.
|
---|
1328 | Revised pnggccrd.c to be able to back out version 1.0.x via PNG_1_0_X macro.
|
---|
1329 |
|
---|
1330 | Version 1.2.4 and 1.0.14 [July 8, 2002]
|
---|
1331 | Changed png_warning() to png_error() when width is too large to process.
|
---|
1332 |
|
---|
1333 | Version 1.2.4patch01 [July 20, 2002]
|
---|
1334 | Revised makefile.cygwin to use DLL number 12 instead of 13.
|
---|
1335 |
|
---|
1336 | Version 1.2.5beta1 [August 6, 2002]
|
---|
1337 | Added code to contrib/gregbook/readpng2.c to ignore unused chunks.
|
---|
1338 | Replaced toucan.png in contrib/gregbook (it has been corrupt since 1.0.11)
|
---|
1339 | Removed some stray *.o files from contrib/gregbook.
|
---|
1340 | Changed png_error() to png_warning() about "Too much data" in pngpread.c
|
---|
1341 | and about "Extra compressed data" in pngrutil.c.
|
---|
1342 | Prevent png_ptr->pass from exceeding 7 in png_push_finish_row().
|
---|
1343 | Updated makefile.hpgcc
|
---|
1344 | Updated png.c and pnggccrd.c handling of return from png_mmx_support()
|
---|
1345 |
|
---|
1346 | Version 1.2.5beta2 [August 15, 2002]
|
---|
1347 | Only issue png_warning() about "Too much data" in pngpread.c when avail_in
|
---|
1348 | is nonzero.
|
---|
1349 | Updated makefiles to install a separate libpng.so.3 with its own rpath.
|
---|
1350 |
|
---|
1351 | Version 1.2.5rc1 and 1.0.15rc1 [August 24, 2002]
|
---|
1352 | Revised makefiles to not remove previous minor versions of shared libraries.
|
---|
1353 |
|
---|
1354 | Version 1.2.5rc2 and 1.0.15rc2 [September 16, 2002]
|
---|
1355 | Revised 13 makefiles to remove "-lz" and "-L$(ZLIBLIB)", etc., from shared
|
---|
1356 | library loader directive.
|
---|
1357 | Added missing "$OBJSDLL" line to makefile.gcmmx.
|
---|
1358 | Added missing "; fi" to makefile.32sunu.
|
---|
1359 |
|
---|
1360 | Version 1.2.5rc3 and 1.0.15rc3 [September 18, 2002]
|
---|
1361 | Revised libpng-config script.
|
---|
1362 |
|
---|
1363 | Version 1.2.5 and 1.0.15 [October 3, 2002]
|
---|
1364 | Revised makefile.macosx, makefile.darwin, makefile.hpgcc, and makefile.hpux,
|
---|
1365 | and makefile.aix.
|
---|
1366 | Relocated two misplaced PNGAPI lines in pngtest.c
|
---|
1367 |
|
---|
1368 | Version 1.2.6beta1 [October 22, 2002]
|
---|
1369 | Commented out warning about uninitialized mmx_support in pnggccrd.c.
|
---|
1370 | Changed "IBMCPP__" flag to "__IBMCPP__" in pngconf.h.
|
---|
1371 | Relocated two more misplaced PNGAPI lines in pngtest.c
|
---|
1372 | Fixed memory overrun bug in png_do_read_filler() with 16-bit datastreams,
|
---|
1373 | introduced in version 1.0.2.
|
---|
1374 | Revised makefile.macosx, makefile.dec, makefile.aix, and makefile.32sunu.
|
---|
1375 |
|
---|
1376 | Version 1.2.6beta2 [November 1, 2002]
|
---|
1377 | Added libpng-config "--ldopts" output.
|
---|
1378 | Added "AR=ar" and "ARFLAGS=rc" and changed "ar rc" to "$(AR) $(ARFLAGS)"
|
---|
1379 | in makefiles.
|
---|
1380 |
|
---|
1381 | Version 1.2.6beta3 [July 18, 2004]
|
---|
1382 | Reverted makefile changes from version 1.2.6beta2 and some of the changes
|
---|
1383 | from version 1.2.6beta1; these will be postponed until version 1.2.7.
|
---|
1384 | Version 1.2.6 is going to be a simple bugfix release.
|
---|
1385 | Changed the one instance of "ln -sf" to "ln -f -s" in each Sun makefile.
|
---|
1386 | Fixed potential overrun in pngerror.c by using strncpy instead of memcpy.
|
---|
1387 | Added "#!/bin/sh" at the top of configure, for recognition of the
|
---|
1388 | 'x' flag under Cygwin (Cosmin).
|
---|
1389 | Optimized vacuous tests that silence compiler warnings, in png.c (Cosmin).
|
---|
1390 | Added support for PNG_USER_CONFIG, in pngconf.h (Cosmin).
|
---|
1391 | Fixed the special memory handler for Borland C under DOS, in pngmem.c
|
---|
1392 | (Cosmin).
|
---|
1393 | Removed some spurious assignments in pngrutil.c (Cosmin).
|
---|
1394 | Replaced 65536 with 65536L, and 0xffff with 0xffffL, to silence warnings
|
---|
1395 | on 16-bit platforms (Cosmin).
|
---|
1396 | Enclosed shift op expressions in parentheses, to silence warnings (Cosmin).
|
---|
1397 | Used proper type png_fixed_point, to avoid problems on 16-bit platforms,
|
---|
1398 | in png_handle_sRGB() (Cosmin).
|
---|
1399 | Added compression_type to png_struct, and optimized the window size
|
---|
1400 | inside the deflate stream (Cosmin).
|
---|
1401 | Fixed definition of isnonalpha(), in pngerror.c and pngrutil.c (Cosmin).
|
---|
1402 | Fixed handling of unknown chunks that come after IDAT (Cosmin).
|
---|
1403 | Allowed png_error() and png_warning() to work even if png_ptr == NULL
|
---|
1404 | (Cosmin).
|
---|
1405 | Replaced row_info->rowbytes with row_bytes in png_write_find_filter()
|
---|
1406 | (Cosmin).
|
---|
1407 | Fixed definition of PNG_LIBPNG_VER_DLLNUM (Simon-Pierre).
|
---|
1408 | Used PNG_LIBPNG_VER and PNG_LIBPNG_VER_STRING instead of the hardcoded
|
---|
1409 | values in png.c (Simon-Pierre, Cosmin).
|
---|
1410 | Initialized png_libpng_ver[] with PNG_LIBPNG_VER_STRING (Simon-Pierre).
|
---|
1411 | Replaced PNG_LIBPNG_VER_MAJOR with PNG_LIBPNG_VER_DLLNUM in png.rc
|
---|
1412 | (Simon-Pierre).
|
---|
1413 | Moved the definition of PNG_HEADER_VERSION_STRING near the definitions
|
---|
1414 | of the other PNG_LIBPNG_VER_... symbols in png.h (Cosmin).
|
---|
1415 | Relocated #ifndef PNGAPI guards in pngconf.h (Simon-Pierre, Cosmin).
|
---|
1416 | Updated scripts/makefile.vc(a)win32 (Cosmin).
|
---|
1417 | Updated the MSVC project (Simon-Pierre, Cosmin).
|
---|
1418 | Updated the Borland C++ Builder project (Cosmin).
|
---|
1419 | Avoided access to asm_flags in pngvcrd.c, if PNG_1_0_X is defined (Cosmin).
|
---|
1420 | Commented out warning about uninitialized mmx_support in pngvcrd.c (Cosmin).
|
---|
1421 | Removed scripts/makefile.bd32 and scripts/pngdef.pas (Cosmin).
|
---|
1422 | Added extra guard around inclusion of Turbo C memory headers, in pngconf.h
|
---|
1423 | (Cosmin).
|
---|
1424 | Renamed projects/msvc/ to projects/visualc6/, and projects/borland/ to
|
---|
1425 | projects/cbuilder5/ (Cosmin).
|
---|
1426 | Moved projects/visualc6/png32ms.def to scripts/pngw32.def,
|
---|
1427 | and projects/visualc6/png.rc to scripts/pngw32.rc (Cosmin).
|
---|
1428 | Added projects/visualc6/pngtest.dsp; removed contrib/msvctest/ (Cosmin).
|
---|
1429 | Changed line endings to DOS style in cbuilder5 and visualc6 files, even
|
---|
1430 | in the tar.* distributions (Cosmin).
|
---|
1431 | Updated contrib/visupng/VisualPng.dsp (Cosmin).
|
---|
1432 | Updated contrib/visupng/cexcept.h to version 2.0.0 (Cosmin).
|
---|
1433 | Added a separate distribution with "configure" and supporting files (Junichi).
|
---|
1434 |
|
---|
1435 | Version 1.2.6beta4 [July 28, 2004]
|
---|
1436 | Added user ability to change png_size_t via a PNG_SIZE_T macro.
|
---|
1437 | Added png_sizeof() and png_convert_size() functions.
|
---|
1438 | Added PNG_SIZE_MAX (maximum value of a png_size_t variable.
|
---|
1439 | Added check in png_malloc_default() for (size_t)size != (png_uint_32)size
|
---|
1440 | which would indicate an overflow.
|
---|
1441 | Changed sPLT failure action from png_error to png_warning and abandon chunk.
|
---|
1442 | Changed sCAL and iCCP failures from png_error to png_warning and abandon.
|
---|
1443 | Added png_get_uint_31(png_ptr, buf) function.
|
---|
1444 | Added PNG_UINT_32_MAX macro.
|
---|
1445 | Renamed PNG_MAX_UINT to PNG_UINT_31_MAX.
|
---|
1446 | Made png_zalloc() issue a png_warning and return NULL on potential
|
---|
1447 | overflow.
|
---|
1448 | Turn on PNG_NO_ZALLOC_ZERO by default in version 1.2.x
|
---|
1449 | Revised "clobber list" in pnggccrd.c so it will compile under gcc-3.4.
|
---|
1450 | Revised Borland portion of png_malloc() to return NULL or issue
|
---|
1451 | png_error() according to setting of PNG_FLAG_MALLOC_NULL_MEM_OK.
|
---|
1452 | Added PNG_NO_SEQUENTIAL_READ_SUPPORTED macro to conditionally remove
|
---|
1453 | sequential read support.
|
---|
1454 | Added some "#if PNG_WRITE_SUPPORTED" blocks.
|
---|
1455 | Added #ifdef to remove some redundancy in png_malloc_default().
|
---|
1456 | Use png_malloc instead of png_zalloc to allocate the palette.
|
---|
1457 |
|
---|
1458 | Version 1.0.16rc1 and 1.2.6rc1 [August 4, 2004]
|
---|
1459 | Fixed buffer overflow vulnerability (CVE-2004-0597) in png_handle_tRNS().
|
---|
1460 | Fixed NULL dereference vulnerability (CVE-2004-0598) in png_handle_iCCP().
|
---|
1461 | Fixed integer overflow vulnerability (CVE-2004-0599) in png_read_png().
|
---|
1462 | Fixed some harmless bugs in png_handle_sBIT, etc, that would cause
|
---|
1463 | duplicate chunk types to go undetected.
|
---|
1464 | Fixed some timestamps in the -config version
|
---|
1465 | Rearranged order of processing of color types in png_handle_tRNS().
|
---|
1466 | Added ROWBYTES macro to calculate rowbytes without integer overflow.
|
---|
1467 | Updated makefile.darwin and removed makefile.macosx from scripts directory.
|
---|
1468 | Imposed default one million column, one-million row limits on the image
|
---|
1469 | dimensions, and added png_set_user_limits() function to override them.
|
---|
1470 | Revised use of PNG_SET_USER_LIMITS_SUPPORTED macro.
|
---|
1471 | Fixed wrong cast of returns from png_get_user_width|height_max().
|
---|
1472 | Changed some "keep the compiler happy" from empty statements to returns,
|
---|
1473 | Revised libpng.txt to remove 1.2.x stuff from the 1.0.x distribution
|
---|
1474 |
|
---|
1475 | Version 1.0.16rc2 and 1.2.6rc2 [August 7, 2004]
|
---|
1476 | Revised makefile.darwin and makefile.solaris. Removed makefile.macosx.
|
---|
1477 | Revised pngtest's png_debug_malloc() to use png_malloc() instead of
|
---|
1478 | png_malloc_default() which is not supposed to be exported.
|
---|
1479 | Fixed off-by-one error in one of the conversions to PNG_ROWBYTES() in
|
---|
1480 | pngpread.c. Bug was introduced in 1.2.6rc1.
|
---|
1481 | Fixed bug in RGB to RGBX transformation introduced in 1.2.6rc1.
|
---|
1482 | Fixed old bug in RGB to Gray transformation.
|
---|
1483 | Fixed problem with 64-bit compilers by casting arguments to abs()
|
---|
1484 | to png_int_32.
|
---|
1485 | Changed "ln -sf" to "ln -f -s" in three makefiles (solaris, sco, so9).
|
---|
1486 | Changed "HANDLE_CHUNK_*" to "PNG_HANDLE_CHUNK_*" (Cosmin)
|
---|
1487 | Added "-@/bin/rm -f $(DL)/$(LIBNAME).so.$(PNGMAJ)" to 15 *NIX makefiles.
|
---|
1488 | Added code to update the row_info->colortype in png_do_read_filler() (MSB).
|
---|
1489 |
|
---|
1490 | Version 1.0.16rc3 and 1.2.6rc3 [August 9, 2004]
|
---|
1491 | Eliminated use of "abs()" in testing cHRM and gAMA values, to avoid
|
---|
1492 | trouble with some 64-bit compilers. Created PNG_OUT_OF_RANGE() macro.
|
---|
1493 | Revised documentation of png_set_keep_unknown_chunks().
|
---|
1494 | Check handle_as_unknown status in pngpread.c, as in pngread.c previously.
|
---|
1495 | Moved "PNG_HANDLE_CHUNK_*" macros out of PNG_INTERNAL section of png.h
|
---|
1496 | Added "rim" definitions for CONST4 and CONST6 in pnggccrd.c
|
---|
1497 |
|
---|
1498 | Version 1.0.16rc4 and 1.2.6rc4 [August 10, 2004]
|
---|
1499 | Fixed mistake in pngtest.c introduced in 1.2.6rc2 (declaration of
|
---|
1500 | "pinfo" was out of place).
|
---|
1501 |
|
---|
1502 | Version 1.0.16rc5 and 1.2.6rc5 [August 10, 2004]
|
---|
1503 | Moved "PNG_HANDLE_CHUNK_*" macros out of PNG_ASSEMBLER_CODE_SUPPORTED
|
---|
1504 | section of png.h where they were inadvertently placed in version rc3.
|
---|
1505 |
|
---|
1506 | Version 1.2.6 and 1.0.16 [August 15, 2004]
|
---|
1507 | Revised pngtest so memory allocation testing is only done when PNG_DEBUG==1.
|
---|
1508 |
|
---|
1509 | Version 1.2.7beta1 [August 26, 2004]
|
---|
1510 | Removed unused pngasmrd.h file.
|
---|
1511 | Removed references to uu.net for archived files. Added references to
|
---|
1512 | PNG Spec (second edition) and the PNG ISO/IEC Standard.
|
---|
1513 | Added "test-dd" target in 15 makefiles, to run pngtest in DESTDIR.
|
---|
1514 | Fixed bug with "optimized window size" in the IDAT datastream, that
|
---|
1515 | causes libpng to write PNG files with incorrect zlib header bytes.
|
---|
1516 |
|
---|
1517 | Version 1.2.7beta2 [August 28, 2004]
|
---|
1518 | Fixed bug with sCAL chunk and big-endian machines (David Munro).
|
---|
1519 | Undid new code added in 1.2.6rc2 to update the color_type in
|
---|
1520 | png_set_filler().
|
---|
1521 | Added png_set_add_alpha() that updates color type.
|
---|
1522 |
|
---|
1523 | Version 1.0.17rc1 and 1.2.7rc1 [September 4, 2004]
|
---|
1524 | Revised png_set_strip_filler() to not remove alpha if color_type has alpha.
|
---|
1525 |
|
---|
1526 | Version 1.2.7 and 1.0.17 [September 12, 2004]
|
---|
1527 | Added makefile.hp64
|
---|
1528 | Changed projects/msvc/png32ms.def to scripts/png32ms.def in makefile.cygwin
|
---|
1529 |
|
---|
1530 | Version 1.2.8beta1 [November 1, 2004]
|
---|
1531 | Fixed bug in png_text_compress() that would fail to complete a large block.
|
---|
1532 | Fixed bug, introduced in libpng-1.2.7, that overruns a buffer during
|
---|
1533 | strip alpha operation in png_do_strip_filler().
|
---|
1534 | Added PNG_1_2_X definition in pngconf.h
|
---|
1535 | Use #ifdef to comment out png_info_init in png.c and png_read_init in
|
---|
1536 | pngread.c (as of 1.3.0)
|
---|
1537 |
|
---|
1538 | Version 1.2.8beta2 [November 2, 2004]
|
---|
1539 | Reduce color_type to a nonalpha type after strip alpha operation in
|
---|
1540 | png_do_strip_filler().
|
---|
1541 |
|
---|
1542 | Version 1.2.8beta3 [November 3, 2004]
|
---|
1543 | Revised definitions of PNG_MAX_UINT_32, PNG_MAX_SIZE, and PNG_MAXSUM
|
---|
1544 |
|
---|
1545 | Version 1.2.8beta4 [November 12, 2004]
|
---|
1546 | Fixed (again) definition of PNG_LIBPNG_VER_DLLNUM in png.h (Cosmin).
|
---|
1547 | Added PNG_LIBPNG_BUILD_PRIVATE in png.h (Cosmin).
|
---|
1548 | Set png_ptr->zstream.data_type to Z_BINARY, to avoid unnecessary detection
|
---|
1549 | of data type in deflate (Cosmin).
|
---|
1550 | Deprecated but continue to support SPECIALBUILD and PRIVATEBUILD in favor of
|
---|
1551 | PNG_LIBPNG_BUILD_SPECIAL_STRING and PNG_LIBPNG_BUILD_PRIVATE_STRING.
|
---|
1552 |
|
---|
1553 | Version 1.2.8beta5 [November 20, 2004]
|
---|
1554 | Use png_ptr->flags instead of png_ptr->transformations to pass
|
---|
1555 | PNG_STRIP_ALPHA info to png_do_strip_filler(), to preserve ABI
|
---|
1556 | compatibility.
|
---|
1557 | Revised handling of SPECIALBUILD, PRIVATEBUILD,
|
---|
1558 | PNG_LIBPNG_BUILD_SPECIAL_STRING and PNG_LIBPNG_BUILD_PRIVATE_STRING.
|
---|
1559 |
|
---|
1560 | Version 1.2.8rc1 [November 24, 2004]
|
---|
1561 | Moved handling of BUILD macros from pngconf.h to png.h
|
---|
1562 | Added definition of PNG_LIBPNG_BASE_TYPE in png.h, inadvertently
|
---|
1563 | omitted from beta5.
|
---|
1564 | Revised scripts/pngw32.rc
|
---|
1565 | Despammed mailing addresses by masking "@" with "at".
|
---|
1566 | Inadvertently installed a supposedly faster test version of pngrutil.c
|
---|
1567 |
|
---|
1568 | Version 1.2.8rc2 [November 26, 2004]
|
---|
1569 | Added two missing "\" in png.h
|
---|
1570 | Change tests in pngread.c and pngpread.c to
|
---|
1571 | if (png_ptr->transformations || (png_ptr->flags&PNG_FLAG_STRIP_ALPHA))
|
---|
1572 | png_do_read_transformations(png_ptr);
|
---|
1573 |
|
---|
1574 | Version 1.2.8rc3 [November 28, 2004]
|
---|
1575 | Reverted pngrutil.c to version libpng-1.2.8beta5.
|
---|
1576 | Added scripts/makefile.elf with supporting code in pngconf.h for symbol
|
---|
1577 | versioning (John Bowler).
|
---|
1578 |
|
---|
1579 | Version 1.2.8rc4 [November 29, 2004]
|
---|
1580 | Added projects/visualc7 (Simon-pierre).
|
---|
1581 |
|
---|
1582 | Version 1.2.8rc5 [November 29, 2004]
|
---|
1583 | Fixed new typo in scripts/pngw32.rc
|
---|
1584 |
|
---|
1585 | Version 1.2.8 [December 3, 2004]
|
---|
1586 | Removed projects/visualc7, added projects/visualc71.
|
---|
1587 |
|
---|
1588 | Version 1.2.9beta1 [February 21, 2006]
|
---|
1589 | Initialized some structure members in pngwutil.c to avoid gcc-4.0.0 complaints
|
---|
1590 | Revised man page and libpng.txt to make it clear that one should not call
|
---|
1591 | png_read_end or png_write_end after png_read_png or png_write_png.
|
---|
1592 | Updated references to png-mng-implement mailing list.
|
---|
1593 | Fixed an incorrect typecast in pngrutil.c
|
---|
1594 | Added PNG_NO_READ_SUPPORTED conditional for making a write-only library.
|
---|
1595 | Added PNG_NO_WRITE_INTERLACING_SUPPORTED conditional.
|
---|
1596 | Optimized alpha-inversion loops in pngwtran.c
|
---|
1597 | Moved test for nonzero gamma outside of png_build_gamma_table() in pngrtran.c
|
---|
1598 | Make sure num_trans is <= 256 before copying data in png_set_tRNS().
|
---|
1599 | Make sure num_palette is <= 256 before copying data in png_set_PLTE().
|
---|
1600 | Interchanged order of write_swap_alpha and write_invert_alpha transforms.
|
---|
1601 | Added parentheses in the definition of PNG_LIBPNG_BUILD_TYPE (Cosmin).
|
---|
1602 | Optimized zlib window flag (CINFO) in contrib/pngsuite/*.png (Cosmin).
|
---|
1603 | Updated scripts/makefile.bc32 for Borland C++ 5.6 (Cosmin).
|
---|
1604 | Exported png_get_uint_32, png_save_uint_32, png_get_uint_16, png_save_uint_16,
|
---|
1605 | png_get_int_32, png_save_int_32, png_get_uint_31 (Cosmin).
|
---|
1606 | Added type cast (png_byte) in png_write_sCAL() (Cosmin).
|
---|
1607 | Fixed scripts/makefile.cygwin (Christian Biesinger, Cosmin).
|
---|
1608 | Default iTXt support was inadvertently enabled.
|
---|
1609 |
|
---|
1610 | Version 1.2.9beta2 [February 21, 2006]
|
---|
1611 | Check for png_rgb_to_gray and png_gray_to_rgb read transformations before
|
---|
1612 | checking for png_read_dither in pngrtran.c
|
---|
1613 | Revised checking of chromaticity limits to accommodate extended RGB
|
---|
1614 | colorspace (John Denker).
|
---|
1615 | Changed line endings in some of the project files to CRLF, even in the
|
---|
1616 | "Unix" tar distributions (Cosmin).
|
---|
1617 | Made png_get_int_32 and png_save_int_32 always available (Cosmin).
|
---|
1618 | Updated scripts/pngos2.def, scripts/pngw32.def and projects/wince/png32ce.def
|
---|
1619 | with the newly exported functions.
|
---|
1620 | Eliminated distributions without the "configure" script.
|
---|
1621 | Updated INSTALL instructions.
|
---|
1622 |
|
---|
1623 | Version 1.2.9beta3 [February 24, 2006]
|
---|
1624 | Fixed CRCRLF line endings in contrib/visupng/VisualPng.dsp
|
---|
1625 | Made libpng.pc respect EXEC_PREFIX (D. P. Kreil, J. Bowler)
|
---|
1626 | Removed reference to pngasmrd.h from Makefile.am
|
---|
1627 | Renamed CHANGES to ChangeLog.
|
---|
1628 | Renamed LICENSE to COPYING.
|
---|
1629 | Renamed ANNOUNCE to NEWS.
|
---|
1630 | Created AUTHORS file.
|
---|
1631 |
|
---|
1632 | Version 1.2.9beta4 [March 3, 2006]
|
---|
1633 | Changed definition of PKGCONFIG from $prefix/lib to $libdir in configure.ac
|
---|
1634 | Reverted to filenames LICENSE and ANNOUNCE; removed AUTHORS and COPYING.
|
---|
1635 | Removed newline from the end of some error and warning messages.
|
---|
1636 | Removed test for sqrt() from configure.ac and configure.
|
---|
1637 | Made swap tables in pngtrans.c PNG_CONST (Carlo Bramix).
|
---|
1638 | Disabled default iTXt support that was inadvertently enabled in
|
---|
1639 | libpng-1.2.9beta1.
|
---|
1640 | Added "OS2" to list of systems that don't need underscores, in pnggccrd.c
|
---|
1641 | Removed libpng version and date from *.c files.
|
---|
1642 |
|
---|
1643 | Version 1.2.9beta5 [March 4, 2006]
|
---|
1644 | Removed trailing blanks from source files.
|
---|
1645 | Put version and date of latest change in each source file, and changed
|
---|
1646 | copyright year accordingly.
|
---|
1647 | More cleanup of configure.ac, Makefile.am, and associated scripts.
|
---|
1648 | Restored scripts/makefile.elf which was inadvertently deleted.
|
---|
1649 |
|
---|
1650 | Version 1.2.9beta6 [March 6, 2006]
|
---|
1651 | Fixed typo (RELEASE) in configuration files.
|
---|
1652 |
|
---|
1653 | Version 1.2.9beta7 [March 7, 2006]
|
---|
1654 | Removed libpng.vers and libpng.sym from libpng12_la_SOURCES in Makefile.am
|
---|
1655 | Fixed inconsistent #ifdef's around png_sig_bytes() and png_set_sCAL_s()
|
---|
1656 | in png.h.
|
---|
1657 | Updated makefile.elf as suggested by debian.
|
---|
1658 | Made cosmetic changes to some makefiles, adding LN_SF and other macros.
|
---|
1659 | Made some makefiles accept "exec_prefix".
|
---|
1660 |
|
---|
1661 | Version 1.2.9beta8 [March 9, 2006]
|
---|
1662 | Fixed some "#if defined (..." which should be "#if defined(..."
|
---|
1663 | Bug introduced in libpng-1.2.8.
|
---|
1664 | Fixed inconsistency in definition of png_default_read_data()
|
---|
1665 | Restored blank that was lost from makefile.sggcc "clean" target in beta7.
|
---|
1666 | Revised calculation of "current" and "major" for irix in ltmain.sh
|
---|
1667 | Changed "mkdir" to "MKDIR_P" in some makefiles.
|
---|
1668 | Separated PNG_EXPAND and PNG_EXPAND_tRNS.
|
---|
1669 | Added png_set_expand_gray_1_2_4_to_8() and deprecated
|
---|
1670 | png_set_gray_1_2_4_to_8() which also expands tRNS to alpha.
|
---|
1671 |
|
---|
1672 | Version 1.2.9beta9 [March 10, 2006]
|
---|
1673 | Include "config.h" in pngconf.h when available.
|
---|
1674 | Added some checks for NULL png_ptr or NULL info_ptr (timeless)
|
---|
1675 |
|
---|
1676 | Version 1.2.9beta10 [March 20, 2006]
|
---|
1677 | Removed extra CR from contrib/visualpng/VisualPng.dsw (Cosmin)
|
---|
1678 | Made pnggccrd.c PIC-compliant (Christian Aichinger).
|
---|
1679 | Added makefile.mingw (Wolfgang Glas).
|
---|
1680 | Revised pngconf.h MMX checking.
|
---|
1681 |
|
---|
1682 | Version 1.2.9beta11 [March 22, 2006]
|
---|
1683 | Fixed out-of-order declaration in pngwrite.c that was introduced in beta9
|
---|
1684 | Simplified some makefiles by using LIBSO, LIBSOMAJ, and LIBSOVER macros.
|
---|
1685 |
|
---|
1686 | Version 1.2.9rc1 [March 31, 2006]
|
---|
1687 | Defined PNG_USER_PRIVATEBUILD when including "pngusr.h" (Cosmin).
|
---|
1688 | Removed nonsensical assertion check from pngtest.c (Cosmin).
|
---|
1689 |
|
---|
1690 | Version 1.2.9 [April 14, 2006]
|
---|
1691 | Revised makefile.beos and added "none" selector in ltmain.sh
|
---|
1692 |
|
---|
1693 | Version 1.2.10beta1 [April 15, 2006]
|
---|
1694 | Renamed "config.h" to "png_conf.h" and revised Makefile.am to add
|
---|
1695 | -DPNG_BUILDING_LIBPNG to compile directive, and modified pngconf.h
|
---|
1696 | to include png_conf.h only when PNG_BUILDING_LIBPNG is defined.
|
---|
1697 |
|
---|
1698 | Version 1.2.10beta2 [April 15, 2006]
|
---|
1699 | Manually updated Makefile.in and configure. Changed png_conf.h.in
|
---|
1700 | back to config.h.
|
---|
1701 |
|
---|
1702 | Version 1.2.10beta3 [April 15, 2006]
|
---|
1703 | Change png_conf.h back to config.h in pngconf.h.
|
---|
1704 |
|
---|
1705 | Version 1.2.10beta4 [April 16, 2006]
|
---|
1706 | Change PNG_BUILDING_LIBPNG to PNG_CONFIGURE_LIBPNG in config/Makefile*.
|
---|
1707 |
|
---|
1708 | Version 1.2.10beta5 [April 16, 2006]
|
---|
1709 | Added a configure check for compiling assembler code in pnggccrd.c
|
---|
1710 |
|
---|
1711 | Version 1.2.10beta6 [April 17, 2006]
|
---|
1712 | Revised the configure check for pnggccrd.c
|
---|
1713 | Moved -DPNG_CONFIGURE_LIBPNG into @LIBPNG_DEFINES@
|
---|
1714 | Added @LIBPNG_DEFINES@ to arguments when building libpng.sym
|
---|
1715 |
|
---|
1716 | Version 1.2.10beta7 [April 18, 2006]
|
---|
1717 | Change "exec_prefix=$prefix" to "exec_prefix=$(prefix)" in makefiles.
|
---|
1718 |
|
---|
1719 | Version 1.2.10rc1 [April 19, 2006]
|
---|
1720 | Ensure pngconf.h doesn't define both PNG_USE_PNGGCCRD and PNG_USE_PNGVCRD
|
---|
1721 | Fixed "LN_FS" typo in makefile.sco and makefile.solaris.
|
---|
1722 |
|
---|
1723 | Version 1.2.10rc2 [April 20, 2006]
|
---|
1724 | Added a backslash between -DPNG_CONFIGURE_LIBPNG and -DPNG_NO_ASSEMBLER_CODE
|
---|
1725 | in configure.ac and configure
|
---|
1726 | Made the configure warning about versioned symbols less arrogant.
|
---|
1727 |
|
---|
1728 | Version 1.2.10rc3 [April 21, 2006]
|
---|
1729 | Added a note in libpng.txt that png_set_sig_bytes(8) can be used when
|
---|
1730 | writing an embedded PNG without the 8-byte signature.
|
---|
1731 | Revised makefiles and configure to avoid making links to libpng.so.*
|
---|
1732 |
|
---|
1733 | Version 1.2.10 [April 23, 2006]
|
---|
1734 | Reverted configure to "rc2" state.
|
---|
1735 |
|
---|
1736 | Version 1.2.11beta1 [May 31, 2006]
|
---|
1737 | scripts/libpng.pc.in contained "configure" style version info and would
|
---|
1738 | not work with makefiles.
|
---|
1739 | The shared-library makefiles were linking to libpng.so.0 instead of
|
---|
1740 | libpng.so.3 compatibility as the library.
|
---|
1741 |
|
---|
1742 | Version 1.2.11beta2 [June 2, 2006]
|
---|
1743 | Increased sprintf buffer from 50 to 52 chars in pngrutil.c to avoid
|
---|
1744 | buffer overflow.
|
---|
1745 | Fixed bug in example.c (png_set_palette_rgb -> png_set_palette_to_rgb)
|
---|
1746 |
|
---|
1747 | Version 1.2.11beta3 [June 5, 2006]
|
---|
1748 | Prepended "#! /bin/sh" to ltmail.sh and contrib/pngminus/*.sh (Cosmin).
|
---|
1749 | Removed the accidental leftover Makefile.in~ (Cosmin).
|
---|
1750 | Avoided potential buffer overflow and optimized buffer in
|
---|
1751 | png_write_sCAL(), png_write_sCAL_s() (Cosmin).
|
---|
1752 | Removed the include directories and libraries from CFLAGS and LDFLAGS
|
---|
1753 | in scripts/makefile.gcc (Nelson A. de Oliveira, Cosmin).
|
---|
1754 |
|
---|
1755 | Version 1.2.11beta4 [June 6, 2006]
|
---|
1756 | Allow zero-length IDAT chunks after the entire zlib datastream, but not
|
---|
1757 | after another intervening chunk type.
|
---|
1758 |
|
---|
1759 | Version 1.0.19rc1, 1.2.11rc1 [June 13, 2006]
|
---|
1760 | Deleted extraneous square brackets from [config.h] in configure.ac
|
---|
1761 |
|
---|
1762 | Version 1.0.19rc2, 1.2.11rc2 [June 14, 2006]
|
---|
1763 | Added prototypes for PNG_INCH_CONVERSIONS functions to png.h
|
---|
1764 | Revised INSTALL and autogen.sh
|
---|
1765 | Fixed typo in several makefiles (-W1 should be -Wl)
|
---|
1766 | Added typedef for png_int_32 and png_uint_32 on 64-bit systems.
|
---|
1767 |
|
---|
1768 | Version 1.0.19rc3, 1.2.11rc3 [June 15, 2006]
|
---|
1769 | Removed the new typedefs for 64-bit systems (delay until version 1.4.0)
|
---|
1770 | Added one zero element to png_gamma_shift[] array in pngrtran.c to avoid
|
---|
1771 | reading out of bounds.
|
---|
1772 |
|
---|
1773 | Version 1.0.19rc4, 1.2.11rc4 [June 15, 2006]
|
---|
1774 | Really removed the new typedefs for 64-bit systems.
|
---|
1775 |
|
---|
1776 | Version 1.0.19rc5, 1.2.11rc5 [June 22, 2006]
|
---|
1777 | Removed png_sig_bytes entry from scripts/pngw32.def
|
---|
1778 |
|
---|
1779 | Version 1.0.19, 1.2.11 [June 26, 2006]
|
---|
1780 | None.
|
---|
1781 |
|
---|
1782 | Version 1.0.20, 1.2.12 [June 27, 2006]
|
---|
1783 | Really increased sprintf buffer from 50 to 52 chars in pngrutil.c to avoid
|
---|
1784 | buffer overflow.
|
---|
1785 |
|
---|
1786 | Version 1.2.13beta1 [October 2, 2006]
|
---|
1787 | Removed AC_FUNC_MALLOC from configure.ac
|
---|
1788 | Work around Intel-Mac compiler bug by setting PNG_NO_MMX_CODE in pngconf.h
|
---|
1789 | Change "logical" to "bitwise" throughout documentation.
|
---|
1790 | Detect and fix attempt to write wrong iCCP profile length (CVE-2006-7244)
|
---|
1791 |
|
---|
1792 | Version 1.0.21, 1.2.13 [November 14, 2006]
|
---|
1793 | Fix potential buffer overflow in sPLT chunk handler.
|
---|
1794 | Fix Makefile.am to not try to link to noexistent files.
|
---|
1795 | Check all exported functions for NULL png_ptr.
|
---|
1796 |
|
---|
1797 | Version 1.2.14beta1 [November 17, 2006]
|
---|
1798 | Relocated three misplaced tests for NULL png_ptr.
|
---|
1799 | Built Makefile.in with automake-1.9.6 instead of 1.9.2.
|
---|
1800 | Build configure with autoconf-2.60 instead of 2.59
|
---|
1801 |
|
---|
1802 | Version 1.2.14beta2 [November 17, 2006]
|
---|
1803 | Added some typecasts in png_zalloc().
|
---|
1804 |
|
---|
1805 | Version 1.2.14rc1 [November 20, 2006]
|
---|
1806 | Changed "strtod" to "png_strtod" in pngrutil.c
|
---|
1807 |
|
---|
1808 | Version 1.0.22, 1.2.14 [November 27, 2006]
|
---|
1809 | Added missing "$(srcdir)" in Makefile.am and Makefile.in
|
---|
1810 |
|
---|
1811 | Version 1.2.15beta1 [December 3, 2006]
|
---|
1812 | Generated configure with autoconf-2.61 instead of 2.60
|
---|
1813 | Revised configure.ac to update libpng.pc and libpng-config.
|
---|
1814 |
|
---|
1815 | Version 1.2.15beta2 [December 3, 2006]
|
---|
1816 | Always export MMX asm functions, just stubs if not building pnggccrd.c
|
---|
1817 |
|
---|
1818 | Version 1.2.15beta3 [December 4, 2006]
|
---|
1819 | Add "png_bytep" typecast to profile while calculating length in pngwutil.c
|
---|
1820 |
|
---|
1821 | Version 1.2.15beta4 [December 7, 2006]
|
---|
1822 | Added scripts/CMakeLists.txt
|
---|
1823 | Changed PNG_NO_ASSEMBLER_CODE to PNG_NO_MMX_CODE in scripts, like 1.4.0beta
|
---|
1824 |
|
---|
1825 | Version 1.2.15beta5 [December 7, 2006]
|
---|
1826 | Changed some instances of PNG_ASSEMBLER_* to PNG_MMX_* in pnggccrd.c
|
---|
1827 | Revised scripts/CMakeLists.txt
|
---|
1828 |
|
---|
1829 | Version 1.2.15beta6 [December 13, 2006]
|
---|
1830 | Revised scripts/CMakeLists.txt and configure.ac
|
---|
1831 |
|
---|
1832 | Version 1.2.15rc1 [December 18, 2006]
|
---|
1833 | Revised scripts/CMakeLists.txt
|
---|
1834 |
|
---|
1835 | Version 1.2.15rc2 [December 21, 2006]
|
---|
1836 | Added conditional #undef jmpbuf in pngtest.c to undo #define in AIX headers.
|
---|
1837 | Added scripts/makefile.nommx
|
---|
1838 |
|
---|
1839 | Version 1.2.15rc3 [December 25, 2006]
|
---|
1840 | Fixed shared library numbering error that was introduced in 1.2.15beta6.
|
---|
1841 |
|
---|
1842 | Version 1.2.15rc4 [December 27, 2006]
|
---|
1843 | Fixed handling of rgb_to_gray when png_ptr->color.gray isn't set.
|
---|
1844 |
|
---|
1845 | Version 1.2.15rc5 [December 31, 2006]
|
---|
1846 | Revised handling of rgb_to_gray.
|
---|
1847 |
|
---|
1848 | Version 1.2.15 [January 5, 2007]
|
---|
1849 | Added some (unsigned long) typecasts in pngtest.c to avoid printing errors.
|
---|
1850 |
|
---|
1851 | Version 1.2.16beta1 [January 6, 2007]
|
---|
1852 | Fix bugs in makefile.nommx
|
---|
1853 |
|
---|
1854 | Version 1.2.16beta2 [January 16, 2007]
|
---|
1855 | Revised scripts/CMakeLists.txt
|
---|
1856 |
|
---|
1857 | Version 1.2.16 [January 31, 2007]
|
---|
1858 | No changes.
|
---|
1859 |
|
---|
1860 | Version 1.2.17beta1 [March 6, 2007]
|
---|
1861 | Revised scripts/CMakeLists.txt to install both shared and static libraries.
|
---|
1862 | Deleted a redundant line from pngset.c.
|
---|
1863 |
|
---|
1864 | Version 1.2.17beta2 [April 26, 2007]
|
---|
1865 | Relocated misplaced test for png_ptr == NULL in pngpread.c
|
---|
1866 | Change "==" to "&" for testing PNG_RGB_TO_GRAY_ERR & PNG_RGB_TO_GRAY_WARN
|
---|
1867 | flags.
|
---|
1868 | Changed remaining instances of PNG_ASSEMBLER_* to PNG_MMX_*
|
---|
1869 | Added pngerror() when write_IHDR fails in deflateInit2().
|
---|
1870 | Added "const" to some array declarations.
|
---|
1871 | Mention examples of libpng usage in the libpng*.txt and libpng.3 documents.
|
---|
1872 |
|
---|
1873 | Version 1.2.17rc1 [May 4, 2007]
|
---|
1874 | No changes.
|
---|
1875 |
|
---|
1876 | Version 1.2.17rc2 [May 8, 2007]
|
---|
1877 | Moved several PNG_HAVE_* macros out of PNG_INTERNAL because applications
|
---|
1878 | calling set_unknown_chunk_location() need them.
|
---|
1879 | Changed transformation flag from PNG_EXPAND_tRNS to PNG_EXPAND in
|
---|
1880 | png_set_expand_gray_1_2_4_to_8().
|
---|
1881 | Added png_ptr->unknown_chunk to hold working unknown chunk data, so it
|
---|
1882 | can be free'ed in case of error. Revised unknown chunk handling in
|
---|
1883 | pngrutil.c and pngpread.c to use this structure.
|
---|
1884 |
|
---|
1885 | Version 1.2.17rc3 [May 8, 2007]
|
---|
1886 | Revised symbol-handling in configure script.
|
---|
1887 |
|
---|
1888 | Version 1.2.17rc4 [May 10, 2007]
|
---|
1889 | Revised unknown chunk handling to avoid storing unknown critical chunks.
|
---|
1890 |
|
---|
1891 | Version 1.0.25 [May 15, 2007]
|
---|
1892 | Version 1.2.17 [May 15, 2007]
|
---|
1893 | Added "png_ptr->num_trans=0" before error return in png_handle_tRNS,
|
---|
1894 | to eliminate a vulnerability (CVE-2007-2445, CERT VU#684664)
|
---|
1895 |
|
---|
1896 | Version 1.0.26 [May 15, 2007]
|
---|
1897 | Version 1.2.18 [May 15, 2007]
|
---|
1898 | Reverted the libpng-1.2.17rc3 change to symbol-handling in configure script
|
---|
1899 |
|
---|
1900 | Version 1.2.19beta1 [May 18, 2007]
|
---|
1901 | Changed "const static" to "static PNG_CONST" everywhere, mostly undoing
|
---|
1902 | change of libpng-1.2.17beta2. Changed other "const" to "PNG_CONST"
|
---|
1903 | Changed some handling of unused parameters, to avoid compiler warnings.
|
---|
1904 | "if (unused == NULL) return;" becomes "unused = unused".
|
---|
1905 |
|
---|
1906 | Version 1.2.19beta2 [May 18, 2007]
|
---|
1907 | Only use the valid bits of tRNS value in png_do_expand() (Brian Cartier)
|
---|
1908 |
|
---|
1909 | Version 1.2.19beta3 [May 19, 2007]
|
---|
1910 | Add some "png_byte" typecasts in png_check_keyword() and write new_key
|
---|
1911 | instead of key in zTXt chunk (Kevin Ryde).
|
---|
1912 |
|
---|
1913 | Version 1.2.19beta4 [May 21, 2007]
|
---|
1914 | Add png_snprintf() function and use it in place of sprint() for improved
|
---|
1915 | defense against buffer overflows.
|
---|
1916 |
|
---|
1917 | Version 1.2.19beta5 [May 21, 2007]
|
---|
1918 | Fixed png_handle_tRNS() to only use the valid bits of tRNS value.
|
---|
1919 | Changed handling of more unused parameters, to avoid compiler warnings.
|
---|
1920 | Removed some PNG_CONST in pngwutil.c to avoid compiler warnings.
|
---|
1921 |
|
---|
1922 | Version 1.2.19beta6 [May 22, 2007]
|
---|
1923 | Added some #ifdef PNG_MMX_CODE_SUPPORTED where needed in pngvcrd.c
|
---|
1924 | Added a special "_MSC_VER" case that defines png_snprintf to _snprintf
|
---|
1925 |
|
---|
1926 | Version 1.2.19beta7 [May 22, 2007]
|
---|
1927 | Squelched png_squelch_warnings() in pnggccrd.c and added
|
---|
1928 | an #ifdef PNG_MMX_CODE_SUPPORTED block around the declarations that caused
|
---|
1929 | the warnings that png_squelch_warnings was squelching.
|
---|
1930 |
|
---|
1931 | Version 1.2.19beta8 [May 22, 2007]
|
---|
1932 | Removed __MMX__ from test in pngconf.h.
|
---|
1933 |
|
---|
1934 | Version 1.2.19beta9 [May 23, 2007]
|
---|
1935 | Made png_squelch_warnings() available via PNG_SQUELCH_WARNINGS macro.
|
---|
1936 | Revised png_squelch_warnings() so it might work.
|
---|
1937 | Updated makefile.sgcc and makefile.solaris; added makefile.solaris-x86.
|
---|
1938 |
|
---|
1939 | Version 1.2.19beta10 [May 24, 2007]
|
---|
1940 | Resquelched png_squelch_warnings(), use "__attribute__((used))" instead.
|
---|
1941 |
|
---|
1942 | Version 1.4.0beta1 [April 20, 2006]
|
---|
1943 | Enabled iTXt support (changes png_struct, thus requires so-number change).
|
---|
1944 | Cleaned up PNG_ASSEMBLER_CODE_SUPPORTED vs PNG_MMX_CODE_SUPPORTED
|
---|
1945 | Eliminated PNG_1_0_X and PNG_1_2_X macros.
|
---|
1946 | Removed deprecated functions png_read_init, png_write_init, png_info_init,
|
---|
1947 | png_permit_empty_plte, png_set_gray_1_2_4_to_8, png_check_sig, and
|
---|
1948 | removed the deprecated macro PNG_MAX_UINT.
|
---|
1949 | Moved "PNG_INTERNAL" parts of png.h and pngconf.h into pngintrn.h
|
---|
1950 | Removed many WIN32_WCE #ifdefs (Cosmin).
|
---|
1951 | Reduced dependency on C-runtime library when on Windows (Simon-Pierre)
|
---|
1952 | Replaced sprintf() with png_sprintf() (Simon-Pierre)
|
---|
1953 |
|
---|
1954 | Version 1.4.0beta2 [April 20, 2006]
|
---|
1955 | Revised makefiles and configure to avoid making links to libpng.so.*
|
---|
1956 | Moved some leftover MMX-related defines from pngconf.h to pngintrn.h
|
---|
1957 | Updated scripts/pngos2.def, pngw32.def, and projects/wince/png32ce.def
|
---|
1958 |
|
---|
1959 | Version 1.4.0beta3 [May 10, 2006]
|
---|
1960 | Updated scripts/pngw32.def to comment out MMX functions.
|
---|
1961 | Added PNG_NO_GET_INT_32 and PNG_NO_SAVE_INT_32 macros.
|
---|
1962 | Scripts/libpng.pc.in contained "configure" style version info and would
|
---|
1963 | not work with makefiles.
|
---|
1964 | Revised pngconf.h and added pngconf.h.in, so makefiles and configure can
|
---|
1965 | pass defines to libpng and applications.
|
---|
1966 |
|
---|
1967 | Version 1.4.0beta4 [May 11, 2006]
|
---|
1968 | Revised configure.ac, Makefile.am, and many of the makefiles to write
|
---|
1969 | their defines in pngconf.h.
|
---|
1970 |
|
---|
1971 | Version 1.4.0beta5 [May 15, 2006]
|
---|
1972 | Added a missing semicolon in Makefile.am and Makefile.in
|
---|
1973 | Deleted extraneous square brackets from configure.ac
|
---|
1974 |
|
---|
1975 | Version 1.4.0beta6 [June 2, 2006]
|
---|
1976 | Increased sprintf buffer from 50 to 52 chars in pngrutil.c to avoid
|
---|
1977 | buffer overflow.
|
---|
1978 | Changed sonum from 0 to 1.
|
---|
1979 | Removed unused prototype for png_check_sig() from png.h
|
---|
1980 |
|
---|
1981 | Version 1.4.0beta7 [June 16, 2006]
|
---|
1982 | Exported png_write_sig (Cosmin).
|
---|
1983 | Optimized buffer in png_handle_cHRM() (Cosmin).
|
---|
1984 | Set pHYs = 2835 x 2835 pixels per meter, and added
|
---|
1985 | sCAL = 0.352778e-3 x 0.352778e-3 meters, in pngtest.png (Cosmin).
|
---|
1986 | Added png_set_benign_errors(), png_benign_error(), png_chunk_benign_error().
|
---|
1987 | Added typedef for png_int_32 and png_uint_32 on 64-bit systems.
|
---|
1988 | Added "(unsigned long)" typecast on png_uint_32 variables in printf lists.
|
---|
1989 |
|
---|
1990 | Version 1.4.0beta8 [June 22, 2006]
|
---|
1991 | Added demonstration of user chunk support in pngtest.c, to support the
|
---|
1992 | public sTER chunk and a private vpAg chunk.
|
---|
1993 |
|
---|
1994 | Version 1.4.0beta9 [July 3, 2006]
|
---|
1995 | Removed ordinals from scripts/pngw32.def and removed png_info_int and
|
---|
1996 | png_set_gray_1_2_4_to_8 entries.
|
---|
1997 | Inline call of png_get_uint_32() in png_get_uint_31().
|
---|
1998 | Use png_get_uint_31() to get vpAg width and height in pngtest.c
|
---|
1999 | Removed WINCE and Netware projects.
|
---|
2000 | Removed standalone Y2KINFO file.
|
---|
2001 |
|
---|
2002 | Version 1.4.0beta10 [July 12, 2006]
|
---|
2003 | Eliminated automatic copy of pngconf.h to pngconf.h.in from configure and
|
---|
2004 | some makefiles, because it was not working reliably. Instead, distribute
|
---|
2005 | pngconf.h.in along with pngconf.h and cause configure and some of the
|
---|
2006 | makefiles to update pngconf.h from pngconf.h.in.
|
---|
2007 | Added pngconf.h to DEPENDENCIES in Makefile.am
|
---|
2008 |
|
---|
2009 | Version 1.4.0beta11 [August 19, 2006]
|
---|
2010 | Removed AC_FUNC_MALLOC from configure.ac.
|
---|
2011 | Added a warning when writing iCCP profile with mismatched profile length.
|
---|
2012 | Patched pnggccrd.c to assemble on x86_64 platforms.
|
---|
2013 | Moved chunk header reading into a separate function png_read_chunk_header()
|
---|
2014 | in pngrutil.c. The chunk header (len+sig) is now serialized in a single
|
---|
2015 | operation (Cosmin).
|
---|
2016 | Implemented support for I/O states. Added png_ptr member io_state, and
|
---|
2017 | functions png_get_io_chunk_name() and png_get_io_state() in pngget.c
|
---|
2018 | (Cosmin).
|
---|
2019 | Added png_get_io_chunk_name and png_get_io_state to scripts/*.def (Cosmin).
|
---|
2020 | Renamed scripts/pngw32.* to scripts/pngwin.* (Cosmin).
|
---|
2021 | Removed the include directories and libraries from CFLAGS and LDFLAGS
|
---|
2022 | in scripts/makefile.gcc (Cosmin).
|
---|
2023 | Used png_save_uint_32() to set vpAg width and height in pngtest.c (Cosmin).
|
---|
2024 | Cast to proper type when getting/setting vpAg units in pngtest.c (Cosmin).
|
---|
2025 | Added pngintrn.h to the Visual C++ projects (Cosmin).
|
---|
2026 | Removed scripts/list (Cosmin).
|
---|
2027 | Updated copyright year in scripts/pngwin.def (Cosmin).
|
---|
2028 | Removed PNG_TYPECAST_NULL and used standard NULL consistently (Cosmin).
|
---|
2029 | Disallowed the user to redefine png_size_t, and enforced a consistent use
|
---|
2030 | of png_size_t across libpng (Cosmin).
|
---|
2031 | Changed the type of png_ptr->rowbytes, PNG_ROWBYTES() and friends
|
---|
2032 | to png_size_t (Cosmin).
|
---|
2033 | Removed png_convert_size() and replaced png_sizeof with sizeof (Cosmin).
|
---|
2034 | Removed some unnecessary type casts (Cosmin).
|
---|
2035 | Changed prototype of png_get_compression_buffer_size() and
|
---|
2036 | png_set_compression_buffer_size() to work with png_size_t instead of
|
---|
2037 | png_uint_32 (Cosmin).
|
---|
2038 | Removed png_memcpy_check() and png_memset_check() (Cosmin).
|
---|
2039 | Fixed a typo (png_byte --> png_bytep) in libpng.3 and libpng.txt (Cosmin).
|
---|
2040 | Clarified that png_zalloc() does not clear the allocated memory,
|
---|
2041 | and png_zalloc() and png_zfree() cannot be PNGAPI (Cosmin).
|
---|
2042 | Renamed png_mem_size_t to png_alloc_size_t, fixed its definition in
|
---|
2043 | pngconf.h, and used it in all memory allocation functions (Cosmin).
|
---|
2044 | Renamed pngintrn.h to pngpriv.h, added a comment at the top of the file
|
---|
2045 | mentioning that the symbols declared in that file are private, and
|
---|
2046 | updated the scripts and the Visual C++ projects accordingly (Cosmin).
|
---|
2047 | Removed circular references between pngconf.h and pngconf.h.in in
|
---|
2048 | scripts/makefile.vc*win32 (Cosmin).
|
---|
2049 | Removing trailing '.' from the warning and error messages (Cosmin).
|
---|
2050 | Added pngdefs.h that is built by makefile or configure, instead of
|
---|
2051 | pngconf.h.in (Glenn).
|
---|
2052 | Detect and fix attempt to write wrong iCCP profile length.
|
---|
2053 |
|
---|
2054 | Version 1.4.0beta12 [October 19, 2006]
|
---|
2055 | Changed "logical" to "bitwise" in the documentation.
|
---|
2056 | Work around Intel-Mac compiler bug by setting PNG_NO_MMX_CODE in pngconf.h
|
---|
2057 | Add a typecast to stifle compiler warning in pngrutil.c
|
---|
2058 |
|
---|
2059 | Version 1.4.0beta13 [November 10, 2006]
|
---|
2060 | Fix potential buffer overflow in sPLT chunk handler.
|
---|
2061 | Fix Makefile.am to not try to link to noexistent files.
|
---|
2062 |
|
---|
2063 | Version 1.4.0beta14 [November 15, 2006]
|
---|
2064 | Check all exported functions for NULL png_ptr.
|
---|
2065 |
|
---|
2066 | Version 1.4.0beta15 [November 17, 2006]
|
---|
2067 | Relocated two misplaced tests for NULL png_ptr.
|
---|
2068 | Built Makefile.in with automake-1.9.6 instead of 1.9.2.
|
---|
2069 | Build configure with autoconf-2.60 instead of 2.59
|
---|
2070 | Add "install: all" in Makefile.am so "configure; make install" will work.
|
---|
2071 |
|
---|
2072 | Version 1.4.0beta16 [November 17, 2006]
|
---|
2073 | Added a typecast in png_zalloc().
|
---|
2074 |
|
---|
2075 | Version 1.4.0beta17 [December 4, 2006]
|
---|
2076 | Changed "new_key[79] = '\0';" to "(*new_key)[79] = '\0';" in pngwutil.c
|
---|
2077 | Add "png_bytep" typecast to profile while calculating length in pngwutil.c
|
---|
2078 |
|
---|
2079 | Version 1.4.0beta18 [December 7, 2006]
|
---|
2080 | Added scripts/CMakeLists.txt
|
---|
2081 |
|
---|
2082 | Version 1.4.0beta19 [May 16, 2007]
|
---|
2083 | Revised scripts/CMakeLists.txt
|
---|
2084 | Rebuilt configure and Makefile.in with newer tools.
|
---|
2085 | Added conditional #undef jmpbuf in pngtest.c to undo #define in AIX headers.
|
---|
2086 | Added scripts/makefile.nommx
|
---|
2087 |
|
---|
2088 | Version 1.4.0beta20 [July 9, 2008]
|
---|
2089 | Moved several PNG_HAVE_* macros from pngpriv.h to png.h because applications
|
---|
2090 | calling set_unknown_chunk_location() need them.
|
---|
2091 | Moved several macro definitions from pngpriv.h to pngconf.h
|
---|
2092 | Merge with changes to the 1.2.X branch, as of 1.2.30beta04.
|
---|
2093 | Deleted all use of the MMX assembler code and Intel-licensed optimizations.
|
---|
2094 | Revised makefile.mingw
|
---|
2095 |
|
---|
2096 | Version 1.4.0beta21 [July 21, 2008]
|
---|
2097 | Moved local array "chunkdata" from pngrutil.c to the png_struct, so
|
---|
2098 | it will be freed by png_read_destroy() in case of a read error (Kurt
|
---|
2099 | Christensen).
|
---|
2100 |
|
---|
2101 | Version 1.4.0beta22 [July 21, 2008]
|
---|
2102 | Change "purpose" and "buffer" to png_ptr->chunkdata to avoid memory leaking.
|
---|
2103 |
|
---|
2104 | Version 1.4.0beta23 [July 22, 2008]
|
---|
2105 | Change "chunkdata = NULL" to "png_ptr->chunkdata = NULL" several places in
|
---|
2106 | png_decompress_chunk().
|
---|
2107 |
|
---|
2108 | Version 1.4.0beta24 [July 25, 2008]
|
---|
2109 | Change all remaining "chunkdata" to "png_ptr->chunkdata" in
|
---|
2110 | png_decompress_chunk(), and remove "chunkdata" from parameter list.
|
---|
2111 | Put a call to png_check_chunk_name() in png_read_chunk_header().
|
---|
2112 | Revised png_check_chunk_name() to reject a name with a lowercase 3rd byte.
|
---|
2113 | Removed two calls to png_check_chunk_name() occurring later in the process.
|
---|
2114 | Define PNG_NO_ERROR_NUMBERS by default in pngconf.h
|
---|
2115 |
|
---|
2116 | Version 1.4.0beta25 [July 30, 2008]
|
---|
2117 | Added a call to png_check_chunk_name() in pngpread.c
|
---|
2118 | Reverted png_check_chunk_name() to accept a name with a lowercase 3rd byte.
|
---|
2119 | Added png_push_have_buffer() function to pngpread.c
|
---|
2120 | Eliminated PNG_BIG_ENDIAN_SUPPORTED and associated png_get_* macros.
|
---|
2121 | Made inline expansion of png_get_*() optional with PNG_USE_READ_MACROS.
|
---|
2122 | Eliminated all PNG_USELESS_TESTS and PNG_CORRECT_PALETTE_SUPPORTED code.
|
---|
2123 | Synced contrib directory and configure files with libpng-1.2.30beta06.
|
---|
2124 | Eliminated no-longer-used pngdefs.h (but it's still built in the makefiles)
|
---|
2125 | Relocated a misplaced "#endif /* PNG_NO_WRITE_FILTER */" in pngwutil.c
|
---|
2126 |
|
---|
2127 | Version 1.4.0beta26 [August 4, 2008]
|
---|
2128 | Removed png_push_have_buffer() function in pngpread.c. It increased the
|
---|
2129 | compiled library size slightly.
|
---|
2130 | Changed "-Wall" to "-W -Wall" in the CFLAGS in all makefiles (Cosmin Truta)
|
---|
2131 | Declared png_ptr "volatile" in pngread.c and pngwrite.c to avoid warnings.
|
---|
2132 | Updated contrib/visupng/cexcept.h to version 2.0.1
|
---|
2133 | Added PNG_LITERAL_CHARACTER macros for #, [, and ].
|
---|
2134 |
|
---|
2135 | Version 1.4.0beta27 [August 5, 2008]
|
---|
2136 | Revised usage of PNG_LITERAL_SHARP in pngerror.c.
|
---|
2137 | Moved newline character from individual png_debug messages into the
|
---|
2138 | png_debug macros.
|
---|
2139 | Allow user to #define their own png_debug, png_debug1, and png_debug2.
|
---|
2140 |
|
---|
2141 | Version 1.4.0beta28 [August 5, 2008]
|
---|
2142 | Revised usage of PNG_LITERAL_SHARP in pngerror.c.
|
---|
2143 | Added PNG_STRING_NEWLINE macro
|
---|
2144 |
|
---|
2145 | Version 1.4.0beta29 [August 9, 2008]
|
---|
2146 | Revised usage of PNG_STRING_NEWLINE to work on non-ISO compilers.
|
---|
2147 | Added PNG_STRING_COPYRIGHT macro.
|
---|
2148 | Added non-ISO versions of png_debug macros.
|
---|
2149 |
|
---|
2150 | Version 1.4.0beta30 [August 14, 2008]
|
---|
2151 | Added premultiplied alpha feature (Volker Wiendl).
|
---|
2152 |
|
---|
2153 | Version 1.4.0beta31 [August 18, 2008]
|
---|
2154 | Moved png_set_premultiply_alpha from pngtrans.c to pngrtran.c
|
---|
2155 | Removed extra crc check at the end of png_handle_cHRM(). Bug introduced
|
---|
2156 | in libpng-1.4.0beta20.
|
---|
2157 |
|
---|
2158 | Version 1.4.0beta32 [August 19, 2008]
|
---|
2159 | Added PNG_WRITE_FLUSH_SUPPORTED block around new png_flush() call.
|
---|
2160 | Revised PNG_NO_STDIO version of png_write_flush()
|
---|
2161 |
|
---|
2162 | Version 1.4.0beta33 [August 20, 2008]
|
---|
2163 | Added png_get|set_chunk_cache_max() to limit the total number of sPLT,
|
---|
2164 | text, and unknown chunks that can be stored.
|
---|
2165 |
|
---|
2166 | Version 1.4.0beta34 [September 6, 2008]
|
---|
2167 | Shortened tIME_string to 29 bytes in pngtest.c
|
---|
2168 | Fixed off-by-one error introduced in png_push_read_zTXt() function in
|
---|
2169 | libpng-1.2.30beta04/pngpread.c (Harald van Dijk)
|
---|
2170 |
|
---|
2171 | Version 1.4.0beta35 [October 6, 2008]
|
---|
2172 | Changed "trans_values" to "trans_color".
|
---|
2173 | Changed so-number from 0 to 14. Some OS do not like 0.
|
---|
2174 | Revised makefile.darwin to fix shared library numbering.
|
---|
2175 | Change png_set_gray_1_2_4_to_8() to png_set_expand_gray_1_2_4_to_8()
|
---|
2176 | in example.c (debian bug report)
|
---|
2177 |
|
---|
2178 | Version 1.4.0beta36 [October 25, 2008]
|
---|
2179 | Sync with tEXt vulnerability fix in libpng-1.2.33rc02.
|
---|
2180 |
|
---|
2181 | Version 1.4.0beta37 [November 13, 2008]
|
---|
2182 | Added png_check_cHRM in png.c and moved checking from pngget.c, pngrutil.c,
|
---|
2183 | and pngwrite.c
|
---|
2184 |
|
---|
2185 | Version 1.4.0beta38 [November 22, 2008]
|
---|
2186 | Added check for zero-area RGB cHRM triangle in png_check_cHRM() and
|
---|
2187 | png_check_cHRM_fixed().
|
---|
2188 |
|
---|
2189 | Version 1.4.0beta39 [November 23, 2008]
|
---|
2190 | Revised png_warning() to write its message on standard output by default
|
---|
2191 | when warning_fn is NULL.
|
---|
2192 |
|
---|
2193 | Version 1.4.0beta40 [November 24, 2008]
|
---|
2194 | Eliminated png_check_cHRM(). Instead, always use png_check_cHRM_fixed().
|
---|
2195 | In png_check_cHRM_fixed(), ensure white_y is > 0, and removed redundant
|
---|
2196 | check for all-zero coordinates that is detected by the triangle check.
|
---|
2197 |
|
---|
2198 | Version 1.4.0beta41 [November 26, 2008]
|
---|
2199 | Fixed string vs pointer-to-string error in png_check_keyword().
|
---|
2200 | Rearranged test expressions in png_check_cHRM_fixed() to avoid internal
|
---|
2201 | overflows.
|
---|
2202 | Added PNG_NO_CHECK_cHRM conditional.
|
---|
2203 |
|
---|
2204 | Version 1.4.0beta42, 43 [December 1, 2008]
|
---|
2205 | Merge png_debug with version 1.2.34beta04.
|
---|
2206 |
|
---|
2207 | Version 1.4.0beta44 [December 6, 2008]
|
---|
2208 | Removed redundant check for key==NULL before calling png_check_keyword()
|
---|
2209 | to ensure that new_key gets initialized and removed extra warning
|
---|
2210 | (Merge with version 1.2.34beta05 -- Arvan Pritchard).
|
---|
2211 |
|
---|
2212 | Version 1.4.0beta45 [December 9, 2008]
|
---|
2213 | In png_write_png(), respect the placement of the filler bytes in an earlier
|
---|
2214 | call to png_set_filler() (Jim Barry).
|
---|
2215 |
|
---|
2216 | Version 1.4.0beta46 [December 10, 2008]
|
---|
2217 | Undid previous change and added PNG_TRANSFORM_STRIP_FILLER_BEFORE and
|
---|
2218 | PNG_TRANSFORM_STRIP_FILLER_AFTER conditionals and deprecated
|
---|
2219 | PNG_TRANSFORM_STRIP_FILLER (Jim Barry).
|
---|
2220 |
|
---|
2221 | Version 1.4.0beta47 [December 15, 2008]
|
---|
2222 | Support for dithering was disabled by default, because it has never
|
---|
2223 | been well tested and doesn't work very well. The code has not
|
---|
2224 | been removed, however, and can be enabled by building libpng with
|
---|
2225 | PNG_READ_DITHER_SUPPORTED defined.
|
---|
2226 |
|
---|
2227 | Version 1.4.0beta48 [February 14, 2009]
|
---|
2228 | Added new exported function png_calloc().
|
---|
2229 | Combined several instances of png_malloc(); png_memset() into png_calloc().
|
---|
2230 | Removed prototype for png_freeptr() that was added in libpng-1.4.0beta24
|
---|
2231 | but was never defined.
|
---|
2232 |
|
---|
2233 | Version 1.4.0beta49 [February 28, 2009]
|
---|
2234 | Added png_fileno() macro to pngconf.h, used in pngwio.c
|
---|
2235 | Corrected order of #ifdef's in png_debug definition in png.h
|
---|
2236 | Fixed bug introduced in libpng-1.4.0beta48 with the memset arguments
|
---|
2237 | for pcal_params.
|
---|
2238 | Fixed order of #ifdef directives in the png_debug defines in png.h
|
---|
2239 | (bug introduced in libpng-1.2.34/1.4.0beta29).
|
---|
2240 | Revised comments in png_set_read_fn() and png_set_write_fn().
|
---|
2241 |
|
---|
2242 | Version 1.4.0beta50 [March 18, 2009]
|
---|
2243 | Use png_calloc() instead of png_malloc() to allocate big_row_buf when
|
---|
2244 | reading an interlaced file, to avoid a possible UMR.
|
---|
2245 | Undid revision of PNG_NO_STDIO version of png_write_flush(). Users
|
---|
2246 | having trouble with fflush() can build with PNG_NO_WRITE_FLUSH defined
|
---|
2247 | or supply their own flush_fn() replacement.
|
---|
2248 | Revised libpng*.txt and png.h documentation about use of png_write_flush()
|
---|
2249 | and png_set_write_fn().
|
---|
2250 | Removed fflush() from pngtest.c.
|
---|
2251 | Added "#define PNG_NO_WRITE_FLUSH" to contrib/pngminim/encoder/pngusr.h
|
---|
2252 |
|
---|
2253 | Version 1.4.0beta51 [March 21, 2009]
|
---|
2254 | Removed new png_fileno() macro from pngconf.h .
|
---|
2255 |
|
---|
2256 | Version 1.4.0beta52 [March 27, 2009]
|
---|
2257 | Relocated png_do_chop() ahead of building gamma tables in pngrtran.c
|
---|
2258 | This avoids building 16-bit gamma tables unnecessarily.
|
---|
2259 | Removed fflush() from pngtest.c.
|
---|
2260 | Added "#define PNG_NO_WRITE_FLUSH" to contrib/pngminim/encoder/pngusr.h
|
---|
2261 | Added a section on differences between 1.0.x and 1.2.x to libpng.3/libpng.txt
|
---|
2262 |
|
---|
2263 | Version 1.4.0beta53 [April 1, 2009]
|
---|
2264 | Removed some remaining MMX macros from pngpriv.h
|
---|
2265 | Fixed potential memory leak of "new_name" in png_write_iCCP() (Ralph Giles)
|
---|
2266 |
|
---|
2267 | Version 1.4.0beta54 [April 13, 2009]
|
---|
2268 | Added "ifndef PNG_SKIP_SETJMP_CHECK" block in pngconf.h to allow
|
---|
2269 | application code writers to bypass the check for multiple inclusion
|
---|
2270 | of setjmp.h when they know that it is safe to ignore the situation.
|
---|
2271 | Eliminated internal use of setjmp() in pngread.c and pngwrite.c
|
---|
2272 | Reordered ancillary chunks in pngtest.png to be the same as what
|
---|
2273 | pngtest now produces, and made some cosmetic changes to pngtest output.
|
---|
2274 | Eliminated deprecated png_read_init_3() and png_write_init_3() functions.
|
---|
2275 |
|
---|
2276 | Version 1.4.0beta55 [April 15, 2009]
|
---|
2277 | Simplified error handling in pngread.c and pngwrite.c by putting
|
---|
2278 | the new png_read_cleanup() and png_write_cleanup() functions inline.
|
---|
2279 |
|
---|
2280 | Version 1.4.0beta56 [April 25, 2009]
|
---|
2281 | Renamed "user_chunk_data" to "my_user_chunk_data" in pngtest.c to suppress
|
---|
2282 | "shadowed declaration" warning from gcc-4.3.3.
|
---|
2283 | Renamed "gamma" to "png_gamma" in pngset.c to avoid "shadowed declaration"
|
---|
2284 | warning about a global "gamma" variable in math.h on some platforms.
|
---|
2285 |
|
---|
2286 | Version 1.4.0beta57 [May 2, 2009]
|
---|
2287 | Removed prototype for png_freeptr() that was added in libpng-1.4.0beta24
|
---|
2288 | but was never defined (again).
|
---|
2289 | Rebuilt configure scripts with autoconf-2.63 instead of 2.62
|
---|
2290 | Removed pngprefs.h and MMX from makefiles
|
---|
2291 |
|
---|
2292 | Version 1.4.0beta58 [May 14, 2009]
|
---|
2293 | Changed pngw32.def to pngwin.def in makefile.mingw (typo was introduced
|
---|
2294 | in beta57).
|
---|
2295 | Clarified usage of sig_bit versus sig_bit_p in example.c (Vincent Torri)
|
---|
2296 |
|
---|
2297 | Version 1.4.0beta59 [May 15, 2009]
|
---|
2298 | Reformatted sources in libpng style (3-space indentation, comment format)
|
---|
2299 | Fixed typo in libpng docs (PNG_FILTER_AVE should be PNG_FILTER_AVG)
|
---|
2300 | Added sections about the git repository and our coding style to the
|
---|
2301 | documentation
|
---|
2302 | Relocated misplaced #endif in pngwrite.c, sCAL chunk handler.
|
---|
2303 |
|
---|
2304 | Version 1.4.0beta60 [May 19, 2009]
|
---|
2305 | Conditionally compile png_read_finish_row() which is not used by
|
---|
2306 | progressive readers.
|
---|
2307 | Added contrib/pngminim/preader to demonstrate building minimal progressive
|
---|
2308 | decoder, based on contrib/gregbook with embedded libpng and zlib.
|
---|
2309 |
|
---|
2310 | Version 1.4.0beta61 [May 20, 2009]
|
---|
2311 | In contrib/pngminim/*, renamed "makefile.std" to "makefile", since there
|
---|
2312 | is only one makefile in those directories, and revised the README files
|
---|
2313 | accordingly.
|
---|
2314 | More reformatting of comments, mostly to capitalize sentences.
|
---|
2315 |
|
---|
2316 | Version 1.4.0beta62 [June 2, 2009]
|
---|
2317 | Added "#define PNG_NO_WRITE_SWAP" to contrib/pngminim/encoder/pngusr.h
|
---|
2318 | and "define PNG_NO_READ_SWAP" to decoder/pngusr.h and preader/pngusr.h
|
---|
2319 | Reformatted several remaining "else statement" into two lines.
|
---|
2320 | Added a section to the libpng documentation about using png_get_io_ptr()
|
---|
2321 | in configure scripts to detect the presence of libpng.
|
---|
2322 |
|
---|
2323 | Version 1.4.0beta63 [June 15, 2009]
|
---|
2324 | Revised libpng*.txt and libpng.3 to mention calling png_set_IHDR()
|
---|
2325 | multiple times and to specify the sample order in the tRNS chunk,
|
---|
2326 | because the ISO PNG specification has a typo in the tRNS table.
|
---|
2327 | Changed several PNG_UNKNOWN_CHUNK_SUPPORTED to
|
---|
2328 | PNG_HANDLE_AS_UNKNOWN_SUPPORTED, to make the png_set_keep mechanism
|
---|
2329 | available for ignoring known chunks even when not saving unknown chunks.
|
---|
2330 | Adopted preference for consistent use of "#ifdef" and "#ifndef" versus
|
---|
2331 | "#if defined()" and "if !defined()" where possible.
|
---|
2332 |
|
---|
2333 | Version 1.4.0beta64 [June 24, 2009]
|
---|
2334 | Eliminated PNG_LEGACY_SUPPORTED code.
|
---|
2335 | Moved the various unknown chunk macro definitions outside of the
|
---|
2336 | PNG_READ|WRITE_ANCILLARY_CHUNK_SUPPORTED blocks.
|
---|
2337 |
|
---|
2338 | Version 1.4.0beta65 [June 26, 2009]
|
---|
2339 | Added a reference to the libpng license in each file.
|
---|
2340 |
|
---|
2341 | Version 1.4.0beta66 [June 27, 2009]
|
---|
2342 | Refer to the libpng license instead of the libpng license in each file.
|
---|
2343 |
|
---|
2344 | Version 1.4.0beta67 [July 6, 2009]
|
---|
2345 | Relocated INVERT_ALPHA within png_read_png() and png_write_png().
|
---|
2346 | Added high-level API transform PNG_TRANSFORM_GRAY_TO_RGB.
|
---|
2347 | Added an "xcode" project to the projects directory (Alam Arias).
|
---|
2348 |
|
---|
2349 | Version 1.4.0beta68 [July 19, 2009]
|
---|
2350 | Avoid some tests in filter selection in pngwutil.c
|
---|
2351 |
|
---|
2352 | Version 1.4.0beta69 [July 25, 2009]
|
---|
2353 | Simplified the new filter-selection test. This runs faster in the
|
---|
2354 | common "PNG_ALL_FILTERS" and PNG_FILTER_NONE cases.
|
---|
2355 | Removed extraneous declaration from the new call to png_read_gray_to_rgb()
|
---|
2356 | (bug introduced in libpng-1.4.0beta67).
|
---|
2357 | Fixed up xcode project (Alam Arias)
|
---|
2358 | Added a prototype for png_64bit_product() in png.c
|
---|
2359 |
|
---|
2360 | Version 1.4.0beta70 [July 27, 2009]
|
---|
2361 | Avoid a possible NULL dereference in debug build, in png_set_text_2().
|
---|
2362 | (bug introduced in libpng-0.95, discovered by Evan Rouault)
|
---|
2363 |
|
---|
2364 | Version 1.4.0beta71 [July 29, 2009]
|
---|
2365 | Rebuilt configure scripts with autoconf-2.64.
|
---|
2366 |
|
---|
2367 | Version 1.4.0beta72 [August 1, 2009]
|
---|
2368 | Replaced *.tar.lzma with *.tar.xz in distribution. Get the xz codec
|
---|
2369 | from <http://tukaani.org/xz>.
|
---|
2370 |
|
---|
2371 | Version 1.4.0beta73 [August 1, 2009]
|
---|
2372 | Reject attempt to write iCCP chunk with negative embedded profile length
|
---|
2373 | (JD Chen) (CVE-2009-5063).
|
---|
2374 |
|
---|
2375 | Version 1.4.0beta74 [August 8, 2009]
|
---|
2376 | Changed png_ptr and info_ptr member "trans" to "trans_alpha".
|
---|
2377 |
|
---|
2378 | Version 1.4.0beta75 [August 21, 2009]
|
---|
2379 | Removed an extra png_debug() recently added to png_write_find_filter().
|
---|
2380 | Fixed incorrect #ifdef in pngset.c regarding unknown chunk support.
|
---|
2381 |
|
---|
2382 | Version 1.4.0beta76 [August 22, 2009]
|
---|
2383 | Moved an incorrectly located test in png_read_row() in pngread.c
|
---|
2384 |
|
---|
2385 | Version 1.4.0beta77 [August 27, 2009]
|
---|
2386 | Removed lpXYZ.tar.bz2 (with CRLF), KNOWNBUG, libpng-x.y.z-KNOWNBUG.txt,
|
---|
2387 | and the "noconfig" files from the distribution.
|
---|
2388 | Moved CMakeLists.txt from scripts into the main libpng directory.
|
---|
2389 | Various bugfixes and improvements to CMakeLists.txt (Philip Lowman)
|
---|
2390 |
|
---|
2391 | Version 1.4.0beta78 [August 31, 2009]
|
---|
2392 | Converted all PNG_NO_* tests to PNG_*_SUPPORTED everywhere except pngconf.h
|
---|
2393 | Eliminated PNG_NO_FREE_ME and PNG_FREE_ME_SUPPORTED macros.
|
---|
2394 | Use png_malloc plus a loop instead of png_calloc() to initialize
|
---|
2395 | row_pointers in png_read_png().
|
---|
2396 |
|
---|
2397 | Version 1.4.0beta79 [September 1, 2009]
|
---|
2398 | Eliminated PNG_GLOBAL_ARRAYS and PNG_LOCAL_ARRAYS; always use local arrays.
|
---|
2399 | Eliminated PNG_CALLOC_SUPPORTED macro and always provide png_calloc().
|
---|
2400 |
|
---|
2401 | Version 1.4.0beta80 [September 17, 2009]
|
---|
2402 | Removed scripts/libpng.icc
|
---|
2403 | Changed typecast of filler from png_byte to png_uint_16 in png_set_filler().
|
---|
2404 | (Dennis Gustafsson)
|
---|
2405 | Fixed typo introduced in beta78 in pngtest.c ("#if def " should be "#ifdef ")
|
---|
2406 |
|
---|
2407 | Version 1.4.0beta81 [September 23, 2009]
|
---|
2408 | Eliminated unused PNG_FLAG_FREE_* defines from pngpriv.h
|
---|
2409 | Expanded TAB characters in pngrtran.c
|
---|
2410 | Removed PNG_CONST from all "PNG_CONST PNG_CHNK" declarations to avoid
|
---|
2411 | compiler complaints about doubly declaring things "const".
|
---|
2412 | Changed all "#if [!]defined(X)" to "if[n]def X" where possible.
|
---|
2413 | Eliminated unused png_ptr->row_buf_size
|
---|
2414 |
|
---|
2415 | Version 1.4.0beta82 [September 25, 2009]
|
---|
2416 | Moved redundant IHDR checking into new png_check_IHDR() in png.c
|
---|
2417 | and report all errors found in the IHDR data.
|
---|
2418 | Eliminated useless call to png_check_cHRM() from pngset.c
|
---|
2419 |
|
---|
2420 | Version 1.4.0beta83 [September 25, 2009]
|
---|
2421 | Revised png_check_IHDR() to eliminate bogus complaint about filter_type.
|
---|
2422 |
|
---|
2423 | Version 1.4.0beta84 [September 30, 2009]
|
---|
2424 | Fixed some inconsistent indentation in pngconf.h
|
---|
2425 | Revised png_check_IHDR() to add a test for width variable less than 32-bit.
|
---|
2426 |
|
---|
2427 | Version 1.4.0beta85 [October 1, 2009]
|
---|
2428 | Revised png_check_IHDR() again, to check info_ptr members instead of
|
---|
2429 | the contents of the returned parameters.
|
---|
2430 |
|
---|
2431 | Version 1.4.0beta86 [October 9, 2009]
|
---|
2432 | Updated the "xcode" project (Alam Arias).
|
---|
2433 | Eliminated a shadowed declaration of "pp" in png_handle_sPLT().
|
---|
2434 |
|
---|
2435 | Version 1.4.0rc01 [October 19, 2009]
|
---|
2436 | Trivial cosmetic changes.
|
---|
2437 |
|
---|
2438 | Version 1.4.0beta87 [October 30, 2009]
|
---|
2439 | Moved version 1.4.0 back into beta.
|
---|
2440 |
|
---|
2441 | Version 1.4.0beta88 [October 30, 2009]
|
---|
2442 | Revised libpng*.txt section about differences between 1.2.x and 1.4.0
|
---|
2443 | because most of the new features have now been ported back to 1.2.41
|
---|
2444 |
|
---|
2445 | Version 1.4.0beta89 [November 1, 2009]
|
---|
2446 | More bugfixes and improvements to CMakeLists.txt (Philip Lowman)
|
---|
2447 | Removed a harmless extra png_set_invert_alpha() from pngwrite.c
|
---|
2448 | Apply png_user_chunk_cache_max within png_decompress_chunk().
|
---|
2449 | Merged libpng-1.2.41.txt with libpng-1.4.0.txt where appropriate.
|
---|
2450 |
|
---|
2451 | Version 1.4.0beta90 [November 2, 2009]
|
---|
2452 | Removed all remaining WIN32_WCE #ifdefs except those involving the
|
---|
2453 | time.h "tm" structure
|
---|
2454 |
|
---|
2455 | Version 1.4.0beta91 [November 3, 2009]
|
---|
2456 | Updated scripts/pngw32.def and projects/wince/png32ce.def
|
---|
2457 | Copied projects/wince/png32ce.def to the scripts directory.
|
---|
2458 | Added scripts/makefile.wce
|
---|
2459 | Patched ltmain.sh for wince support.
|
---|
2460 | Added PNG_CONVERT_tIME_SUPPORTED macro.
|
---|
2461 |
|
---|
2462 | Version 1.4.0beta92 [November 4, 2009]
|
---|
2463 | Make inclusion of time.h in pngconf.h depend on PNG_CONVERT_tIME_SUPPORTED
|
---|
2464 | Make #define PNG_CONVERT_tIME_SUPPORTED depend on PNG_WRITE_tIME_SUPPORTED
|
---|
2465 | Revised libpng*.txt to describe differences from 1.2.40 to 1.4.0 (instead
|
---|
2466 | of differences from 1.2.41 to 1.4.0)
|
---|
2467 |
|
---|
2468 | Version 1.4.0beta93 [November 7, 2009]
|
---|
2469 | Added PNG_DEPSTRUCT, PNG_DEPRECATED, PNG_USE_RESULT, PNG_NORETURN, and
|
---|
2470 | PNG_ALLOCATED macros to detect deprecated direct access to the
|
---|
2471 | png_struct or info_struct members and other deprecated usage in
|
---|
2472 | applications (John Bowler).
|
---|
2473 | Updated scripts/makefile* to add "-DPNG_CONFIGURE_LIBPNG" to CFLAGS,
|
---|
2474 | to prevent warnings about direct access to png structs by libpng
|
---|
2475 | functions while building libpng. They need to be tested, especially
|
---|
2476 | those using compilers other than gcc.
|
---|
2477 | Updated projects/visualc6 and visualc71 with "/d PNG_CONFIGURE_LIBPNG".
|
---|
2478 | They should work but still need to be updated to remove
|
---|
2479 | references to pnggccrd.c or pngvcrd.c and ASM building.
|
---|
2480 | Added README.txt to the beos, cbuilder5, netware, and xcode projects warning
|
---|
2481 | that they need to be updated, to remove references to pnggccrd.c and
|
---|
2482 | pngvcrd.c and to depend on pngpriv.h
|
---|
2483 | Removed three direct references to read_info_ptr members in pngtest.c
|
---|
2484 | that were detected by the new PNG_DEPSTRUCT macro.
|
---|
2485 | Moved the png_debug macro definitions and the png_read_destroy(),
|
---|
2486 | png_write_destroy() and png_far_to_near() prototypes from png.h
|
---|
2487 | to pngpriv.h (John Bowler)
|
---|
2488 | Moved the synopsis lines for png_read_destroy(), png_write_destroy()
|
---|
2489 | png_debug(), png_debug1(), and png_debug2() from libpng.3 to libpngpf.3.
|
---|
2490 |
|
---|
2491 | Version 1.4.0beta94 [November 9, 2009]
|
---|
2492 | Removed the obsolete, unused pnggccrd.c and pngvcrd.c files.
|
---|
2493 | Updated CMakeLists.txt to add "-DPNG_CONFIGURE_LIBPNG" to the definitions.
|
---|
2494 | Removed dependency of pngtest.o on pngpriv.h in the makefiles.
|
---|
2495 | Only #define PNG_DEPSTRUCT, etc. in pngconf.h if not already defined.
|
---|
2496 |
|
---|
2497 | Version 1.4.0beta95 [November 10, 2009]
|
---|
2498 | Changed png_check_sig() to !png_sig_cmp() in contrib programs.
|
---|
2499 | Added -DPNG_CONFIGURE_LIBPNG to contrib/pngminm/*/makefile
|
---|
2500 | Changed png_check_sig() to !png_sig_cmp() in contrib programs.
|
---|
2501 | Corrected the png_get_IHDR() call in contrib/gregbook/readpng2.c
|
---|
2502 | Changed pngminim/*/gather.sh to stop trying to remove pnggccrd.c and pngvcrd.c
|
---|
2503 | Added dependency on pngpriv.h in contrib/pngminim/*/makefile
|
---|
2504 |
|
---|
2505 | Version 1.4.0beta96 [November 12, 2009]
|
---|
2506 | Renamed scripts/makefile.wce to scripts/makefile.cegcc
|
---|
2507 | Revised Makefile.am to use libpng.sys while building libpng.so
|
---|
2508 | so that only PNG_EXPORT functions are exported.
|
---|
2509 | Removed the deprecated png_check_sig() function/macro.
|
---|
2510 | Removed recently removed function names from scripts/*.def
|
---|
2511 | Revised pngtest.png to put chunks in the same order written by pngtest
|
---|
2512 | (evidently the same change made in libpng-1.0beta54 was lost).
|
---|
2513 | Added PNG_PRIVATE macro definition in pngconf.h for possible future use.
|
---|
2514 |
|
---|
2515 | Version 1.4.0beta97 [November 13, 2009]
|
---|
2516 | Restored pngtest.png to the libpng-1.4.0beta7 version.
|
---|
2517 | Removed projects/beos and netware.txt; no one seems to be supporting them.
|
---|
2518 | Revised Makefile.in
|
---|
2519 |
|
---|
2520 | Version 1.4.0beta98 [November 13, 2009]
|
---|
2521 | Added the "xcode" project to zip distributions,
|
---|
2522 | Fixed a typo in scripts/pngwin.def introduced in beta97.
|
---|
2523 |
|
---|
2524 | Version 1.4.0beta99 [November 14, 2009]
|
---|
2525 | Moved libpng-config.in and libpng.pc-configure.in out of the scripts
|
---|
2526 | directory, to libpng-config.in and libpng-pc.in, respectively, and
|
---|
2527 | modified Makefile.am and configure.ac accordingly. Now "configure"
|
---|
2528 | needs nothing from the "scripts" directory.
|
---|
2529 | Avoid redefining PNG_CONST in pngconf.h
|
---|
2530 |
|
---|
2531 | Version 1.4.0beta100 [November 14, 2009]
|
---|
2532 | Removed ASM builds from projects/visualc6 and projects/visualc71
|
---|
2533 | Removed scripts/makefile.nommx and makefile.vcawin32
|
---|
2534 | Revised CMakeLists.txt to account for new location of libpng-config.in
|
---|
2535 | and libpng-pc.in
|
---|
2536 | Updated INSTALL to reflect removal and relocation of files.
|
---|
2537 |
|
---|
2538 | Version 1.4.0beta101 [November 14, 2009]
|
---|
2539 | Restored the binary files (*.jpg, *.png, some project files) that were
|
---|
2540 | accidentally deleted from the zip and 7z distributions when the xcode
|
---|
2541 | project was added.
|
---|
2542 |
|
---|
2543 | Version 1.4.0beta102 [November 18, 2009]
|
---|
2544 | Added libpng-config.in and libpng-pc.in to the zip and 7z distributions.
|
---|
2545 | Fixed a typo in projects/visualc6/pngtest.dsp, introduced in beta100.
|
---|
2546 | Moved descriptions of makefiles and other scripts out of INSTALL into
|
---|
2547 | scripts/README.txt
|
---|
2548 | Updated the copyright year in scripts/pngwin.rc from 2006 to 2009.
|
---|
2549 |
|
---|
2550 | Version 1.4.0beta103 [November 21, 2009]
|
---|
2551 | Removed obsolete comments about ASM from projects/visualc71/README_zlib.txt
|
---|
2552 | Align row_buf on 16-byte boundary in memory.
|
---|
2553 | Restored the PNG_WRITE_FLUSH_AFTER_IEND_SUPPORTED guard around the call
|
---|
2554 | to png_flush() after png_write_IEND(). See 1.4.0beta32, 1.4.0beta50
|
---|
2555 | changes above and 1.2.30, 1.2.30rc01 and rc03 in 1.2.41 CHANGES. Someone
|
---|
2556 | needs this feature.
|
---|
2557 | Make the 'png_jmpbuf' macro expand to a call that records the correct
|
---|
2558 | longjmp function as well as returning a pointer to the setjmp
|
---|
2559 | jmp_buf buffer, and marked direct access to jmpbuf 'deprecated'.
|
---|
2560 | (John Bowler)
|
---|
2561 |
|
---|
2562 | Version 1.4.0beta104 [November 22, 2009]
|
---|
2563 | Removed png_longjmp_ptr from scripts/*.def and libpng.3
|
---|
2564 | Rebuilt configure scripts with autoconf-2.65
|
---|
2565 |
|
---|
2566 | Version 1.4.0beta105 [November 25, 2009]
|
---|
2567 | Use fast integer PNG_DIVIDE_BY_255() or PNG_DIVIDE_BY_65535()
|
---|
2568 | to accomplish alpha premultiplication when
|
---|
2569 | PNG_READ_COMPOSITE_NODIV_SUPPORTED is defined.
|
---|
2570 | Changed "/255" to "/255.0" in background calculations to make it clear
|
---|
2571 | that the 255 is used as a double.
|
---|
2572 |
|
---|
2573 | Version 1.4.0beta106 [November 27, 2009]
|
---|
2574 | Removed premultiplied alpha feature.
|
---|
2575 |
|
---|
2576 | Version 1.4.0beta107 [December 4, 2009]
|
---|
2577 | Updated README
|
---|
2578 | Added "#define PNG_NO_PEDANTIC_WARNINGS" in the libpng source files.
|
---|
2579 | Removed "-DPNG_CONFIGURE_LIBPNG" from the makefiles and projects.
|
---|
2580 | Revised scripts/makefile.netbsd, makefile.openbsd, and makefile.sco
|
---|
2581 | to put png.h and pngconf.h in $prefix/include, like the other scripts,
|
---|
2582 | instead of in $prefix/include/libpng. Also revised makefile.sco
|
---|
2583 | to put them in $prefix/include/libpng15 instead of in
|
---|
2584 | $prefix/include/libpng/libpng15.
|
---|
2585 |
|
---|
2586 | Version 1.4.0beta108 [December 11, 2009]
|
---|
2587 | Removed leftover "-DPNG_CONFIGURE_LIBPNG" from contrib/pngminim/*/makefile
|
---|
2588 | Relocated png_do_chop() to its original position in pngrtran.c; the
|
---|
2589 | change in version 1.2.41beta08 caused transparency to be handled wrong
|
---|
2590 | in some 16-bit datastreams (Yusaku Sugai).
|
---|
2591 |
|
---|
2592 | Version 1.4.0beta109 [December 13, 2009]
|
---|
2593 | Added "bit_depth" parameter to the private png_build_gamma_table() function.
|
---|
2594 | Pass bit_depth=8 to png_build_gamma_table() when bit_depth is 16 but the
|
---|
2595 | PNG_16_TO_8 transform has been set, to avoid unnecessary build of 16-bit
|
---|
2596 | tables.
|
---|
2597 |
|
---|
2598 | Version 1.4.0rc02 [December 20, 2009]
|
---|
2599 | Declared png_cleanup_needed "volatile" in pngread.c and pngwrite.c
|
---|
2600 |
|
---|
2601 | Version 1.4.0rc03 [December 22, 2009]
|
---|
2602 | Renamed libpng-pc.in back to libpng.pc.in and revised CMakeLists.txt
|
---|
2603 | (revising the change in 1.4.0beta99)
|
---|
2604 |
|
---|
2605 | Version 1.4.0rc04 [December 25, 2009]
|
---|
2606 | Swapped PNG_UNKNOWN_CHUNKS_SUPPORTED and PNG_HANDLE_AS_UNKNOWN_SUPPORTED
|
---|
2607 | in pngset.c to be consistent with other changes in version 1.2.38.
|
---|
2608 |
|
---|
2609 | Version 1.4.0rc05 [December 25, 2009]
|
---|
2610 | Changed "libpng-pc.in" to "libpng.pc.in" in configure.ac, configure, and
|
---|
2611 | Makefile.in to be consistent with changes in libpng-1.4.0rc03
|
---|
2612 |
|
---|
2613 | Version 1.4.0rc06 [December 29, 2009]
|
---|
2614 | Reverted the gamma_table changes from libpng-1.4.0beta109.
|
---|
2615 | Fixed some indentation errors.
|
---|
2616 |
|
---|
2617 | Version 1.4.0rc07 [January 1, 2010]
|
---|
2618 | Revised libpng*.txt and libpng.3 about 1.2.x->1.4.x differences.
|
---|
2619 | Use png_calloc() instead of png_malloc(); png_memset() in pngrutil.c
|
---|
2620 | Update copyright year to 2010.
|
---|
2621 |
|
---|
2622 | Version 1.4.0rc08 [January 2, 2010]
|
---|
2623 | Avoid deprecated references to png_ptr-io_ptr and png_ptr->error_ptr
|
---|
2624 | in pngtest.c
|
---|
2625 |
|
---|
2626 | Version 1.4.0 [January 3, 2010]
|
---|
2627 | No changes.
|
---|
2628 |
|
---|
2629 | Version 1.4.1beta01 [January 8, 2010]
|
---|
2630 | Updated CMakeLists.txt for consistent indentation and to avoid an
|
---|
2631 | unclosed if-statement warning (Philip Lowman).
|
---|
2632 | Revised Makefile.am and Makefile.in to remove references to Y2KINFO,
|
---|
2633 | KNOWNBUG, and libpng.la (Robert Schwebel).
|
---|
2634 | Revised the makefiles to install the same files and symbolic
|
---|
2635 | links as configure, except for libpng.la and libpng14.la.
|
---|
2636 | Make png_set|get_compression_buffer_size() available even when
|
---|
2637 | PNG_WRITE_SUPPORTED is not enabled.
|
---|
2638 | Revised Makefile.am and Makefile.in to simplify their maintenance.
|
---|
2639 | Revised scripts/makefile.linux to install a link to libpng14.so.14.1
|
---|
2640 |
|
---|
2641 | Version 1.4.1beta02 [January 9, 2010]
|
---|
2642 | Revised the rest of the makefiles to install a link to libpng14.so.14.1
|
---|
2643 |
|
---|
2644 | Version 1.4.1beta03 [January 10, 2010]
|
---|
2645 | Removed png_set_premultiply_alpha() from scripts/*.def
|
---|
2646 |
|
---|
2647 | Version 1.4.1rc01 [January 16, 2010]
|
---|
2648 | No changes.
|
---|
2649 |
|
---|
2650 | Version 1.4.1beta04 [January 23, 2010]
|
---|
2651 | Revised png_decompress_chunk() to improve speed and memory usage when
|
---|
2652 | decoding large chunks.
|
---|
2653 | Added png_set|get_chunk_malloc_max() functions.
|
---|
2654 |
|
---|
2655 | Version 1.4.1beta05 [January 26, 2010]
|
---|
2656 | Relocated "int k" declaration in pngtest.c to minimize its scope.
|
---|
2657 |
|
---|
2658 | Version 1.4.1beta06 [January 28, 2010]
|
---|
2659 | Revised png_decompress_chunk() to use a two-pass method suggested by
|
---|
2660 | John Bowler.
|
---|
2661 |
|
---|
2662 | Version 1.4.1beta07 [February 6, 2010]
|
---|
2663 | Folded some long lines in the source files.
|
---|
2664 | Added definable PNG_USER_CHUNK_CACHE_MAX, PNG_USER_CHUNK_MALLOC_MAX,
|
---|
2665 | and a PNG_USER_LIMITS_SUPPORTED flag.
|
---|
2666 | Eliminated use of png_ptr->irowbytes and reused the slot in png_ptr as
|
---|
2667 | png_ptr->png_user_chunk_malloc_max.
|
---|
2668 | Revised png_push_save_buffer() to do fewer but larger png_malloc() calls.
|
---|
2669 |
|
---|
2670 | Version 1.4.1beta08 [February 6, 2010]
|
---|
2671 | Minor cleanup and updating of dates and copyright year.
|
---|
2672 |
|
---|
2673 | Version 1.5.0beta01 [February 7, 2010]
|
---|
2674 | Moved declaration of png_struct into private pngstruct.h and png_info
|
---|
2675 | into pnginfo.h
|
---|
2676 |
|
---|
2677 | Version 1.4.1beta09 and 1.5.0beta02 [February 7, 2010]
|
---|
2678 | Reverted to original png_push_save_buffer() code.
|
---|
2679 |
|
---|
2680 | Version 1.4.1beta10 and 1.5.0beta03 [February 8, 2010]
|
---|
2681 | Return allocated "old_buffer" in png_push_save_buffer() before
|
---|
2682 | calling png_error(), to avoid a potential memory leak.
|
---|
2683 | Updated configure script to use SO number 15.
|
---|
2684 |
|
---|
2685 | Version 1.5.0beta04 [February 9, 2010]
|
---|
2686 | Removed malformed "incomplete struct declaration" of png_info from png.h
|
---|
2687 |
|
---|
2688 | Version 1.5.0beta05 [February 12, 2010]
|
---|
2689 | Removed PNG_DEPSTRUCT markup in pngstruct.h and pnginfo.h, and undid the
|
---|
2690 | linewrapping that it entailed.
|
---|
2691 | Revised comments in pngstruct.h and pnginfo.h and added pointers to
|
---|
2692 | the libpng license.
|
---|
2693 | Changed PNG_INTERNAL to PNG_EXPOSE_INTERNAL_STRUCTURES
|
---|
2694 | Removed the cbuilder5 project, which has not been updated to 1.4.0.
|
---|
2695 |
|
---|
2696 | Version 1.4.1beta12 and 1.5.0beta06 [February 14, 2010]
|
---|
2697 | Fixed type declaration of png_get_chunk_malloc_max() in pngget.c (Daisuke
|
---|
2698 | Nishikawa)
|
---|
2699 |
|
---|
2700 | Version 1.5.0beta07 [omitted]
|
---|
2701 |
|
---|
2702 | Version 1.5.0beta08 [February 19, 2010]
|
---|
2703 | Changed #ifdef PNG_NO_STDIO_SUPPORTED to #ifdef PNG_NO_CONSOLE_IO_SUPPORTED
|
---|
2704 | wherever png_snprintf() is used to construct error and warning messages.
|
---|
2705 | Noted in scripts/makefile.mingw that it expects to be run under MSYS.
|
---|
2706 | Removed obsolete unused MMX-querying support from contrib/gregbook
|
---|
2707 | Added exported png_longjmp() function.
|
---|
2708 | Removed the AIX redefinition of jmpbuf in png.h
|
---|
2709 | Added -D_ALLSOURCE in configure.ac, makefile.aix, and CMakeLists.txt
|
---|
2710 | when building on AIX.
|
---|
2711 |
|
---|
2712 | Version 1.5.0beta09 [February 19, 2010]
|
---|
2713 | Removed -D_ALLSOURCE from configure.ac, makefile.aix, and CMakeLists.txt.
|
---|
2714 | Changed the name of png_ptr->jmpbuf to png_ptr->png_jmpbuf in pngstruct.h
|
---|
2715 |
|
---|
2716 | Version 1.5.0beta10 [February 25, 2010]
|
---|
2717 | Removed unused gzio.c from contrib/pngminim gather and makefile scripts
|
---|
2718 | Removed replacement error handlers from contrib/gregbook. Because of
|
---|
2719 | the new png_longjmp() function they are no longer needed.
|
---|
2720 |
|
---|
2721 | Version 1.5.0beta11 [March 6, 2010]
|
---|
2722 | Removed checking for already-included setjmp.h from pngconf.h
|
---|
2723 | Fixed inconsistent indentations and made numerous cosmetic changes.
|
---|
2724 | Revised the "SEE ALSO" style of libpng.3, libpngpf.3, and png.5
|
---|
2725 |
|
---|
2726 | Version 1.5.0beta12 [March 9, 2010]
|
---|
2727 | Moved "#include png.h" inside pngpriv.h and removed "#include png.h" from
|
---|
2728 | the source files, along with "#define PNG_EXPOSE_INTERNAL_STRUCTURES"
|
---|
2729 | and "#define PNG_NO_PEDANTIC_WARNINGS" (John Bowler).
|
---|
2730 | Created new pngdebug.h and moved debug definitions there.
|
---|
2731 |
|
---|
2732 | Version 1.5.0beta13 [March 10, 2010]
|
---|
2733 | Protect pngstruct.h, pnginfo.h, and pngdebug.h from being included twice.
|
---|
2734 | Revise the "#ifdef" blocks in png_inflate() so it will compile when neither
|
---|
2735 | PNG_USER_CHUNK_MALLOC_MAX nor PNG_SET_CHUNK_MALLOC_LIMIT_SUPPORTED
|
---|
2736 | is defined.
|
---|
2737 | Removed unused png_measure_compressed_chunk() from pngpriv.h and libpngpf.3
|
---|
2738 | Moved the 'config.h' support from pngconf.h to pngpriv.h
|
---|
2739 | Removed PNGAPI from the png_longjmp_ptr typedef.
|
---|
2740 | Eliminated dependence of pngtest.c on the private pngdebug.h file.
|
---|
2741 | Make all png_debug macros into *unterminated* statements or
|
---|
2742 | expressions (i.e. a trailing ';' must always be added) and correct
|
---|
2743 | the format statements in various png_debug messages.
|
---|
2744 |
|
---|
2745 | Version 1.5.0beta14 [March 14, 2010]
|
---|
2746 | Removed direct access to png_ptr->io_ptr from the Windows code in pngtest.c
|
---|
2747 | Revised Makefile.am to account for recent additions and replacements.
|
---|
2748 | Corrected CE and OS/2 DEF files (scripts/png*def) for symbols removed and
|
---|
2749 | added ordinal numbers to the Windows DEF file and corrected the duplicated
|
---|
2750 | ordinal numbers on CE symbols that are commented out.
|
---|
2751 | Added back in export symbols that can be present in the Windows build but
|
---|
2752 | are disabled by default.
|
---|
2753 | PNG_EXPORT changed to include an 'ordinal' field for DEF file generation.
|
---|
2754 | PNG_CALLBACK added to make callback definitions uniform. PNGAPI split
|
---|
2755 | into PNGCAPI (base C form), PNGAPI (exports) and PNGCBAPI (callbacks),
|
---|
2756 | and appropriate changes made to all files. Cygwin builds re-hinged to
|
---|
2757 | allow procedure call standard changes and to remove the need for the DEF
|
---|
2758 | file (fixes build on Cygwin).
|
---|
2759 | Enabled 'attribute' warnings that are relevant to library APIs and callbacks.
|
---|
2760 | Changed rules for generation of the various symbol files and added a new
|
---|
2761 | rule for a DEF file (which is also added to the distribution).
|
---|
2762 | Updated the symbol file generation to stop it adding spurious spaces
|
---|
2763 | to EOL (coming from preprocessor macro expansion). Added a facility
|
---|
2764 | to join tokens in the output and rewrite *.dfn to use this.
|
---|
2765 | Eliminated scripts/*.def in favor of libpng.def; updated projects/visualc71
|
---|
2766 | and removed scripts/makefile.cygwin.
|
---|
2767 | Made PNG_BUILD_DLL safe: it can be set whenever a DLL is being built.
|
---|
2768 | Removed the include of sys/types.h - apparently unnecessary now on the
|
---|
2769 | platforms on which it happened (all but Mac OS and RISC OS).
|
---|
2770 | Moved the Mac OS test into pngpriv.h (the only place it is used.)
|
---|
2771 |
|
---|
2772 | Version 1.5.0beta15 [March 17, 2010]
|
---|
2773 | Added symbols.chk target to Makefile.am to validate the symbols in png.h
|
---|
2774 | against the new DEF file scripts/symbols.def.
|
---|
2775 | Changed the default DEF file back to pngwin.def.
|
---|
2776 | Removed makefile.mingw.
|
---|
2777 | Eliminated PNG_NO_EXTERN and PNG_ALL_EXTERN
|
---|
2778 |
|
---|
2779 | Version 1.5.0beta16 [April 1, 2010]
|
---|
2780 | Make png_text_struct independent of PNG_iTXt_SUPPORTED, so that
|
---|
2781 | fields are initialized in all configurations. The READ/WRITE
|
---|
2782 | macros (PNG_(READ|WRITE)_iTXt_SUPPORTED) still function as
|
---|
2783 | before to disable code to actually read or write iTXt chunks
|
---|
2784 | and iTXt_SUPPORTED can be used to detect presence of either
|
---|
2785 | read or write support (but it is probably better to check for
|
---|
2786 | the one actually required - read or write.)
|
---|
2787 | Combined multiple png_warning() calls for a single error.
|
---|
2788 | Restored the macro definition of png_check_sig().
|
---|
2789 |
|
---|
2790 | Version 1.5.0beta17 [April 17, 2010]
|
---|
2791 | Added some "(long)" typecasts to printf calls in png_handle_cHRM().
|
---|
2792 | Documented the fact that png_set_dither() was disabled since libpng-1.4.0.
|
---|
2793 | Reenabled png_set_dither() but renamed it to png_set_quantize() to reflect
|
---|
2794 | more accurately what it actually does. At the same time, renamed
|
---|
2795 | the PNG_DITHER_[RED,GREEN_BLUE]_BITS macros to
|
---|
2796 | PNG_QUANTIZE_[RED,GREEN,BLUE]_BITS.
|
---|
2797 | Added some "(long)" typecasts to printf calls in png_handle_cHRM().
|
---|
2798 | Freeze build-time only configuration in the build.
|
---|
2799 | In all prior versions of libpng most configuration options
|
---|
2800 | controlled by compiler #defines had to be repeated by the
|
---|
2801 | application code that used libpng. This patch changes this
|
---|
2802 | so that compilation options that can only be changed at build
|
---|
2803 | time are frozen in the build. Options that are compiler
|
---|
2804 | dependent (and those that are system dependent) are evaluated
|
---|
2805 | each time - pngconf.h holds these. Options that can be changed
|
---|
2806 | per-file in the application are in png.h. Frozen options are
|
---|
2807 | in the new installed header file pnglibconf.h (John Bowler)
|
---|
2808 | Removed the xcode project because it has not been updated to work
|
---|
2809 | with libpng-1.5.0.
|
---|
2810 | Removed the ability to include optional pngusr.h
|
---|
2811 |
|
---|
2812 | Version 1.5.0beta18 [April 17, 2010]
|
---|
2813 | Restored the ability to include optional pngusr.h
|
---|
2814 | Moved replacements for png_error() and png_warning() from the
|
---|
2815 | contrib/pngminim project to pngerror.c, for use when warnings or
|
---|
2816 | errors are disabled via PNG_NO_WARN or PNG_NO_ERROR_TEXT, to avoid
|
---|
2817 | storing unneeded error/warning text.
|
---|
2818 | Updated contrib/pngminim project to work with the new pnglibconf.h
|
---|
2819 | Added some PNG_NO_* defines to contrib/pngminim/*/pngusr.h to save space.
|
---|
2820 |
|
---|
2821 | Version 1.5.0beta19 [April 24, 2010]
|
---|
2822 | Added PNG_{READ,WRITE}_INT_FUNCTIONS_SUPPORTED. This allows the functions
|
---|
2823 | to read and write ints to be disabled independently of PNG_USE_READ_MACROS,
|
---|
2824 | which allows libpng to be built with the functions even though the default
|
---|
2825 | is to use the macros - this allows applications to choose at app build
|
---|
2826 | time whether or not to use macros (previously impossible because the
|
---|
2827 | functions weren't in the default build.)
|
---|
2828 | Changed Windows calling convention back to __cdecl for API functions.
|
---|
2829 | For Windows/x86 platforms only:
|
---|
2830 | __stdcall is no longer needed for Visual Basic, so libpng-1.5.0 uses
|
---|
2831 | __cdecl throughout (both API functions and callbacks) on Windows/x86
|
---|
2832 | platforms.
|
---|
2833 | Replaced visualc6 and visualc71 projects with new vstudio project
|
---|
2834 | Relaxed the overly-restrictive permissions of some files.
|
---|
2835 |
|
---|
2836 | Version 1.5.0beta20 [April 24, 2010]
|
---|
2837 | Relaxed more overly-restrictive permissions of some files.
|
---|
2838 |
|
---|
2839 | Version 1.5.0beta21 [April 27, 2010]
|
---|
2840 | Removed some unwanted binary bytes and changed CRLF to NEWLINE in the new
|
---|
2841 | vstudio project files, and some trivial editing of some files in the
|
---|
2842 | scripts directory.
|
---|
2843 | Set PNG_NO_READ_BGR, PNG_NO_IO_STATE, and PNG_NO_TIME_RFC1123 in
|
---|
2844 | contrib/pngminim/decoder/pngusr.h to make a smaller decoder application.
|
---|
2845 |
|
---|
2846 | Version 1.5.0beta22 [April 28, 2010]
|
---|
2847 | Fixed dependencies of GET_INT_32 - it does not require READ_INT_FUNCTIONS
|
---|
2848 | because it has a macro equivalent.
|
---|
2849 | Improved the options.awk script; added an "everything off" option.
|
---|
2850 | Revised contrib/pngminim to use the "everything off" option in pngusr.dfa.
|
---|
2851 |
|
---|
2852 | Version 1.5.0beta23 [April 29, 2010]
|
---|
2853 | Corrected PNG_REMOVED macro to take five arguments.
|
---|
2854 | The macro was documented with two arguments (name,ordinal), however
|
---|
2855 | the symbol checking .dfn files assumed five arguments. The five
|
---|
2856 | argument form seems more useful so it is changed to that.
|
---|
2857 | Corrected PNG_UNKNOWN_CHUNKS_SUPPORTED to PNG_HANDLE_AS_UNKNOWN_SUPPORTED
|
---|
2858 | in gregbook/readpng2.c
|
---|
2859 | Corrected protection of png_get_user_transform_ptr. The API declaration in
|
---|
2860 | png.h is removed if both READ and WRITE USER_TRANSFORM are turned off
|
---|
2861 | but was left defined in pngtrans.c
|
---|
2862 | Added logunsupported=1 to cause pnglibconf.h to document disabled options.
|
---|
2863 | This makes the installed pnglibconf.h more readable but causes no
|
---|
2864 | other change. The intention is that users of libpng will find it
|
---|
2865 | easier to understand if an API they need is missing.
|
---|
2866 | Include png_reset_zstream() in png.c only when PNG_READ_SUPPORTED is defined.
|
---|
2867 | Removed dummy_inflate.c from contrib/pngminim/encoder
|
---|
2868 | Removed contrib/pngminim/*/gather.sh; gathering is now done in the makefile.
|
---|
2869 |
|
---|
2870 | Version 1.5.0beta24 [May 7, 2010]
|
---|
2871 | Use bitwise "&" instead of arithmetic mod in pngrutil.c calculation of the
|
---|
2872 | offset of the png_ptr->rowbuf pointer into png_ptr->big_row_buf.
|
---|
2873 | Added more blank lines for readability.
|
---|
2874 |
|
---|
2875 | Version 1.5.0beta25 [June 18, 2010]
|
---|
2876 | In pngpread.c: png_push_have_row() add check for new_row > height
|
---|
2877 | Removed the now-redundant check for out-of-bounds new_row from example.c
|
---|
2878 |
|
---|
2879 | Version 1.5.0beta26 [June 18, 2010]
|
---|
2880 | In pngpread.c: png_push_process_row() add check for too many rows.
|
---|
2881 |
|
---|
2882 | Version 1.5.0beta27 [June 18, 2010]
|
---|
2883 | Removed the check added in beta25 as it is now redundant.
|
---|
2884 |
|
---|
2885 | Version 1.5.0beta28 [June 20, 2010]
|
---|
2886 | Rewrote png_process_IDAT_data to consistently treat extra data as warnings
|
---|
2887 | and handle end conditions more cleanly.
|
---|
2888 | Removed the new (beta26) check in png_push_process_row().
|
---|
2889 |
|
---|
2890 | Version 1.5.0beta29 [June 21, 2010]
|
---|
2891 | Revised scripts/options.awk to work on Sunos (but still doesn't work)
|
---|
2892 | Added comment to options.awk and contrib/pngminim/*/makefile to try nawk.
|
---|
2893 |
|
---|
2894 | Version 1.5.0beta30 [June 22, 2010]
|
---|
2895 | Stop memory leak when reading a malformed sCAL chunk.
|
---|
2896 |
|
---|
2897 | Version 1.5.0beta31 [June 26, 2010]
|
---|
2898 | Revised pngpread.c patch of beta28 to avoid an endless loop.
|
---|
2899 | Removed some trailing blanks.
|
---|
2900 |
|
---|
2901 | Version 1.5.0beta32 [June 26, 2010]
|
---|
2902 | Removed leftover scripts/options.patch and scripts/options.rej
|
---|
2903 |
|
---|
2904 | Version 1.5.0beta33 [July 6, 3010]
|
---|
2905 | Made FIXED and FLOATING options consistent in the APIs they enable and
|
---|
2906 | disable. Corrected scripts/options.awk to handle both command line
|
---|
2907 | options and options specified in the .dfa files.
|
---|
2908 | Changed char *msg to PNG_CONST char *msg in pngrutil.c
|
---|
2909 | Make png_set_sRGB_gAMA_and_cHRM set values using either the fixed or
|
---|
2910 | floating point APIs, but not both.
|
---|
2911 | Reversed patch to remove error handler when the jmp_buf is stored in the
|
---|
2912 | main program structure, not the png_struct.
|
---|
2913 | The error handler is needed because the default handler in libpng will
|
---|
2914 | always use the jmp_buf in the library control structure; this is never
|
---|
2915 | set. The gregbook code is a useful example because, even though it
|
---|
2916 | uses setjmp/longjmp, it shows how error handling can be implemented
|
---|
2917 | using control mechanisms not directly supported by libpng. The
|
---|
2918 | technique will work correctly with mechanisms such as Microsoft
|
---|
2919 | Structure Exceptions or C++ exceptions (compiler willing - note that gcc
|
---|
2920 | does not by default support interworking of C and C++ error handling.)
|
---|
2921 | Reverted changes to call png_longjmp in contrib/gregbook where it is not
|
---|
2922 | appropriate. If mainprog->jmpbuf is used by setjmp, then png_longjmp
|
---|
2923 | cannot be used.
|
---|
2924 | Changed "extern PNG_EXPORT" to "PNG_EXPORT" in png.h (Jan Nijtmans)
|
---|
2925 | Changed "extern" to "PNG_EXTERN" in pngpriv.h (except for the 'extern "C" {')
|
---|
2926 |
|
---|
2927 | Version 1.5.0beta34 [July 12, 2010]
|
---|
2928 | Put #ifndef PNG_EXTERN, #endif around the define PNG_EXTERN in pngpriv.h
|
---|
2929 |
|
---|
2930 | Version 1.5.0beta35 [July 24, 2010]
|
---|
2931 | Removed some newly-added TAB characters.
|
---|
2932 | Added -DNO_PNG_SNPRINTF to CFLAGS in scripts/makefile.dj2
|
---|
2933 | Moved the definition of png_snprintf() outside of the enclosing
|
---|
2934 | #ifdef blocks in pngconf.h
|
---|
2935 |
|
---|
2936 | Version 1.5.0beta36 [July 29, 2010]
|
---|
2937 | Patches by John Bowler:
|
---|
2938 | Fixed point APIs are now supported throughout (no missing APIs).
|
---|
2939 | Internal fixed point arithmetic support exists for all internal floating
|
---|
2940 | point operations.
|
---|
2941 | sCAL validates the floating point strings it is passed.
|
---|
2942 | Safe, albeit rudimentary, Watcom support is provided by PNG_API_RULE==2
|
---|
2943 | Two new APIs exist to get the number of passes without turning on the
|
---|
2944 | PNG_INTERLACE transform and to get the number of rows in the current
|
---|
2945 | pass.
|
---|
2946 | A new test program, pngvalid.c, validates the gamma code.
|
---|
2947 | Errors in the 16-bit gamma correction (overflows) have been corrected.
|
---|
2948 | cHRM chunk testing is done consistently (previously the floating point
|
---|
2949 | API bypassed it, because the test really didn't work on FP, now the test
|
---|
2950 | is performed on the actual values to be stored in the PNG file so it
|
---|
2951 | works in the FP case too.)
|
---|
2952 | Most floating point APIs now simply call the fixed point APIs after
|
---|
2953 | converting the values to the fixed point form used in the PNG file.
|
---|
2954 | The standard headers no longer include zlib.h, which is currently only
|
---|
2955 | required for pngstruct.h and can therefore be internal.
|
---|
2956 | Revised png_get_int_32 to undo the PNG two's complement representation of
|
---|
2957 | negative numbers.
|
---|
2958 |
|
---|
2959 | Version 1.5.0beta37 [July 30, 2010]
|
---|
2960 | Added a typecast in png_get_int_32() in png.h and pngrutil.h to avoid
|
---|
2961 | a compiler warning.
|
---|
2962 | Replaced oFFs 0,0 with oFFs -10,20 in pngtest.png
|
---|
2963 |
|
---|
2964 | Version 1.5.0beta38 [July 31, 2010]
|
---|
2965 | Implemented remaining "_fixed" functions.
|
---|
2966 | Corrected a number of recently introduced warnings mostly resulting from
|
---|
2967 | safe but uncast assignments to shorter integers. Also added a zlib
|
---|
2968 | VStudio release library project because the latest zlib Official Windows
|
---|
2969 | build does not include such a thing.
|
---|
2970 | Revised png_get_int_16() to be similar to png_get_int_32().
|
---|
2971 | Restored projects/visualc71.
|
---|
2972 |
|
---|
2973 | Version 1.5.0beta39 [August 2, 2010]
|
---|
2974 | VisualC/GCC warning fixes, VisualC build fixes
|
---|
2975 | The changes include support for function attributes in VC in addition to
|
---|
2976 | those already present in GCC - necessary because without these some
|
---|
2977 | warnings are unavoidable. Fixes include signed/unsigned fixes in
|
---|
2978 | pngvalid and checks with gcc -Wall -Wextra -Wunused.
|
---|
2979 | VC requires function attributes on function definitions as well as
|
---|
2980 | declarations, PNG_FUNCTION has been added to enable this and the
|
---|
2981 | relevant function definitions changed.
|
---|
2982 |
|
---|
2983 | Version 1.5.0beta40 [August 6, 2010]
|
---|
2984 | Correct use of _WINDOWS_ in pngconf.h
|
---|
2985 | Removed png_mem_ #defines; they are no longer used.
|
---|
2986 | Added the sRGB chunk to pngtest.png
|
---|
2987 |
|
---|
2988 | Version 1.5.0beta41 [August 11, 2010]
|
---|
2989 | Added the cHRM chunk to pngtest.png
|
---|
2990 | Don't try to use version-script with cygwin/mingw.
|
---|
2991 | Revised contrib/gregbook to work under cygwin/mingw.
|
---|
2992 |
|
---|
2993 | Version 1.5.0beta42 [August 18, 2010]
|
---|
2994 | Add .dll.a to the list of extensions to be symlinked by Makefile.am (Yaakov)
|
---|
2995 | Made all API functions that have const arguments and constant string
|
---|
2996 | literal pointers declare them (John Bowler).
|
---|
2997 |
|
---|
2998 | Version 1.5.0beta43 [August 20, 2010]
|
---|
2999 | Removed spurious tabs, shorten long lines (no source change)
|
---|
3000 | Also added scripts/chkfmt to validate the format of all the files that can
|
---|
3001 | reasonably be validated (it is suggested to run "make distclean" before
|
---|
3002 | checking, because some machine generated files have long lines.)
|
---|
3003 | Reformatted the CHANGES file to be more consistent throughout.
|
---|
3004 | Made changes to address various issues identified by GCC, mostly
|
---|
3005 | signed/unsigned and shortening problems on assignment but also a few
|
---|
3006 | difficult to optimize (for GCC) loops.
|
---|
3007 | Fixed non-GCC fixed point builds. In png.c a declaration was misplaced
|
---|
3008 | in an earlier update. Fixed to declare the auto variables at the head.
|
---|
3009 | Use cexcept.h in pngvalid.c.
|
---|
3010 |
|
---|
3011 | Version 1.5.0beta44 [August 24, 2010]
|
---|
3012 | Updated CMakeLists.txt to use CMAKE_INSTALL_LIBDIR variable; useful for
|
---|
3013 | installing libpng in /usr/lib64 (Funda Wang).
|
---|
3014 | Revised CMakeLists.txt to put the man pages in share/man/man* not man/man*
|
---|
3015 | Revised CMakeLists.txt to make symlinks instead of copies when installing.
|
---|
3016 | Changed PNG_LIB_NAME from pngNN to libpngNN in CMakeLists.txt (Philip Lowman)
|
---|
3017 | Implemented memory checks within pngvalid
|
---|
3018 | Reformatted/rearranged pngvalid.c to assist use of progressive reader.
|
---|
3019 | Check interlaced images in pngvalid
|
---|
3020 | Clarified pngusr.h comments in pnglibconf.dfa
|
---|
3021 | Simplified the pngvalid error-handling code now that cexcept.h is in place.
|
---|
3022 | Implemented progressive reader in pngvalid.c for standard tests
|
---|
3023 | Implemented progressive read in pngvalid.c gamma tests
|
---|
3024 | Turn on progressive reader in pngvalid.c by default and tidy code.
|
---|
3025 |
|
---|
3026 | Version 1.5.0beta45 [August 26, 2010]
|
---|
3027 | Added an explicit make step to projects/vstudio for pnglibconf.h
|
---|
3028 | Also corrected zlib.vcxproj into which Visual Studio had introduced
|
---|
3029 | what it calls an "authoring error". The change to make pnglibconf.h
|
---|
3030 | simply copies the file; in the future it may actually generate the
|
---|
3031 | file from scripts/pnglibconf.dfa as the other build systems do.
|
---|
3032 | Changed pngvalid to work when floating point APIs are disabled
|
---|
3033 | Renamed the prebuilt scripts/pnglibconf.h to scripts/pnglibconf.h.prebuilt
|
---|
3034 | Supply default values for PNG_USER_PRIVATEBUILD and PNG_USER_DLLFNAME_POSTFIX
|
---|
3035 | in pngpriv.h in case the user neglected to define them in their pngusr.h
|
---|
3036 |
|
---|
3037 | Version 1.5.0beta46 [August 28, 2010]
|
---|
3038 | Added new private header files to libpng_sources in CMakeLists.txt
|
---|
3039 | Added PNG_READ_16BIT, PNG_WRITE_16BIT, and PNG_16BIT options.
|
---|
3040 | Added reference to scripts/pnglibconf.h.prebuilt in the visualc71 project.
|
---|
3041 |
|
---|
3042 | Version 1.5.0beta47 [September 11, 2010]
|
---|
3043 | Fixed a number of problems with 64-bit compilation reported by Visual
|
---|
3044 | Studio 2010 (John Bowler).
|
---|
3045 |
|
---|
3046 | Version 1.5.0beta48 [October 4, 2010]
|
---|
3047 | Updated CMakeLists.txt (Philip Lowman).
|
---|
3048 | Revised autogen.sh to recognize and use $AUTOCONF, $AUTOMAKE, $AUTOHEADER,
|
---|
3049 | $AUTOPOINT, $ACLOCAL and $LIBTOOLIZE
|
---|
3050 | Fixed problem with symbols creation in Makefile.am which was assuming that
|
---|
3051 | all versions of ccp write to standard output by default (Martin Banky). The
|
---|
3052 | bug was introduced in libpng-1.2.9beta5.
|
---|
3053 | Removed unused mkinstalldirs.
|
---|
3054 |
|
---|
3055 | Version 1.5.0beta49 [October 8, 2010]
|
---|
3056 | Undid Makefile.am revision of 1.5.0beta48.
|
---|
3057 |
|
---|
3058 | Version 1.5.0beta50 [October 14, 2010]
|
---|
3059 | Revised Makefile.in to account for mkinstalldirs being removed.
|
---|
3060 | Added some "(unsigned long)" typecasts in printf statements in pngvalid.c.
|
---|
3061 | Suppressed a compiler warning in png_handle_sPLT().
|
---|
3062 | Check for out-of-range text compression mode in png_set_text().
|
---|
3063 |
|
---|
3064 | Version 1.5.0beta51 [October 15, 2010]
|
---|
3065 | Changed embedded dates to "(PENDING RELEASE) in beta releases (and future
|
---|
3066 | rc releases) to minimize the difference between releases.
|
---|
3067 |
|
---|
3068 | Version 1.5.0beta52 [October 16, 2010]
|
---|
3069 | Restored some of the embedded dates (in png.h, png.c, documentation, etc.)
|
---|
3070 |
|
---|
3071 | Version 1.5.0beta53 [October 18, 2010]
|
---|
3072 | Updated INSTALL to mention using "make maintainer-clean" and to remove
|
---|
3073 | obsolete statement about a custom ltmain.sh
|
---|
3074 | Disabled "color-tests" by default in Makefile.am so it will work with
|
---|
3075 | automake versions earlier than 1.11.1
|
---|
3076 | Use document name "libpng-manual.txt" instead of "libpng-<version>.txt"
|
---|
3077 | to simplify version differences.
|
---|
3078 | Removed obsolete remarks about setjmp handling from INSTALL.
|
---|
3079 | Revised and renamed the typedef in png.h and png.c that was designed
|
---|
3080 | to catch library and header mismatch.
|
---|
3081 |
|
---|
3082 | Version 1.5.0beta54 [November 10, 2010]
|
---|
3083 | Require 48 bytes, not 64 bytes, for big_row_buf in overflow checks.
|
---|
3084 | Used a consistent structure for the pngget.c functions.
|
---|
3085 |
|
---|
3086 | Version 1.5.0beta55 [November 21, 2010]
|
---|
3087 | Revised png_get_uint_32, png_get_int_32, png_get_uint_16 (Cosmin)
|
---|
3088 | Moved reading of file signature into png_read_sig (Cosmin)
|
---|
3089 | Fixed atomicity of chunk header serialization (Cosmin)
|
---|
3090 | Added test for io_state in pngtest.c (Cosmin)
|
---|
3091 | Added "#!/bin/sh" at the top of contrib/pngminim/*/gather.sh scripts.
|
---|
3092 | Changes to remove gcc warnings (John Bowler)
|
---|
3093 | Certain optional gcc warning flags resulted in warnings in libpng code.
|
---|
3094 | With these changes only -Wconversion and -Wcast-qual cannot be turned on.
|
---|
3095 | Changes are trivial rearrangements of code. -Wconversion is not possible
|
---|
3096 | for pngrutil.c (because of the widespread use of += et al on variables
|
---|
3097 | smaller than (int) or (unsigned int)) and -Wcast-qual is not possible
|
---|
3098 | with pngwio.c and pngwutil.c because the 'write' callback and zlib
|
---|
3099 | compression both fail to declare their input buffers with 'const'.
|
---|
3100 |
|
---|
3101 | Version 1.5.0beta56 [December 7, 2010]
|
---|
3102 | Added the private PNG_UNUSED() macro definition in pngpriv.h.
|
---|
3103 | Added some commentary about PNG_EXPORT in png.h and pngconf.h
|
---|
3104 | Revised PNG_EXPORT() macro and added PNG_EXPORTA() macro, with the
|
---|
3105 | objective of simplifying and improving the cosmetic appearance of png.h.
|
---|
3106 | Fixed some incorrect "=" macro names in pnglibconf.dfa
|
---|
3107 | Included documentation of changes in 1.5.0 from 1.4.x in libpng-manual.txt
|
---|
3108 |
|
---|
3109 | Version 1.5.0beta57 [December 9, 2010]
|
---|
3110 | Documented the pngvalid gamma error summary with additional comments and
|
---|
3111 | print statements.
|
---|
3112 | Improved missing symbol handling in checksym.awk; symbols missing in both
|
---|
3113 | the old and new files can now be optionally ignored, treated as errors
|
---|
3114 | or warnings.
|
---|
3115 | Removed references to pngvcrd.c and pnggccrd.c from the vstudio project.
|
---|
3116 | Updated "libpng14" to "libpng15" in the visualc71 project.
|
---|
3117 | Enabled the strip16 tests in pngvalid.`
|
---|
3118 | Don't display test results (except PASS/FAIL) when running "make test".
|
---|
3119 | Instead put them in pngtest-log.txt
|
---|
3120 | Added "--with-zprefix=<string>" to configure.ac
|
---|
3121 | Updated the prebuilt configuration files to autoconf version 2.68
|
---|
3122 |
|
---|
3123 | Version 1.5.0beta58 [December 19, 2010]
|
---|
3124 | Fixed interlace image handling and add test cases (John Bowler)
|
---|
3125 | Fixed the clean rule in Makefile.am to remove pngtest-log.txt
|
---|
3126 | Made minor changes to work around warnings in gcc 3.4
|
---|
3127 |
|
---|
3128 | Version 1.5.0rc01 [December 27, 2010]
|
---|
3129 | No changes.
|
---|
3130 |
|
---|
3131 | Version 1.5.0rc02 [December 27, 2010]
|
---|
3132 | Eliminated references to the scripts/*.def files in project/visualc71.
|
---|
3133 |
|
---|
3134 | Version 1.5.0rc03 [December 28, 2010]
|
---|
3135 | Eliminated scripts/*.def and revised Makefile.am accordingly
|
---|
3136 |
|
---|
3137 | Version 1.5.0rc04 [December 29, 2010]
|
---|
3138 | Fixed bug in background transformation handling in pngrtran.c (it was
|
---|
3139 | looking for the flag in png_ptr->transformations instead of in
|
---|
3140 | png_ptr->flags) (David Raymond).
|
---|
3141 |
|
---|
3142 | Version 1.5.0rc05 [December 31, 2010]
|
---|
3143 | Fixed typo in a comment in CMakeLists.txt (libpng14 => libpng15) (Cosmin)
|
---|
3144 |
|
---|
3145 | Version 1.5.0rc06 [January 4, 2011]
|
---|
3146 | Changed the new configure option "zprefix=string" to "zlib-prefix=string"
|
---|
3147 |
|
---|
3148 | Version 1.5.0rc07 [January 4, 2011]
|
---|
3149 | Updated copyright year.
|
---|
3150 |
|
---|
3151 | Version 1.5.0 [January 6, 2011]
|
---|
3152 | No changes.
|
---|
3153 |
|
---|
3154 | version 1.5.1beta01 [January 8, 2011]
|
---|
3155 | Added description of png_set_crc_action() to the manual.
|
---|
3156 | Added a note in the manual that the type of the iCCP profile was changed
|
---|
3157 | from png_charpp to png_bytepp in png_get_iCCP(). This change happened
|
---|
3158 | in version 1.5.0beta36 but is not noted in the CHANGES. Similarly,
|
---|
3159 | it was changed from png_charpp to png_const_bytepp in png_set_iCCP().
|
---|
3160 | Ensure that png_rgb_to_gray ignores palette mapped images, if libpng
|
---|
3161 | internally happens to call it with one, and fixed a failure to handle
|
---|
3162 | palette mapped images correctly. This fixes CVE-2690.
|
---|
3163 |
|
---|
3164 | Version 1.5.1beta02 [January 14, 2011]
|
---|
3165 | Fixed a bug in handling of interlaced images (bero at arklinux.org).
|
---|
3166 | Updated CMakeLists.txt (Clifford Yapp)
|
---|
3167 |
|
---|
3168 | Version 1.5.1beta03 [January 14, 2011]
|
---|
3169 | Fixed typecasting of some png_debug() statements (Cosmin)
|
---|
3170 |
|
---|
3171 | Version 1.5.1beta04 [January 16, 2011]
|
---|
3172 | Updated documentation of png_set|get_tRNS() (Thomas Klausner).
|
---|
3173 | Mentioned in the documentation that applications must #include "zlib.h"
|
---|
3174 | if they need access to anything in zlib.h, and that a number of
|
---|
3175 | macros such as png_memset() are no longer accessible by applications.
|
---|
3176 | Corrected pngvalid gamma test "sample" function to access all of the color
|
---|
3177 | samples of each pixel, instead of sampling the red channel three times.
|
---|
3178 | Prefixed variable names index, div, exp, gamma with "png_" to avoid "shadow"
|
---|
3179 | warnings, and (mistakenly) changed png_exp() to exp().
|
---|
3180 |
|
---|
3181 | Version 1.5.1beta05 [January 16, 2011]
|
---|
3182 | Changed variable names png_index, png_div, png_exp, and png_gamma to
|
---|
3183 | char_index, divisor, exp_b10, and gamma_val, respectively, and
|
---|
3184 | changed exp() back to png_exp().
|
---|
3185 |
|
---|
3186 | Version 1.5.1beta06 [January 20, 2011]
|
---|
3187 | Prevent png_push_crc_skip() from hanging while reading an unknown chunk
|
---|
3188 | or an over-large compressed zTXt chunk with the progressive reader.
|
---|
3189 | Eliminated more GCC "shadow" warnings.
|
---|
3190 | Revised png_fixed() in png.c to avoid compiler warning about reaching the
|
---|
3191 | end without returning anything.
|
---|
3192 |
|
---|
3193 | Version 1.5.1beta07 [January 22, 2011]
|
---|
3194 | In the manual, describe the png_get_IHDR() arguments in the correct order.
|
---|
3195 | Added const_png_structp and const_png_infop types, and used them in
|
---|
3196 | prototypes for most png_get_*() functions.
|
---|
3197 |
|
---|
3198 | Version 1.5.1beta08 [January 23, 2011]
|
---|
3199 | Added png_get_io_chunk_type() and deprecated png_get_io_chunk_name()
|
---|
3200 | Added synopses for the IO_STATE functions and other missing synopses
|
---|
3201 | to the manual. Removed the synopses from libpngpf.3 because they
|
---|
3202 | were out of date and no longer useful. Better information can be
|
---|
3203 | obtained by reading the prototypes and comments in pngpriv.h
|
---|
3204 | Attempted to fix cpp on Solaris with S. Studio 12 cc, fix build
|
---|
3205 | Added a make macro DFNCPP that is a CPP that will accept the tokens in
|
---|
3206 | a .dfn file and adds configure stuff to test for such a CPP. ./configure
|
---|
3207 | should fail if one is not available.
|
---|
3208 | Corrected const_png_ in png.h to png_const_ to avoid polluting the namespace.
|
---|
3209 | Added png_get_current_row_number and png_get_current_pass_number for the
|
---|
3210 | benefit of the user transform callback.
|
---|
3211 | Added png_process_data_pause and png_process_data_skip for the benefit of
|
---|
3212 | progressive readers that need to stop data processing or want to optimize
|
---|
3213 | skipping of unread data (e.g., if the reader marks a chunk to be skipped.)
|
---|
3214 |
|
---|
3215 | Version 1.5.1beta09 [January 24, 2011]
|
---|
3216 | Enhanced pngvalid, corrected an error in gray_to_rgb, corrected doc error.
|
---|
3217 | pngvalid contains tests of transforms, which tests are currently disabled
|
---|
3218 | because they are incompletely tested. gray_to_rgb was failing to expand
|
---|
3219 | the bit depth for smaller bit depth images; this seems to be a long
|
---|
3220 | standing error and resulted, apparently, in invalid output
|
---|
3221 | (CVE-2011-0408, CERT VU#643140). The documentation did not accurately
|
---|
3222 | describe what libpng really does when converting RGB to gray.
|
---|
3223 |
|
---|
3224 | Version 1.5.1beta10 [January 27, 2010]
|
---|
3225 | Fixed incorrect examples of callback prototypes in the manual, that were
|
---|
3226 | introduced in libpng-1.0.0.
|
---|
3227 | In addition the order of the png_get_uint macros with respect to the
|
---|
3228 | relevant function definitions has been reversed. This helps the
|
---|
3229 | preprocessing of the symbol files be more robust. Furthermore, the
|
---|
3230 | symbol file preprocessing now uses -DPNG_NO_USE_READ_MACROS even when
|
---|
3231 | the library may actually be built with PNG_USE_READ_MACROS; this stops
|
---|
3232 | the read macros interfering with the symbol file format.
|
---|
3233 | Made the manual, synopses, and function prototypes use the function
|
---|
3234 | argument names file_gamma, int_file_gamma, and srgb_intent consistently.
|
---|
3235 |
|
---|
3236 | Version 1.5.1beta11 [January 28, 2011]
|
---|
3237 | Changed PNG_UNUSED from "param=param;" to "{if(param){}}".
|
---|
3238 | Corrected local variable type in new API png_process_data_skip()
|
---|
3239 | The type was self-evidently incorrect but only causes problems on 64-bit
|
---|
3240 | architectures.
|
---|
3241 | Added transform tests to pngvalid and simplified the arguments.
|
---|
3242 |
|
---|
3243 | Version 1.5.1rc01 [January 29, 2011]
|
---|
3244 | No changes.
|
---|
3245 |
|
---|
3246 | Version 1.5.1rc02 [January 31, 2011]
|
---|
3247 | Added a request in the manual that applications do not use "png_" or
|
---|
3248 | "PNG_" to begin any of their own symbols.
|
---|
3249 | Changed PNG_UNUSED to "(void)param;" and updated the commentary in pngpriv.h
|
---|
3250 |
|
---|
3251 | Version 1.5.1 [February 3, 2011]
|
---|
3252 | No changes.
|
---|
3253 |
|
---|
3254 | Version 1.5.2beta01 [February 13, 2011]
|
---|
3255 | More -Wshadow fixes for older gcc compilers. Older gcc versions apparently
|
---|
3256 | check formal parameters names in function declarations (as well as
|
---|
3257 | definitions) to see if they match a name in the global namespace.
|
---|
3258 | Revised PNG_EXPORTA macro to not use an empty parameter, to accommodate the
|
---|
3259 | old VisualC++ preprocessor.
|
---|
3260 | Turned on interlace handling in png_read_png().
|
---|
3261 | Fixed gcc pedantic warnings.
|
---|
3262 | Handle longjmp in Cygwin.
|
---|
3263 | Fixed png_get_current_row_number() in the interlaced case.
|
---|
3264 | Cleaned up ALPHA flags and transformations.
|
---|
3265 | Implemented expansion to 16 bits.
|
---|
3266 |
|
---|
3267 | Version 1.5.2beta02 [February 19, 2011]
|
---|
3268 | Fixed mistake in the descriptions of user read_transform and write_transform
|
---|
3269 | function prototypes in the manual. The row_info struct is png_row_infop.
|
---|
3270 | Reverted png_get_current_row_number() to previous (1.5.2beta01) behavior.
|
---|
3271 | Corrected png_get_current_row_number documentation
|
---|
3272 | Fixed the read/write row callback documentation.
|
---|
3273 | This documents the current behavior, where the callback is called after
|
---|
3274 | every row with information pertaining to the next row.
|
---|
3275 |
|
---|
3276 | Version 1.5.2beta03 [March 3, 2011]
|
---|
3277 | Fixed scripts/makefile.vcwin32
|
---|
3278 | Updated contrib/pngsuite/README to add the word "modify".
|
---|
3279 | Define PNG_ALLOCATED to blank when _MSC_VER<1300.
|
---|
3280 |
|
---|
3281 | Version 1.5.2rc01 [March 19, 2011]
|
---|
3282 | Define remaining attributes to blank when MSC_VER<1300.
|
---|
3283 | ifdef out mask arrays in pngread.c when interlacing is not supported.
|
---|
3284 |
|
---|
3285 | Version 1.5.2rc02 [March 22, 2011]
|
---|
3286 | Added a hint to try CPP=/bin/cpp if "cpp -E" fails in scripts/pnglibconf.mak
|
---|
3287 | and in contrib/pngminim/*/makefile, eg., on SunOS 5.10, and removed "strip"
|
---|
3288 | from the makefiles.
|
---|
3289 | Fixed a bug (present since libpng-1.0.7) that makes png_handle_sPLT() fail
|
---|
3290 | to compile when PNG_NO_POINTER_INDEXING is defined (Chubanov Kirill)
|
---|
3291 |
|
---|
3292 | Version 1.5.2rc03 [March 24, 2011]
|
---|
3293 | Don't include standard header files in png.h while building the symbol table,
|
---|
3294 | to avoid cpp failure on SunOS (introduced PNG_BUILDING_SYMBOL_TABLE macro).
|
---|
3295 |
|
---|
3296 | Version 1.5.2 [March 31, 2011]
|
---|
3297 | No changes.
|
---|
3298 |
|
---|
3299 | Version 1.5.3beta01 [April 1, 2011]
|
---|
3300 | Re-initialize the zlib compressor before compressing non-IDAT chunks.
|
---|
3301 | Added API functions (png_set_text_compression_level() and four others) to
|
---|
3302 | set parameters for zlib compression of non-IDAT chunks.
|
---|
3303 |
|
---|
3304 | Version 1.5.3beta02 [April 3, 2011]
|
---|
3305 | Updated scripts/symbols.def with new API functions.
|
---|
3306 | Only compile the new zlib re-initializing code when text or iCCP is
|
---|
3307 | supported, using PNG_WRITE_COMPRESSED_TEXT_SUPPORTED macro.
|
---|
3308 | Improved the optimization of the zlib CMF byte (see libpng-1.2.6beta03).
|
---|
3309 | Optimize the zlib CMF byte in non-IDAT compressed chunks
|
---|
3310 |
|
---|
3311 | Version 1.5.3beta03 [April 16, 2011]
|
---|
3312 | Fixed gcc -ansi -pedantic compile. A strict ANSI system does not have
|
---|
3313 | snprintf, and the "__STRICT_ANSI__" detects that condition more reliably
|
---|
3314 | than __STDC__ (John Bowler).
|
---|
3315 | Removed the PNG_PTR_NORETURN attribute because it too dangerous. It tells
|
---|
3316 | the compiler that a user supplied callback (the error handler) does not
|
---|
3317 | return, yet there is no guarantee in practice that the application code
|
---|
3318 | will correctly implement the error handler because the compiler only
|
---|
3319 | issues a warning if there is a mistake (John Bowler).
|
---|
3320 | Removed the no-longer-used PNG_DEPSTRUCT macro.
|
---|
3321 | Updated the zlib version to 1.2.5 in the VStudio project.
|
---|
3322 | Fixed 64-bit builds where png_uint_32 is smaller than png_size_t in
|
---|
3323 | pngwutil.c (John Bowler).
|
---|
3324 | Fixed bug with stripping the filler or alpha channel when writing, that
|
---|
3325 | was introduced in libpng-1.5.2beta01 (bug report by Andrew Church).
|
---|
3326 |
|
---|
3327 | Version 1.5.3beta04 [April 27, 2011]
|
---|
3328 | Updated pngtest.png with the new zlib CMF optimization.
|
---|
3329 | Cleaned up conditional compilation code and of background/gamma handling
|
---|
3330 | Internal changes only except a new option to avoid compiling the
|
---|
3331 | png_build_grayscale_palette API (which is not used at all internally.)
|
---|
3332 | The main change is to move the transform tests (READ_TRANSFORMS,
|
---|
3333 | WRITE_TRANSFORMS) up one level to the caller of the APIs. This avoids
|
---|
3334 | calls to spurious functions if all transforms are disabled and slightly
|
---|
3335 | simplifies those functions. Pngvalid modified to handle this.
|
---|
3336 | A minor change is to stop the strip_16 and expand_16 interfaces from
|
---|
3337 | disabling each other; this allows the future alpha premultiplication
|
---|
3338 | code to use 16-bit intermediate values while still producing 8-bit output.
|
---|
3339 | png_do_background and png_do_gamma have been simplified to take a single
|
---|
3340 | pointer to the png_struct rather than pointers to every item required
|
---|
3341 | from the png_struct. This makes no practical difference to the internal
|
---|
3342 | code.
|
---|
3343 | A serious bug in the pngvalid internal routine 'standard_display_init' has
|
---|
3344 | been fixed - this failed to initialize the red channel and accidentally
|
---|
3345 | initialized the alpha channel twice.
|
---|
3346 | Changed png_struct jmp_buf member name from png_jmpbuf to tmp_jmpbuf to
|
---|
3347 | avoid a possible clash with the png_jmpbuf macro on some platforms.
|
---|
3348 |
|
---|
3349 | Version 1.5.3beta05 [May 6, 2011]
|
---|
3350 | Added the "_POSIX_SOURCE" feature test macro to ensure libpng sees the
|
---|
3351 | correct API. _POSIX_SOURCE is defined in pngpriv.h, pngtest.c and
|
---|
3352 | pngvalid.c to ensure that POSIX conformant systems disable non-POSIX APIs.
|
---|
3353 | Removed png_snprintf and added formatted warning messages. This change adds
|
---|
3354 | internal APIs to allow png_warning messages to have parameters without
|
---|
3355 | requiring the host OS to implement snprintf. As a side effect the
|
---|
3356 | dependency of the tIME-supporting RFC1132 code on stdio is removed and
|
---|
3357 | PNG_NO_WARNINGS does actually work now.
|
---|
3358 | Pass "" instead of '\0' to png_default_error() in png_err(). This mistake
|
---|
3359 | was introduced in libpng-1.2.20beta01. This fixes CVE-2011-2691.
|
---|
3360 | Added PNG_WRITE_OPTIMIZE_CMF_SUPPORTED macro to make the zlib "CMF" byte
|
---|
3361 | optimization configurable.
|
---|
3362 | IDAT compression failed if preceded by a compressed text chunk (bug
|
---|
3363 | introduced in libpng-1.5.3beta01-02). This was because the attempt to
|
---|
3364 | reset the zlib stream in png_write_IDAT happened after the first IDAT
|
---|
3365 | chunk had been deflated - much too late. In this change internal
|
---|
3366 | functions were added to claim/release the z_stream and, hopefully, make
|
---|
3367 | the code more robust. Also deflateEnd checking is added - previously
|
---|
3368 | libpng would ignore an error at the end of the stream.
|
---|
3369 |
|
---|
3370 | Version 1.5.3beta06 [May 8, 2011]
|
---|
3371 | Removed the -D_ALL_SOURCE from definitions for AIX in CMakeLists.txt
|
---|
3372 | Implemented premultiplied alpha support: png_set_alpha_mode API
|
---|
3373 |
|
---|
3374 | Version 1.5.3beta07 [May 11, 2011]
|
---|
3375 | Added expand_16 support to the high level interface.
|
---|
3376 | Added named value and 'flag' gamma support to png_set_gamma. Made a minor
|
---|
3377 | change from the previous (unreleased) ABI/API to hide the exact value used
|
---|
3378 | for Macs - it's not a good idea to embed this in the ABI!
|
---|
3379 | Moved macro definitions for PNG_HAVE_IHDR, PNG_HAVE_PLTE, and PNG_AFTER_IDAT
|
---|
3380 | from pngpriv.h to png.h because they must be visible to applications
|
---|
3381 | that call png_set_unknown_chunks().
|
---|
3382 | Check for up->location !PNG_AFTER_IDAT when writing unknown chunks
|
---|
3383 | before IDAT.
|
---|
3384 |
|
---|
3385 | Version 1.5.3beta08 [May 16, 2011]
|
---|
3386 | Improved "pngvalid --speed" to exclude more of pngvalid from the time.
|
---|
3387 | Documented png_set_alpha_mode(), other changes in libpng.3/libpng-manual.txt
|
---|
3388 | The cHRM chunk now sets the defaults for png_set_rgb_to_gray() (when negative
|
---|
3389 | parameters are supplied by the caller), while in the absence of cHRM
|
---|
3390 | sRGB/Rec 709 values are still used. This introduced a divide-by-zero
|
---|
3391 | bug in png_handle_cHRM().
|
---|
3392 | The bKGD chunk no longer overwrites the background value set by
|
---|
3393 | png_set_background(), allowing the latter to be used before the file
|
---|
3394 | header is read. It never performed any useful function to override
|
---|
3395 | the default anyway.
|
---|
3396 | Added memory overwrite and palette image checks to pngvalid.c
|
---|
3397 | Previously palette image code was poorly checked. Since the transformation
|
---|
3398 | code has a special palette path in most cases this was a severe weakness.
|
---|
3399 | Minor cleanup and some extra checking in pngrutil.c and pngrtran.c. When
|
---|
3400 | expanding an indexed image, always expand to RGBA if transparency is
|
---|
3401 | present.
|
---|
3402 |
|
---|
3403 | Version 1.5.3beta09 [May 17, 2011]
|
---|
3404 | Reversed earlier 1.5.3 change of transformation order; move png_expand_16
|
---|
3405 | back where it was. The change doesn't work because it requires 16-bit
|
---|
3406 | gamma tables when the code only generates 8-bit ones. This fails
|
---|
3407 | silently; the libpng code just doesn't do any gamma correction. Moving
|
---|
3408 | the tests back leaves the old, inaccurate, 8-bit gamma calculations, but
|
---|
3409 | these are clearly better than none!
|
---|
3410 |
|
---|
3411 | Version 1.5.3beta10 [May 20, 2011]
|
---|
3412 |
|
---|
3413 | png_set_background() and png_expand_16() did not work together correctly.
|
---|
3414 | This problem is present in 1.5.2; if png_set_background is called with
|
---|
3415 | need_expand false and the matching 16 bit color libpng erroneously just
|
---|
3416 | treats it as an 8-bit color because of where png_do_expand_16 is in the
|
---|
3417 | transform list. This simple fix reduces the supplied colour to 8-bits,
|
---|
3418 | so it gets smashed, but this is better than the current behavior.
|
---|
3419 | Added tests for expand16, more fixes for palette image tests to pngvalid.
|
---|
3420 | Corrects the code for palette image tests and disables attempts to
|
---|
3421 | validate palette colors.
|
---|
3422 |
|
---|
3423 | Version 1.5.3rc01 [June 3, 2011]
|
---|
3424 | No changes.
|
---|
3425 |
|
---|
3426 | Version 1.5.3rc02 [June 8, 2011]
|
---|
3427 | Fixed uninitialized memory read in png_format_buffer() (Bug report by
|
---|
3428 | Frank Busse, CVE-2011-2501, related to CVE-2004-0421).
|
---|
3429 |
|
---|
3430 | Version 1.5.3beta11 [June 11, 2011]
|
---|
3431 | Fixed png_handle_sCAL which is broken in 1.5. This fixes CVE 2011-2692.
|
---|
3432 | Added sCAL to pngtest.png
|
---|
3433 | Revised documentation about png_set_user_limits() to say that it also affects
|
---|
3434 | png writing.
|
---|
3435 | Revised handling of png_set_user_limits() so that it can increase the
|
---|
3436 | limit beyond the PNG_USER_WIDTH|HEIGHT_MAX; previously it could only
|
---|
3437 | reduce it.
|
---|
3438 | Make the 16-to-8 scaling accurate. Dividing by 256 with no rounding is
|
---|
3439 | wrong (high by one) 25% of the time. Dividing by 257 with rounding is
|
---|
3440 | wrong in 128 out of 65536 cases. Getting the right answer all the time
|
---|
3441 | without division is easy.
|
---|
3442 | Added "_SUPPORTED" to the PNG_WRITE_CUSTOMIZE_ZTXT_COMPRESSION macro.
|
---|
3443 | Added projects/owatcom, an IDE project for OpenWatcom to replace
|
---|
3444 | scripts/makefile.watcom. This project works with OpenWatcom 1.9. The
|
---|
3445 | IDE autogenerates appropriate makefiles (libpng.mk) for batch processing.
|
---|
3446 | The project is configurable, unlike the Visual Studio project, so long
|
---|
3447 | as the developer has an awk.
|
---|
3448 | Changed png_set_gAMA to limit the gamma value range so that the inverse
|
---|
3449 | of the stored value cannot overflow the fixed point representation,
|
---|
3450 | and changed other things OpenWatcom warns about.
|
---|
3451 | Revised pngvalid.c to test PNG_ALPHA_MODE_SUPPORTED correctly. This allows
|
---|
3452 | pngvalid to build when ALPHA_MODE is not supported, which is required if
|
---|
3453 | it is to build on libpng 1.4.
|
---|
3454 | Removed string/memory macros that are no longer used and are not
|
---|
3455 | necessarily fully supportable, particularly png_strncpy and png_snprintf.
|
---|
3456 | Added log option to pngvalid.c and attempted to improve gamma messages.
|
---|
3457 |
|
---|
3458 | Version 1.5.3 [omitted]
|
---|
3459 | People found the presence of a beta release following an rc release
|
---|
3460 | to be confusing; therefore we bump the version to libpng-1.5.4beta01
|
---|
3461 | and there will be no libpng-1.5.3 release.
|
---|
3462 |
|
---|
3463 | Version 1.5.4beta01 [June 14, 2011]
|
---|
3464 | Made it possible to undefine PNG_READ_16_TO_8_ACCURATE_SCALE_SUPPORTED
|
---|
3465 | to get the same (inaccurate) output as libpng-1.5.2 and earlier.
|
---|
3466 | Moved definitions of PNG_HAVE_IHDR, PNG_AFTER_IDAT, and PNG_HAVE_PLTE
|
---|
3467 | outside of an unknown-chunk block in png.h because they are also
|
---|
3468 | needed for other uses.
|
---|
3469 |
|
---|
3470 | Version 1.5.4beta02 [June 14, 2011]
|
---|
3471 | Fixed and clarified LEGACY 16-to-8 scaling code.
|
---|
3472 | Added png_set_chop_16() API, to match inaccurate results from previous
|
---|
3473 | libpng versions.
|
---|
3474 | Removed the ACCURATE and LEGACY options (they are no longer useable)
|
---|
3475 | Use the old scaling method for background if png_set_chop_16() was
|
---|
3476 | called.
|
---|
3477 | Made png_set_chop_16() API removeable by disabling PNG_CHOP_16_TO_8_SUPPORTED
|
---|
3478 |
|
---|
3479 | Version 1.5.4beta03 [June 15, 2011]
|
---|
3480 | Fixed a problem in png_do_expand_palette() exposed by optimization in
|
---|
3481 | 1.5.3beta06
|
---|
3482 | Also removed a spurious and confusing "trans" member ("trans") from png_info.
|
---|
3483 | The palette expand optimization prevented expansion to an intermediate RGBA
|
---|
3484 | form if tRNS was present but alpha was marked to be stripped; this exposed
|
---|
3485 | a check for tRNS in png_do_expand_palette() which is inconsistent with the
|
---|
3486 | code elsewhere in libpng.
|
---|
3487 | Correction to the expand_16 code; removed extra instance of
|
---|
3488 | png_set_scale_16_to_8 from pngpriv.h
|
---|
3489 |
|
---|
3490 | Version 1.5.4beta04 [June 16, 2011]
|
---|
3491 | Added a missing "#ifdef PNG_READ_BACKGROUND_SUPPORTED/#endif" in pngrtran.c
|
---|
3492 | Added PNG_TRANSFORM_CHOP_16 to the high-level read transforms.
|
---|
3493 | Made PNG_READ_16_TO_8_ACCURATE_SCALE configurable again. If this is
|
---|
3494 | not enabled, png_set_strip_16() and png_do_scale_16_to_8() aren't built.
|
---|
3495 | Revised contrib/visupng, gregbook, and pngminim to demonstrate chop_16_to_8
|
---|
3496 |
|
---|
3497 | Version 1.5.4beta05 [June 16, 2011]
|
---|
3498 | Renamed png_set_strip_16() to png_set_scale_16() and renamed
|
---|
3499 | png_set_chop_16() to png_set_strip(16) in an attempt to minimize the
|
---|
3500 | behavior changes between libpng14 and libpng15.
|
---|
3501 |
|
---|
3502 | Version 1.5.4beta06 [June 18, 2011]
|
---|
3503 | Fixed new bug that was causing both strip_16 and scale_16 to be applied.
|
---|
3504 |
|
---|
3505 | Version 1.5.4beta07 [June 19, 2011]
|
---|
3506 | Fixed pngvalid, simplified macros, added checking for 0 in sCAL.
|
---|
3507 | The ACCURATE scale macro is no longer defined in 1.5 - call the
|
---|
3508 | png_scale_16_to_8 API. Made sure that PNG_READ_16_TO_8 is still defined
|
---|
3509 | if the png_strip_16_to_8 API is present. png_check_fp_number now
|
---|
3510 | maintains some state so that positive, negative and zero values are
|
---|
3511 | identified. sCAL uses these to be strictly spec conformant.
|
---|
3512 |
|
---|
3513 | Version 1.5.4beta08 [June 23, 2011]
|
---|
3514 | Fixed pngvalid if ACCURATE_SCALE is defined.
|
---|
3515 | Updated scripts/pnglibconf.h.prebuilt.
|
---|
3516 |
|
---|
3517 | Version 1.5.4rc01 [June 30, 2011]
|
---|
3518 | Define PNG_ALLOCATED to "restrict" only if MSC_VER >= 1400.
|
---|
3519 |
|
---|
3520 | Version 1.5.4 [July 7, 2011]
|
---|
3521 | No changes.
|
---|
3522 |
|
---|
3523 | Version 1.5.5beta01 [July 13, 2011]
|
---|
3524 | Fixed some typos and made other minor changes in the manual.
|
---|
3525 | Updated contrib/pngminus/makefile.std (Samuli Souminen)
|
---|
3526 |
|
---|
3527 | Version 1.5.5beta02 [July 14, 2011]
|
---|
3528 | Revised Makefile.am and Makefile.in to look in the right directory for
|
---|
3529 | pnglibconf.h.prebuilt
|
---|
3530 |
|
---|
3531 | Version 1.5.5beta03 [July 27, 2011]
|
---|
3532 | Enabled compilation with g++ compiler. This compiler does not recognize
|
---|
3533 | the file extension, so it always compiles with C++ rules. Made minor
|
---|
3534 | changes to pngrutil.c to cast results where C++ expects it but C does not.
|
---|
3535 | Minor editing of libpng.3 and libpng-manual.txt.
|
---|
3536 |
|
---|
3537 | Version 1.5.5beta04 [July 29, 2011]
|
---|
3538 | Revised CMakeLists.txt (Clifford Yapp)
|
---|
3539 | Updated commentary about the png_rgb_to_gray() default coefficients
|
---|
3540 | in the manual and in pngrtran.c
|
---|
3541 |
|
---|
3542 | Version 1.5.5beta05 [August 17, 2011]
|
---|
3543 | Prevent unexpected API exports from non-libpng DLLs on Windows. The "_DLL"
|
---|
3544 | is removed from the test of whether a DLL is being built (this erroneously
|
---|
3545 | caused the libpng APIs to be marked as DLL exports in static builds under
|
---|
3546 | Microsoft Visual Studio). Almost all of the libpng building configuration
|
---|
3547 | is moved from pngconf.h to pngpriv.h, but PNG_DLL_EXPORT remains in
|
---|
3548 | pngconf.h, though, so that it is colocated with the import definition (it
|
---|
3549 | is no longer used anywhere in the installed headers). The VStudio project
|
---|
3550 | definitions have been cleaned up: "_USRDLL" has been removed from the
|
---|
3551 | static library builds (this was incorrect), and PNG_USE_DLL has been added
|
---|
3552 | to pngvalid to test the functionality (pngtest does not supply it,
|
---|
3553 | deliberately). The spurious "_EXPORTS" has been removed from the
|
---|
3554 | libpng build (all these errors were a result of copy/paste between project
|
---|
3555 | configurations.)
|
---|
3556 | Added new types and internal functions for CIE RGB end point handling to
|
---|
3557 | pngpriv.h (functions yet to be implemented).
|
---|
3558 |
|
---|
3559 | Version 1.5.5beta06 [August 26, 2011]
|
---|
3560 | Ensure the CMAKE_LIBRARY_OUTPUT_DIRECTORY is set in CMakeLists.txt
|
---|
3561 | (Clifford Yap)
|
---|
3562 | Fixes to rgb_to_gray and cHRM XYZ APIs (John Bowler):
|
---|
3563 | The rgb_to_gray code had errors when combined with gamma correction.
|
---|
3564 | Some pixels were treated as true grey when they weren't and such pixels
|
---|
3565 | and true grey ones were not gamma corrected (the original value of the
|
---|
3566 | red component was used instead). APIs to get and set cHRM using color
|
---|
3567 | space end points have been added and the rgb_to_gray code that defaults
|
---|
3568 | based on cHRM, and the divide-by-zero bug in png_handle_cHRM (CERT
|
---|
3569 | VU#477046, CVE-2011-3328, introduced in 1.5.4) have been corrected.
|
---|
3570 | A considerable number of tests has been added to pngvalid for the
|
---|
3571 | rgb_to_gray transform.
|
---|
3572 | Arithmetic errors in rgb_to_gray whereby the calculated gray value was
|
---|
3573 | truncated to the bit depth rather than rounded have been fixed except in
|
---|
3574 | the 8-bit non-gamma-corrected case (where consistency seems more important
|
---|
3575 | than correctness.) The code still has considerable inaccuracies in the
|
---|
3576 | 8-bit case because 8-bit linear arithmetic is used.
|
---|
3577 |
|
---|
3578 | Version 1.5.5beta07 [September 7, 2011]
|
---|
3579 | Added "$(ARCH)" option to makefile.darwin
|
---|
3580 | Added SunOS support to configure.ac and Makefile.am
|
---|
3581 | Changed png_chunk_benign_error() to png_warning() in png.c, in
|
---|
3582 | png_XYZ_from_xy_checked().
|
---|
3583 |
|
---|
3584 | Version 1.5.5beta08 [September 10, 2011]
|
---|
3585 | Fixed 64-bit compilation errors (gcc). The errors fixed relate
|
---|
3586 | to conditions where types that are 32 bits in the GCC 32-bit
|
---|
3587 | world (uLong and png_size_t) become 64 bits in the 64-bit
|
---|
3588 | world. This produces potential truncation errors which the
|
---|
3589 | compiler correctly flags.
|
---|
3590 | Relocated new HAVE_SOLARIS_LD definition in configure.ac
|
---|
3591 | Constant changes for 64-bit compatibility (removal of L suffixes). The
|
---|
3592 | 16-bit cases still use "L" as we don't have a 16-bit test system.
|
---|
3593 |
|
---|
3594 | Version 1.5.5rc01 [September 15, 2011]
|
---|
3595 | Removed "L" suffixes in pngpriv.h
|
---|
3596 |
|
---|
3597 | Version 1.5.5 [September 22, 2011]
|
---|
3598 | No changes.
|
---|
3599 |
|
---|
3600 | Version 1.5.6beta01 [September 22, 2011]
|
---|
3601 | Fixed some 64-bit type conversion warnings in pngrtran.c
|
---|
3602 | Moved row_info from png_struct to a local variable.
|
---|
3603 | The various interlace mask arrays have been made into arrays of
|
---|
3604 | bytes and made PNG_CONST and static (previously some arrays were
|
---|
3605 | marked PNG_CONST and some weren't).
|
---|
3606 | Additional checks have been added to the transform code to validate the
|
---|
3607 | pixel depths after the transforms on both read and write.
|
---|
3608 | Removed some redundant code from pngwrite.c, in png_destroy_write_struct().
|
---|
3609 | Changed chunk reading/writing code to use png_uint_32 instead of png_byte[4].
|
---|
3610 | This removes the need to allocate temporary strings for chunk names on
|
---|
3611 | the stack in the read/write code. Unknown chunk handling still uses the
|
---|
3612 | string form because this is exposed in the API.
|
---|
3613 |
|
---|
3614 | Version 1.5.6beta02 [September 26, 2011]
|
---|
3615 | Added a note in the manual the png_read_update_info() must be called only
|
---|
3616 | once with a particular info_ptr.
|
---|
3617 | Fixed a typo in the definition of the new PNG_STRING_FROM_CHUNK(s,c) macro.
|
---|
3618 |
|
---|
3619 | Version 1.5.6beta03 [September 28, 2011]
|
---|
3620 | Revised test-pngtest.sh to report FAIL when pngtest fails.
|
---|
3621 | Added "--strict" option to pngtest, to report FAIL when the failure is
|
---|
3622 | only because the resulting valid files are different.
|
---|
3623 | Revised CMakeLists.txt to work with mingw and removed some material from
|
---|
3624 | CMakeLists.txt that is no longer useful in libpng-1.5.
|
---|
3625 |
|
---|
3626 | Version 1.5.6beta04 [October 5, 2011]
|
---|
3627 | Fixed typo in Makefile.in and Makefile.am ("-M Wl" should be "-M -Wl")."
|
---|
3628 |
|
---|
3629 | Version 1.5.6beta05 [October 12, 2011]
|
---|
3630 | Speed up png_combine_row() for interlaced images. This reduces the generality
|
---|
3631 | of the code, allowing it to be optimized for Adam7 interlace. The masks
|
---|
3632 | passed to png_combine_row() are now generated internally, avoiding
|
---|
3633 | some code duplication and localizing the interlace handling somewhat.
|
---|
3634 | Align png_struct::row_buf - previously it was always unaligned, caused by
|
---|
3635 | a bug in the code that attempted to align it; the code needs to subtract
|
---|
3636 | one from the pointer to take account of the filter byte prepended to
|
---|
3637 | each row.
|
---|
3638 | Optimized png_combine_row() when rows are aligned. This gains a small
|
---|
3639 | percentage for 16-bit and 32-bit pixels in the typical case where the
|
---|
3640 | output row buffers are appropriately aligned. The optimization was not
|
---|
3641 | previously possible because the png_struct buffer was always misaligned.
|
---|
3642 | Fixed bug in png_write_chunk_header() debug print, introduced in 1.5.6beta01.
|
---|
3643 |
|
---|
3644 | Version 1.5.6beta06 [October 17, 2011]
|
---|
3645 | Removed two redundant tests for uninitialized row.
|
---|
3646 | Fixed a relatively harmless memory overwrite in compressed text writing
|
---|
3647 | with a 1 byte zlib buffer.
|
---|
3648 | Add ability to call png_read_update_info multiple times to pngvalid.c.
|
---|
3649 | Fixes for multiple calls to png_read_update_info. These fixes attend to
|
---|
3650 | most of the errors revealed in pngvalid, however doing the gamma work
|
---|
3651 | twice results in inaccuracies that can't be easily fixed. There is now
|
---|
3652 | a warning in the code if this is going to happen.
|
---|
3653 | Turned on multiple png_read_update_info in pngvalid transform tests.
|
---|
3654 | Prevent libpng from overwriting unused bits at the end of the image when
|
---|
3655 | it is not byte aligned, while reading. Prior to libpng-1.5.6 libpng would
|
---|
3656 | overwrite the partial byte at the end of each row if the row width was not
|
---|
3657 | an exact multiple of 8 bits and the image is not interlaced.
|
---|
3658 |
|
---|
3659 | Version 1.5.6beta07 [October 21, 2011]
|
---|
3660 | Made png_ptr->prev_row an aligned pointer into png_ptr->big_prev_row
|
---|
3661 | (Mans Rullgard).
|
---|
3662 |
|
---|
3663 | Version 1.5.6rc01 [October 26, 2011]
|
---|
3664 | Changed misleading "Missing PLTE before cHRM" warning to "Out of place cHRM"
|
---|
3665 |
|
---|
3666 | Version 1.5.6rc02 [October 27, 2011]
|
---|
3667 | Added LSR() macro to defend against buggy compilers that evaluate non-taken
|
---|
3668 | code branches and complain about out-of-range shifts.
|
---|
3669 |
|
---|
3670 | Version 1.5.6rc03 [October 28, 2011]
|
---|
3671 | Renamed the LSR() macro to PNG_LSR() and added PNG_LSL() macro.
|
---|
3672 | Fixed compiler warnings with Intel and MSYS compilers. The logical shift
|
---|
3673 | fix for Microsoft Visual C is required by other compilers, so this
|
---|
3674 | enables that fix for all compilers when using compile-time constants.
|
---|
3675 | Under MSYS 'byte' is a name declared in a system header file, so we
|
---|
3676 | changed the name of a local variable to avoid the warnings that result.
|
---|
3677 | Added #define PNG_ALIGN_TYPE PNG_ALIGN_NONE to contrib/pngminim/*/pngusr.h
|
---|
3678 |
|
---|
3679 | Version 1.5.6 [November 3, 2011]
|
---|
3680 | No changes.
|
---|
3681 |
|
---|
3682 | Version 1.5.7beta01 [November 4, 2011]
|
---|
3683 | Added support for ARM processor, when decoding all PNG up-filtered rows
|
---|
3684 | and any other-filtered rows with 3 or 4 bytes per pixel (Mans Rullgard).
|
---|
3685 | Fixed bug in pngvalid on early allocation failure; fixed type cast in
|
---|
3686 | pngmem.c; pngvalid would attempt to call png_error() if the allocation
|
---|
3687 | of a png_struct or png_info failed. This would probably have led to a
|
---|
3688 | crash. The pngmem.c implementation of png_malloc() included a cast
|
---|
3689 | to png_size_t which would fail on large allocations on 16-bit systems.
|
---|
3690 | Fix for the preprocessor of the Intel C compiler. The preprocessor
|
---|
3691 | splits adjacent @ signs with a space; this changes the concatenation
|
---|
3692 | token from @-@-@ to PNG_JOIN; that should work with all compiler
|
---|
3693 | preprocessors.
|
---|
3694 | Paeth filter speed improvements from work by Siarhei Siamashka. This
|
---|
3695 | changes the 'Paeth' reconstruction function to improve the GCC code
|
---|
3696 | generation on x86. The changes are only part of the suggested ones;
|
---|
3697 | just the changes that definitely improve speed and remain simple.
|
---|
3698 | The changes also slightly increase the clarity of the code.
|
---|
3699 |
|
---|
3700 | Version 1.5.7beta02 [November 11, 2011]
|
---|
3701 | Check compression_type parameter in png_get_iCCP and remove spurious
|
---|
3702 | casts. The compression_type parameter is always assigned to, so must
|
---|
3703 | be non-NULL. The cast of the profile length potentially truncated the
|
---|
3704 | value unnecessarily on a 16-bit int system, so the cast of the (byte)
|
---|
3705 | compression type to (int) is specified by ANSI-C anyway.
|
---|
3706 | Fixed FP division by zero in pngvalid.c; the 'test_pixel' code left
|
---|
3707 | the sBIT fields in the test pixel as 0, which resulted in a floating
|
---|
3708 | point division by zero which was irrelevant but causes systems where
|
---|
3709 | FP exceptions cause a crash. Added code to pngvalid to turn on FP
|
---|
3710 | exceptions if the appropriate glibc support is there to ensure this is
|
---|
3711 | tested in the future.
|
---|
3712 | Updated scripts/pnglibconf.mak and scripts/makefile.std to handle the
|
---|
3713 | new PNG_JOIN macro.
|
---|
3714 | Added versioning to pnglibconf.h comments.
|
---|
3715 | Simplified read/write API initial version; basic read/write tested on
|
---|
3716 | a variety of images, limited documentation (in the header file.)
|
---|
3717 | Installed more accurate linear to sRGB conversion tables. The slightly
|
---|
3718 | modified tables reduce the number of 16-bit values that
|
---|
3719 | convert to an off-by-one 8-bit value. The "makesRGB.c" code that was used
|
---|
3720 | to generate the tables is now in a contrib/sRGBtables sub-directory.
|
---|
3721 |
|
---|
3722 | Version 1.5.7beta03 [November 17, 2011]
|
---|
3723 | Removed PNG_CONST from the sRGB table declarations in pngpriv.h and png.c
|
---|
3724 | Added run-time detection of NEON support.
|
---|
3725 | Added contrib/libtests; includes simplified API test and timing test and
|
---|
3726 | a color conversion utility for rapid checking of failed 'pngstest' results.
|
---|
3727 | Multiple transform bug fixes plus a work-round for double gamma correction.
|
---|
3728 | libpng does not support more than one transform that requires linear data
|
---|
3729 | at once - if this is tried typically the results is double gamma
|
---|
3730 | correction. Since the simplified APIs can need rgb to gray combined with
|
---|
3731 | a compose operation it is necessary to do one of these outside the main
|
---|
3732 | libpng transform code. This check-in also contains fixes to various bugs
|
---|
3733 | in the simplified APIs themselves and to some bugs in compose and rgb to
|
---|
3734 | gray (on palette) itself.
|
---|
3735 | Fixes for C++ compilation using g++ When libpng source is compiled
|
---|
3736 | using g++. The compiler imposes C++ rules on the C source; thus it
|
---|
3737 | is desirable to make the source work with either C or C++ rules
|
---|
3738 | without throwing away useful error information. This change adds
|
---|
3739 | png_voidcast to allow C semantic (void*) cases or the corresponding
|
---|
3740 | C++ static_cast operation, as appropriate.
|
---|
3741 | Added --noexecstack to assembler file compilation. GCC does not set
|
---|
3742 | this on assembler compilation, even though it does on C compilation.
|
---|
3743 | This creates security issues if assembler code is enabled; the
|
---|
3744 | work-around is to set it by default in the flags for $(CCAS)
|
---|
3745 | Work around compilers that don't support declaration of const data. Some
|
---|
3746 | compilers fault 'extern const' data declarations (because the data is
|
---|
3747 | not initialized); this turns on const-ness only for compilers where
|
---|
3748 | this is known to work.
|
---|
3749 |
|
---|
3750 | Version 1.5.7beta04 [November 17, 2011]
|
---|
3751 | Since the gcc driver does not recognize the --noexecstack flag, we must
|
---|
3752 | use the -Wa prefix to have it passed through to the assembler.
|
---|
3753 | Also removed a duplicate setting of this flag.
|
---|
3754 | Added files that were omitted from the libpng-1.5.7beta03 zip distribution.
|
---|
3755 |
|
---|
3756 | Version 1.5.7beta05 [November 25, 2011]
|
---|
3757 | Removed "zTXt" from warning in generic chunk decompression function.
|
---|
3758 | Validate time settings passed to png_set_tIME() and png_convert_to_rfc1123()
|
---|
3759 | (Frank Busse). Note: This prevented CVE-2015-7981 from affecting
|
---|
3760 | libpng-1.5.7 and later.
|
---|
3761 | Added MINGW support to CMakeLists.txt
|
---|
3762 | Reject invalid compression flag or method when reading the iTXt chunk.
|
---|
3763 | Backed out 'simplified' API changes. The API seems too complex and there
|
---|
3764 | is a lack of consensus or enthusiasm for the proposals. The API also
|
---|
3765 | reveals significant bugs inside libpng (double gamma correction and the
|
---|
3766 | known bug of being unable to retrieve a corrected palette). It seems
|
---|
3767 | better to wait until the bugs, at least, are corrected.
|
---|
3768 | Moved pngvalid.c into contrib/libtests
|
---|
3769 | Rebuilt Makefile.in, configure, etc., with autoconf-2.68
|
---|
3770 |
|
---|
3771 | Version 1.5.7rc01 [December 1, 2011]
|
---|
3772 | Replaced an "#if" with "#ifdef" in pngrtran.c
|
---|
3773 | Revised #if PNG_DO_BC block in png.c (use #ifdef and add #else)
|
---|
3774 |
|
---|
3775 | Version 1.5.7rc02 [December 5, 2011]
|
---|
3776 | Revised project files and contrib/pngvalid/pngvalid.c to account for
|
---|
3777 | the relocation of pngvalid into contrib/libtests.
|
---|
3778 | Revised pngconf.h to use " __declspec(restrict)" only when MSC_VER >= 1400,
|
---|
3779 | as in libpng-1.5.4.
|
---|
3780 | Put CRLF line endings in the owatcom project files.
|
---|
3781 |
|
---|
3782 | Version 1.5.7rc03 [December 7, 2011]
|
---|
3783 | Updated CMakeLists.txt to account for the relocation of pngvalid.c
|
---|
3784 |
|
---|
3785 | Version 1.5.7 [December 15, 2011]
|
---|
3786 | Minor fixes to pngvalid.c for gcc 4.6.2 compatibility to remove warnings
|
---|
3787 | reported by earlier versions.
|
---|
3788 | Fixed minor memset/sizeof errors in pngvalid.c.
|
---|
3789 |
|
---|
3790 | Version 1.6.0beta01 [December 15, 2011]
|
---|
3791 | Removed machine-generated configure files from the GIT repository (they will
|
---|
3792 | continue to appear in the tarball distributions and in the libpng15 and
|
---|
3793 | earlier GIT branches).
|
---|
3794 | Restored the new 'simplified' API, which was started in libpng-1.5.7beta02
|
---|
3795 | but later deleted from libpng-1.5.7beta05.
|
---|
3796 | Added example programs for the new 'simplified' API.
|
---|
3797 | Added ANSI-C (C90) headers and require them, and take advantage of the
|
---|
3798 | change. Also fixed some of the projects/* and contrib/* files that needed
|
---|
3799 | updates for libpng16 and the move of pngvalid.c.
|
---|
3800 | With this change the required ANSI-C header files are assumed to exist: the
|
---|
3801 | implementation must provide float.h, limits.h, stdarg.h and stddef.h and
|
---|
3802 | libpng relies on limits.h and stddef.h existing and behaving as defined
|
---|
3803 | (the other two required headers aren't used). Non-ANSI systems that don't
|
---|
3804 | have stddef.h or limits.h will have to provide an appropriate fake
|
---|
3805 | containing the relevant types and #defines.
|
---|
3806 | Dropped support for 16-bit platforms. The use of FAR/far has been eliminated
|
---|
3807 | and the definition of png_alloc_size_t is now controlled by a flag so
|
---|
3808 | that 'small size_t' systems can select it if necessary. Libpng 1.6 may
|
---|
3809 | not currently work on such systems -- it seems likely that it will
|
---|
3810 | ask 'malloc' for more than 65535 bytes with any image that has a
|
---|
3811 | sufficiently large row size (rather than simply failing to read such
|
---|
3812 | images).
|
---|
3813 | New tools directory containing tools used to generate libpng code.
|
---|
3814 | Fixed race conditions in parallel make builds. With higher degrees of
|
---|
3815 | parallelism during 'make' the use of the same temporary file names such
|
---|
3816 | as 'dfn*' can result in a race where a temporary file from one arm of the
|
---|
3817 | build is deleted or overwritten in another arm. This changes the
|
---|
3818 | temporary files for suffix rules to always use $* and ensures that the
|
---|
3819 | non-suffix rules use unique file names.
|
---|
3820 |
|
---|
3821 | Version 1.6.0beta02 [December 21, 2011]
|
---|
3822 | Correct configure builds where build and source directories are separate.
|
---|
3823 | The include path of 'config.h' was erroneously made relative in pngvalid.c
|
---|
3824 | in libpng 1.5.7.
|
---|
3825 |
|
---|
3826 | Version 1.6.0beta03 [December 22, 2011]
|
---|
3827 | Start-up code size improvements, error handler flexibility. These changes
|
---|
3828 | alter how the tricky allocation of the initial png_struct and png_info
|
---|
3829 | structures are handled. png_info is now handled in pretty much the same
|
---|
3830 | way as everything else, except that the allocations handle NULL return
|
---|
3831 | silently. png_struct is changed in a similar way on allocation and on
|
---|
3832 | deallocation a 'safety' error handler is put in place (which should never
|
---|
3833 | be required). The error handler itself is changed to permit mismatches
|
---|
3834 | in the application and libpng error buffer size; however, this means a
|
---|
3835 | silent change to the API to return the jmp_buf if the size doesn't match
|
---|
3836 | the size from the libpng compilation; libpng now allocates the memory and
|
---|
3837 | this may fail. Overall these changes result in slight code size
|
---|
3838 | reductions; however, this is a reduction in code that is always executed
|
---|
3839 | so is particularly valuable. Overall on a 64-bit system the libpng DLL
|
---|
3840 | decreases in code size by 1733 bytes. pngerror.o increases in size by
|
---|
3841 | about 465 bytes because of the new functionality.
|
---|
3842 | Added png_convert_to_rfc1123_buffer() and deprecated png_convert_to_rfc1123()
|
---|
3843 | to avoid including a spurious buffer in the png_struct.
|
---|
3844 |
|
---|
3845 | Version 1.6.0beta04 [December 30, 2011]
|
---|
3846 | Regenerated configure scripts with automake-1.11.2
|
---|
3847 | Eliminated png_info_destroy(). It is now used only in png.c and only calls
|
---|
3848 | one other internal function and memset().
|
---|
3849 | Enabled png_get_sCAL_fixed() if floating point APIs are enabled. Previously
|
---|
3850 | it was disabled whenever internal fixed point arithmetic was selected,
|
---|
3851 | which meant it didn't exist even on systems where FP was available but not
|
---|
3852 | preferred.
|
---|
3853 | Added pngvalid.c compile time checks for const APIs.
|
---|
3854 | Implemented 'restrict' for png_info and png_struct. Because of the way
|
---|
3855 | libpng works both png_info and png_struct are always accessed via a
|
---|
3856 | single pointer. This means adding C99 'restrict' to the pointer gives
|
---|
3857 | the compiler some opportunity to optimize the code. This change allows
|
---|
3858 | that.
|
---|
3859 | Moved AC_MSG_CHECKING([if libraries can be versioned]) later to the proper
|
---|
3860 | location in configure.ac (Gilles Espinasse).
|
---|
3861 | Changed png_memcpy to C assignment where appropriate. Changed all those
|
---|
3862 | uses of png_memcpy that were doing a simple assignment to assignments
|
---|
3863 | (all those cases where the thing being copied is a non-array C L-value).
|
---|
3864 | Added some error checking to png_set_*() routines.
|
---|
3865 | Removed the reference to the non-exported function png_memcpy() from
|
---|
3866 | example.c.
|
---|
3867 | Fixed the Visual C 64-bit build - it requires jmp_buf to be aligned, but
|
---|
3868 | it had become misaligned.
|
---|
3869 | Revised contrib/pngminus/pnm2png.c to avoid warnings when png_uint_32
|
---|
3870 | and unsigned long are of different sizes.
|
---|
3871 |
|
---|
3872 | Version 1.6.0beta05 [January 15, 2012]
|
---|
3873 | Updated manual with description of the simplified API (copied from png.h)
|
---|
3874 | Fix bug in pngerror.c: some long warnings were being improperly truncated
|
---|
3875 | (CVE-2011-3464, bug introduced in libpng-1.5.3beta05).
|
---|
3876 |
|
---|
3877 | Version 1.6.0beta06 [January 24, 2012]
|
---|
3878 | Added palette support to the simplified APIs. This commit
|
---|
3879 | changes some of the macro definitions in png.h, app code
|
---|
3880 | may need corresponding changes.
|
---|
3881 | Increased the formatted warning buffer to 192 bytes.
|
---|
3882 | Added color-map support to simplified API. This is an initial version for
|
---|
3883 | review; the documentation has not yet been updated.
|
---|
3884 | Fixed Min/GW uninstall to remove libpng.dll.a
|
---|
3885 |
|
---|
3886 | Version 1.6.0beta07 [January 28, 2012]
|
---|
3887 | Eliminated Intel icc/icl compiler warnings. The Intel (GCC derived)
|
---|
3888 | compiler issues slightly different warnings from those issued by the
|
---|
3889 | current versions of GCC. This eliminates those warnings by
|
---|
3890 | adding/removing casts and small code rewrites.
|
---|
3891 | Updated configure.ac from autoupdate: added --enable-werror option.
|
---|
3892 | Also some layout regularization and removal of introduced tab characters
|
---|
3893 | (replaced with 3-character indentation). Obsolete macros identified by
|
---|
3894 | autoupdate have been removed; the replacements are all in 2.59 so
|
---|
3895 | the pre-req hasn't been changed. --enable-werror checks for support
|
---|
3896 | for -Werror (or the given argument) in the compiler. This mimics the
|
---|
3897 | gcc configure option by allowing -Werror to be turned on safely; without
|
---|
3898 | the option the tests written in configure itself fail compilation because
|
---|
3899 | they cause compiler warnings.
|
---|
3900 | Rewrote autogen.sh to run autoreconf instead of running tools one-by-one.
|
---|
3901 | Conditionalize the install rules for MINGW and CYGWIN in CMakeLists.txt and
|
---|
3902 | set CMAKE_LIBRARY_OUTPUT_DIRECTORY to "lib" on all platforms (C. Yapp).
|
---|
3903 | Freeze libtool files in the 'scripts' directory. This version of autogen.sh
|
---|
3904 | attempts to dissuade people from running it when it is not, or should not,
|
---|
3905 | be necessary. In fact, autogen.sh does not work when run in a libpng
|
---|
3906 | directory extracted from a tar distribution anymore. You must run it in
|
---|
3907 | a GIT clone instead.
|
---|
3908 | Added two images to contrib/pngsuite (1-bit and 2-bit transparent grayscale),
|
---|
3909 | and renamed three whose names were inconsistent with those in
|
---|
3910 | pngsuite/README.txt.
|
---|
3911 |
|
---|
3912 | Version 1.6.0beta08 [February 1, 2012]
|
---|
3913 | Fixed Image::colormap misalignment in pngstest.c
|
---|
3914 | Check libtool/libtoolize version number (2.4.2) in configure.ac
|
---|
3915 | Divide test-pngstest.sh into separate pngstest runs for basic and
|
---|
3916 | transparent images.
|
---|
3917 | Moved automake options to AM_INIT_AUTOMAKE in configure.ac
|
---|
3918 | Added color-tests, silent-rules (Not yet implemented in Makefile.am) and
|
---|
3919 | version checking to configure.ac
|
---|
3920 | Improved pngstest speed by not doing redundant tests and add const to
|
---|
3921 | the background parameter of png_image_finish_read. The --background
|
---|
3922 | option is now done automagically only when required, so that command-line
|
---|
3923 | option no longer exists.
|
---|
3924 | Cleaned up pngpriv.h to consistently declare all functions and data.
|
---|
3925 | Also eliminated PNG_CONST_DATA, which is apparently not needed but we
|
---|
3926 | can't be sure until it is gone.
|
---|
3927 | Added symbol prefixing that allows all the libpng external symbols
|
---|
3928 | to be prefixed (suggested by Reuben Hawkins).
|
---|
3929 | Updated "ftbb*.png" list in the owatcom and vstudio projects.
|
---|
3930 | Fixed 'prefix' builds on clean systems. The generation of pngprefix.h
|
---|
3931 | should not require itself.
|
---|
3932 | Updated INSTALL to explain that autogen.sh must be run in a GIT clone,
|
---|
3933 | not in a libpng directory extracted from a tar distribution.
|
---|
3934 |
|
---|
3935 | Version 1.6.0beta09 [February 1, 2012]
|
---|
3936 | Reverted the prebuilt configure files to libpng-1.6.0beta05 condition.
|
---|
3937 |
|
---|
3938 | Version 1.6.0beta10 [February 3, 2012]
|
---|
3939 | Added Z_SOLO for zlib-1.2.6+ and correct pngstest tests
|
---|
3940 | Updated list of test images in CMakeLists.txt
|
---|
3941 | Updated the prebuilt configure files to current condition.
|
---|
3942 | Revised INSTALL information about autogen.sh; it works in tar distributions.
|
---|
3943 |
|
---|
3944 | Version 1.6.0beta11 [February 16, 2012]
|
---|
3945 | Fix character count in pngstest command in projects/owatcom/pngstest.tgt
|
---|
3946 | Revised test-pngstest.sh to report PASS/FAIL for each image.
|
---|
3947 | Updated documentation about the simplified API.
|
---|
3948 | Corrected estimate of error in libpng png_set_rgb_to_gray API. The API is
|
---|
3949 | extremely inaccurate for sRGB conversions because it uses an 8-bit
|
---|
3950 | intermediate linear value and it does not use the sRGB transform, so it
|
---|
3951 | suffers from the known instability in gamma transforms for values close
|
---|
3952 | to 0 (see Poynton). The net result is that the calculation has a maximum
|
---|
3953 | error of 14.99/255; 0.5/255^(1/2.2). pngstest now uses 15 for the
|
---|
3954 | permitted 8-bit error. This may still not be enough because of arithmetic
|
---|
3955 | error.
|
---|
3956 | Removed some unused arrays (with #ifdef) from png_read_push_finish_row().
|
---|
3957 | Fixed a memory overwrite bug in simplified read of RGB PNG with
|
---|
3958 | non-linear gamma Also bugs in the error checking in pngread.c and changed
|
---|
3959 | quite a lot of the checks in pngstest.c to be correct; either correctly
|
---|
3960 | written or not over-optimistic. The pngstest changes are insufficient to
|
---|
3961 | allow all possible RGB transforms to be passed; pngstest cmppixel needs
|
---|
3962 | to be rewritten to make it clearer which errors it allows and then changed
|
---|
3963 | to permit known inaccuracies.
|
---|
3964 | Removed tests for no-longer-used *_EMPTY_PLTE_SUPPORTED from pngstruct.h
|
---|
3965 | Fixed fixed/float API export conditionals. 1) If FIXED_POINT or
|
---|
3966 | FLOATING_POINT options were switched off, png.h ended up with lone ';'
|
---|
3967 | characters. This is not valid ANSI-C outside a function. The ';'
|
---|
3968 | characters have been moved inside the definition of PNG_FP_EXPORT and
|
---|
3969 | PNG_FIXED_EXPORT. 2) If either option was switched off, the declaration
|
---|
3970 | of the corresponding functions were completely omitted, even though some
|
---|
3971 | of them are still used internally. The result is still valid, but
|
---|
3972 | produces warnings from gcc with some warning options (including -Wall). The
|
---|
3973 | fix is to cause png.h to declare the functions with PNG_INTERNAL_FUNCTION
|
---|
3974 | when png.h is included from pngpriv.h.
|
---|
3975 | Check for invalid palette index while reading paletted PNG. When one is
|
---|
3976 | found, issue a warning and increase png_ptr->num_palette accordingly.
|
---|
3977 | Apps are responsible for checking to see if that happened.
|
---|
3978 |
|
---|
3979 | Version 1.6.0beta12 [February 18, 2012]
|
---|
3980 | Do not increase num_palette on invalid_index.
|
---|
3981 | Relocated check for invalid palette index to pngrtran.c, after unpacking
|
---|
3982 | the sub-8-bit pixels.
|
---|
3983 | Fixed CVE-2011-3026 buffer overrun bug. This bug was introduced when
|
---|
3984 | iCCP chunk support was added at libpng-1.0.6. Deal more correctly with the
|
---|
3985 | test on iCCP chunk length. Also removed spurious casts that may hide
|
---|
3986 | problems on 16-bit systems.
|
---|
3987 |
|
---|
3988 | Version 1.6.0beta13 [February 24, 2012]
|
---|
3989 | Eliminated redundant png_push_read_tEXt|zTXt|iTXt|unknown code from
|
---|
3990 | pngpread.c and use the sequential png_handle_tEXt, etc., in pngrutil.c;
|
---|
3991 | now that png_ptr->buffer is inaccessible to applications, the special
|
---|
3992 | handling is no longer useful.
|
---|
3993 | Added PNG_SAFE_LIMITS feature to pnglibconf.dfa, pngpriv.h, and new
|
---|
3994 | pngusr.dfa to reset the user limits to safe ones if PNG_SAFE_LIMITS is
|
---|
3995 | defined. To enable, use "CPPFLAGS=-DPNG_SAFE_LIMITS_SUPPORTED=1" on the
|
---|
3996 | configure command or put #define PNG_SAFE_LIMITS_SUPPORTED in
|
---|
3997 | pnglibconf.h.prebuilt and pnglibconf.h.
|
---|
3998 |
|
---|
3999 | Version 1.6.0beta14 [February 27, 2012]
|
---|
4000 | Added information about the new limits in the manual.
|
---|
4001 | Updated Makefile.in
|
---|
4002 |
|
---|
4003 | Version 1.6.0beta15 [March 2, 2012]
|
---|
4004 | Removed unused "current_text" members of png_struct and the png_free()
|
---|
4005 | of png_ptr->current_text from pngread.c
|
---|
4006 | Rewrote pngstest.c for substantial speed improvement.
|
---|
4007 | Fixed transparent pixel and 16-bit rgb tests in pngstest and removed a
|
---|
4008 | spurious check in pngwrite.c
|
---|
4009 | Added PNG_IMAGE_FLAG_FAST for the benefit of applications that store
|
---|
4010 | intermediate files, or intermediate in-memory data, while processing
|
---|
4011 | image data with the simplified API. The option makes the files larger
|
---|
4012 | but faster to write and read. pngstest now uses this by default; this
|
---|
4013 | can be disabled with the --slow option.
|
---|
4014 | Improved pngstest fine tuning of error numbers, new test file generator.
|
---|
4015 | The generator generates images that test the full range of sample values,
|
---|
4016 | allow the error numbers in pngstest to be tuned and checked. makepng
|
---|
4017 | also allows generation of images with extra chunks, although this is
|
---|
4018 | still work-in-progress.
|
---|
4019 | Added check for invalid palette index while reading.
|
---|
4020 | Fixed some bugs in ICC profile writing. The code should now accept
|
---|
4021 | all potentially valid ICC profiles and reject obviously invalid ones.
|
---|
4022 | It now uses png_error() to do so rather than casually writing a PNG
|
---|
4023 | without the necessary color data.
|
---|
4024 | Removed whitespace from the end of lines in all source files and scripts.
|
---|
4025 |
|
---|
4026 | Version 1.6.0beta16 [March 6, 2012]
|
---|
4027 | Relocated palette-index checking function from pngrutil.c to pngtrans.c
|
---|
4028 | Added palette-index checking while writing.
|
---|
4029 | Changed png_inflate() and calling routines to avoid overflow problems.
|
---|
4030 | This is an intermediate check-in that solves the immediate problems and
|
---|
4031 | introduces one performance improvement (avoiding a copy via png_ptr->zbuf.)
|
---|
4032 | Further changes will be made to make ICC profile handling more secure.
|
---|
4033 | Fixed build warnings (MSVC, GCC, GCC v3). Cygwin GCC with default options
|
---|
4034 | declares 'index' as a global, causing a warning if it is used as a local
|
---|
4035 | variable. GCC 64-bit warns about assigning a (size_t) (unsigned 64-bit)
|
---|
4036 | to an (int) (signed 32-bit). MSVC, however, warns about using the
|
---|
4037 | unary '-' operator on an unsigned value (even though it is well defined
|
---|
4038 | by ANSI-C to be ~x+1). The padding calculation was changed to use a
|
---|
4039 | different method. Removed the tests on png_ptr->pass.
|
---|
4040 | Added contrib/libtests/tarith.c to test internal arithmetic functions from
|
---|
4041 | png.c. This is a libpng maintainer program used to validate changes to the
|
---|
4042 | internal arithmetic functions.
|
---|
4043 | Made read 'inflate' handling like write 'deflate' handling. The read
|
---|
4044 | code now claims and releases png_ptr->zstream, like the write code.
|
---|
4045 | The bug whereby the progressive reader failed to release the zstream
|
---|
4046 | is now fixed, all initialization is delayed, and the code checks for
|
---|
4047 | changed parameters on deflate rather than always calling
|
---|
4048 | deflatedEnd/deflateInit.
|
---|
4049 | Validate the zTXt strings in pngvalid.
|
---|
4050 | Added code to validate the windowBits value passed to deflateInit2().
|
---|
4051 | If the call to deflateInit2() is wrong a png_warning will be issued
|
---|
4052 | (in fact this is harmless, but the PNG data produced may be sub-optimal).
|
---|
4053 |
|
---|
4054 | Version 1.6.0beta17 [March 10, 2012]
|
---|
4055 | Fixed PNG_LIBPNG_BUILD_BASE_TYPE definition.
|
---|
4056 | Reject all iCCP chunks after the first, even if the first one is invalid.
|
---|
4057 | Deflate/inflate was reworked to move common zlib calls into single
|
---|
4058 | functions [rw]util.c. A new shared keyword check routine was also added
|
---|
4059 | and the 'zbuf' is no longer allocated on progressive read. It is now
|
---|
4060 | possible to call png_inflate() incrementally. A warning is no longer
|
---|
4061 | issued if the language tag or translated keyword in the iTXt chunk
|
---|
4062 | has zero length.
|
---|
4063 | If benign errors are disabled use maximum window on ancillary inflate.
|
---|
4064 | This works round a bug introduced in 1.5.4 where compressed ancillary
|
---|
4065 | chunks could end up with a too-small windowBits value in the deflate
|
---|
4066 | header.
|
---|
4067 |
|
---|
4068 | Version 1.6.0beta18 [March 16, 2012]
|
---|
4069 | Issue a png_benign_error() instead of png_warning() about bad palette index.
|
---|
4070 | In pngtest, treat benign errors as errors if "-strict" is present.
|
---|
4071 | Fixed an off-by-one error in the palette index checking function.
|
---|
4072 | Fixed a compiler warning under Cygwin (Windows-7, 32-bit system)
|
---|
4073 | Revised example.c to put text strings in a temporary character array
|
---|
4074 | instead of directly assigning string constants to png_textp members.
|
---|
4075 | This avoids compiler warnings when -Wwrite-strings is enabled.
|
---|
4076 | Added output flushing to aid debugging under Visual Studio. Unfortunately
|
---|
4077 | this is necessary because the VS2010 output window otherwise simply loses
|
---|
4078 | the error messages on error (they weren't flushed to the window before
|
---|
4079 | the process exited, apparently!)
|
---|
4080 | Added configuration support for benign errors and changed the read
|
---|
4081 | default. Also changed some warnings in the iCCP and sRGB handling
|
---|
4082 | from to benign errors. Configuration now makes read benign
|
---|
4083 | errors warnings and write benign errors to errors by default (thus
|
---|
4084 | changing the behavior on read). The simplified API always forces
|
---|
4085 | read benign errors to warnings (regardless of the system default, unless
|
---|
4086 | this is disabled in which case the simplified API can't be built.)
|
---|
4087 |
|
---|
4088 | Version 1.6.0beta19 [March 18, 2012]
|
---|
4089 | Work around for duplicate row start calls; added warning messages.
|
---|
4090 | This turns on PNG_FLAG_DETECT_UNINITIALIZED to detect app code that
|
---|
4091 | fails to call one of the 'start' routines (not enabled in libpng-1.5
|
---|
4092 | because it is technically an API change, since it did normally work
|
---|
4093 | before.) It also makes duplicate calls to png_read_start_row (an
|
---|
4094 | internal function called at the start of the image read) benign, as
|
---|
4095 | they were before changes to use png_inflate_claim. Somehow webkit is
|
---|
4096 | causing this to happen; this is probably a mis-feature in the zlib
|
---|
4097 | changes so this commit is only a work-round.
|
---|
4098 | Removed erroneous setting of DETECT_UNINITIALIZED and added more
|
---|
4099 | checks. The code now does a png_error if an attempt is made to do the
|
---|
4100 | row initialization twice; this is an application error and it has
|
---|
4101 | serious consequences because the transform data in png_struct is
|
---|
4102 | changed by each call.
|
---|
4103 | Added application error reporting and added chunk names to read
|
---|
4104 | benign errors; also added --strict to pngstest - not enabled
|
---|
4105 | yet because a warning is produced.
|
---|
4106 | Avoid the double gamma correction warning in the simplified API.
|
---|
4107 | This allows the --strict option to pass in the pngstest checks
|
---|
4108 |
|
---|
4109 | Version 1.6.0beta20 [March 29, 2012]
|
---|
4110 | Changed chunk handler warnings into benign errors, incrementally load iCCP
|
---|
4111 | Added checksum-icc.c to contrib/tools
|
---|
4112 | Prevent PNG_EXPAND+PNG_SHIFT doing the shift twice.
|
---|
4113 | Recognize known sRGB ICC profiles while reading; prefer writing the
|
---|
4114 | iCCP profile over writing the sRGB chunk, controlled by the
|
---|
4115 | PNG_sRGB_PROFILE_CHECKS option.
|
---|
4116 | Revised png_set_text_2() to avoid potential memory corruption (fixes
|
---|
4117 | CVE-2011-3048, also known as CVE-2012-3425).
|
---|
4118 |
|
---|
4119 | Version 1.6.0beta21 [April 27, 2012]
|
---|
4120 | Revised scripts/makefile.darwin: use system zlib; remove quotes around
|
---|
4121 | architecture list; add missing ppc architecture; add architecture options
|
---|
4122 | to shared library link; don't try to create a shared lib based on missing
|
---|
4123 | RELEASE variable.
|
---|
4124 | Enable png_set_check_for_invalid_index() for both read and write.
|
---|
4125 | Removed #ifdef PNG_HANDLE_AS_UNKNOWN_SUPPORTED in pngpriv.h around
|
---|
4126 | declaration of png_handle_unknown().
|
---|
4127 | Added -lssp_nonshared in a comment in scripts/makefile.freebsd
|
---|
4128 | and changed deprecated NOOBJ and NOPROFILE to NO_OBJ and NO_PROFILE.
|
---|
4129 |
|
---|
4130 | Version 1.6.0beta22 [May 23, 2012]
|
---|
4131 | Removed need for -Wno-cast-align with clang. clang correctly warns on
|
---|
4132 | alignment increasing pointer casts when -Wcast-align is passed. This
|
---|
4133 | fixes the cases that clang warns about either by eliminating the
|
---|
4134 | casts from png_bytep to png_uint_16p (pngread.c), or, for pngrutil.c
|
---|
4135 | where the cast is previously verified or pngstest.c where it is OK, by
|
---|
4136 | introducing new png_aligncast macros to do the cast in a way that clang
|
---|
4137 | accepts.
|
---|
4138 |
|
---|
4139 | Version 1.6.0beta23 [June 6, 2012]
|
---|
4140 | Revised CMakeLists.txt to not attempt to make a symlink under mingw.
|
---|
4141 | Made fixes for new optimization warnings from gcc 4.7.0. The compiler
|
---|
4142 | performs an optimization which is safe; however it then warns about it.
|
---|
4143 | Changing the type of 'palette_number' in pngvalid.c removes the warning.
|
---|
4144 | Do not depend upon a GCC feature macro being available for use in generating
|
---|
4145 | the linker mapfile symbol prefix.
|
---|
4146 | Improved performance of new do_check_palette_indexes() function (only
|
---|
4147 | update the value when it actually increases, move test for whether
|
---|
4148 | the check is wanted out of the function.
|
---|
4149 |
|
---|
4150 | Version 1.6.0beta24 [June 7, 2012]
|
---|
4151 | Don't check palette indexes if num_palette is 0 (as it can be in MNG files).
|
---|
4152 |
|
---|
4153 | Version 1.6.0beta25 [June 16, 2012]
|
---|
4154 | Revised png_set_keep_unknown_chunks() so num_chunks < 0 means ignore all
|
---|
4155 | unknown chunks and all known chunks except for IHDR, PLTE, tRNS, IDAT,
|
---|
4156 | and IEND. Previously it only meant ignore all unknown chunks, the
|
---|
4157 | same as num_chunks == 0. Revised png_image_skip_unused_chunks() to
|
---|
4158 | provide a list of chunks to be processed instead of a list of chunks to
|
---|
4159 | ignore. Revised contrib/gregbook/readpng2.c accordingly.
|
---|
4160 |
|
---|
4161 | Version 1.6.0beta26 [July 10, 2012]
|
---|
4162 | Removed scripts/makefile.cegcc from the *.zip and *.7z distributions; it
|
---|
4163 | depends on configure, which is not included in those archives.
|
---|
4164 | Moved scripts/chkfmt to contrib/tools.
|
---|
4165 | Changed "a+w" to "u+w" in Makefile.in to fix CVE-2012-3386.
|
---|
4166 |
|
---|
4167 | Version 1.6.0beta27 [August 11, 2012]
|
---|
4168 | Do not compile PNG_DEPRECATED, PNG_ALLOC and PNG_PRIVATE when __GNUC__ < 3.
|
---|
4169 | Do not use __restrict when GNUC is <= 3.1
|
---|
4170 | Removed references to png_zalloc() and png_zfree() from the manual.
|
---|
4171 | Fixed configurations where floating point is completely disabled. Because
|
---|
4172 | of the changes to support symbol prefixing PNG_INTERNAL_FUNCTION declares
|
---|
4173 | floating point APIs during libpng builds even if they are completely
|
---|
4174 | disabled. This requires the png floating point types (png_double*) to be
|
---|
4175 | declared even though the functions are never actually defined. This
|
---|
4176 | change provides a dummy definition so that the declarations work, yet any
|
---|
4177 | implementation will fail to compile because of an incomplete type.
|
---|
4178 | Re-eliminated the use of strcpy() in pngtest.c. An unnecessary use of
|
---|
4179 | strcpy() was accidentally re-introduced in libpng16; this change replaces
|
---|
4180 | it with strncpy().
|
---|
4181 | Eliminated use of png_sizeof(); use sizeof() instead.
|
---|
4182 | Use a consistent style for (sizeof type) and (sizeof (array))
|
---|
4183 | Cleanup of png_set_filler(). This function does very different things on
|
---|
4184 | read and write. In libpng 1.6 the two cases can be distinguished and
|
---|
4185 | considerable code cleanup, and extra error checking, is possible. This
|
---|
4186 | makes calls on the write side that have no effect be ignored with a
|
---|
4187 | png_app_error(), which can be disabled in the app using
|
---|
4188 | png_set_benign_errors(), and removes the spurious use of usr_channels
|
---|
4189 | on the read side.
|
---|
4190 | Insist on autotools 1.12.1 for git builds because there are security issues
|
---|
4191 | with 1.12 and insisting on anything less would allow 1.12 to be used.
|
---|
4192 | Removed info_ptr->signature[8] from WRITE-only builds.
|
---|
4193 | Add some conditions for compiling png_fixed(). This is a small function
|
---|
4194 | but it requires "-lm" on some platforms.
|
---|
4195 | Cause pngtest --strict to fail on any warning from libpng (not just errors)
|
---|
4196 | and cause it not to fail at the comparison step if libpng lacks support
|
---|
4197 | for writing chunks that it reads from the input (currently only implemented
|
---|
4198 | for compressed text chunks).
|
---|
4199 | Make all three "make check" test programs work without READ or WRITE support.
|
---|
4200 | Now "make check" will succeed even if libpng is compiled with -DPNG_NO_READ
|
---|
4201 | or -DPNG_NO_WRITE. The tests performed are reduced, but the basic reading
|
---|
4202 | and writing of a PNG file is always tested by one or more of the tests.
|
---|
4203 | Consistently use strlen(), memset(), memcpy(), and memcmp() instead of the
|
---|
4204 | png_strlen(), png_memset(), png_memcpy(), and png_memcmp() macros.
|
---|
4205 | Removed the png_sizeof(), png_strlen(), png_memset(), png_memcpy(), and
|
---|
4206 | png_memcmp() macros.
|
---|
4207 | Work around gcc 3.x and Microsoft Visual Studio 2010 complaints. Both object
|
---|
4208 | to the split initialization of num_chunks.
|
---|
4209 |
|
---|
4210 | Version 1.6.0beta28 [August 29, 2012]
|
---|
4211 | Unknown handling fixes and clean up. This adds more correct option
|
---|
4212 | control of the unknown handling, corrects the pre-existing bug where
|
---|
4213 | the per-chunk 'keep' setting is ignored and makes it possible to skip
|
---|
4214 | IDAT chunks in the sequential reader (broken in earlier 1.6 versions).
|
---|
4215 | There is a new test program, test-unknown.c, which is a work in progress
|
---|
4216 | (not currently part of the test suite). Comments in the header files now
|
---|
4217 | explain how the unknown handling works.
|
---|
4218 | Allow fine grain control of unknown chunk APIs. This change allows
|
---|
4219 | png_set_keep_unknown_chunks() to be turned off if not required and causes
|
---|
4220 | both read and write to behave appropriately (on read this is only possible
|
---|
4221 | if the user callback is used to handle unknown chunks). The change
|
---|
4222 | also removes the support for storing unknown chunks in the info_struct
|
---|
4223 | if the only unknown handling enabled is via the callback, allowing libpng
|
---|
4224 | to be configured with callback reading and none of the unnecessary code.
|
---|
4225 | Corrected fix for unknown handling in pngtest. This reinstates the
|
---|
4226 | libpng handling of unknown chunks other than vpAg and sTER (including
|
---|
4227 | unsafe-to-copy chunks which were dropped before) and eliminates the
|
---|
4228 | repositioning of vpAg and sTER in pngtest.png by changing pngtest.png
|
---|
4229 | (so the chunks are where libpng would put them).
|
---|
4230 | Added "tunknown" test and corrected a logic error in png_handle_unknown()
|
---|
4231 | when SAVE support is absent. Moved the shell test scripts for
|
---|
4232 | contrib/libtests from the libpng top directory to contrib/libtests.
|
---|
4233 | png_handle_unknown() must always read or skip the chunk, if
|
---|
4234 | SAVE_UNKNOWN_CHUNKS is turned off *and* the application does not set
|
---|
4235 | a user callback an unknown chunk will not be read, leading to a read
|
---|
4236 | error, which was revealed by the "tunknown" test.
|
---|
4237 | Cleaned up and corrected ICC profile handling.
|
---|
4238 | contrib/libtests/makepng: corrected 'rgb' and 'gray' cases. profile_error
|
---|
4239 | messages could be truncated; made a correct buffer size calculation and
|
---|
4240 | adjusted pngerror.c appropriately. png_icc_check_* checking improved;
|
---|
4241 | changed the functions to receive the correct color type of the PNG on read
|
---|
4242 | or write and check that it matches the color space of the profile (despite
|
---|
4243 | what the comments said before, there is danger in assuming the app will
|
---|
4244 | cope correctly with an RGB profile on a grayscale image and, since it
|
---|
4245 | violates the PNG spec, allowing it is certain to produce inconsistent
|
---|
4246 | app behavior and might even cause app crashes.) Check that profiles
|
---|
4247 | contain the tags needed to process the PNG (tags all required by the ICC
|
---|
4248 | spec). Removed unused PNG_STATIC from pngpriv.h.
|
---|
4249 |
|
---|
4250 | Version 1.6.0beta29 [September 4, 2012]
|
---|
4251 | Fixed the simplified API example programs to add the *colormap parameter
|
---|
4252 | to several of he API and improved the error message if the version field
|
---|
4253 | is not set.
|
---|
4254 | Added contrib/examples/* to the *.zip and *.7z distributions.
|
---|
4255 | Updated simplified API synopses and description of the png_image structure
|
---|
4256 | in the manual.
|
---|
4257 | Made makepng and pngtest produce identical PNGs, add "--relaxed" option
|
---|
4258 | to pngtest. The "--relaxed" option turns off the benign errors that are
|
---|
4259 | enabled by default in pre-RC builds. makepng can now write ICC profiles
|
---|
4260 | where the length has not been extended to a multiple of 4, and pngtest
|
---|
4261 | now intercepts all libpng errors, allowing the previously-introduced
|
---|
4262 | "--strict test" on no warnings to actually work.
|
---|
4263 | Improved ICC profile handling including cHRM chunk generation and fixed
|
---|
4264 | Cygwin+MSVC build errors. The ICC profile handling now includes more
|
---|
4265 | checking. Several errors that caused rejection of the profile are now
|
---|
4266 | handled with a warning in such a way that the invalid profiles will be
|
---|
4267 | read by default in release (but not pre-RC) builds but will not be
|
---|
4268 | written by default. The easy part of handling the cHRM chunk is written,
|
---|
4269 | where the ICC profile contains the required data. The more difficult
|
---|
4270 | part plus guessing a gAMA value requires code to pass selected RGB values
|
---|
4271 | through the profile.
|
---|
4272 |
|
---|
4273 | Version 1.6.0beta30 [October 24, 2012]
|
---|
4274 | Changed ICC profile matrix/vector types to not depend on array type rules.
|
---|
4275 | By the ANSI-C standard the new types should be identical to the previous
|
---|
4276 | versions, and all known versions of gcc tested with the previous versions
|
---|
4277 | except for GCC-4.2.1 work with this version. The change makes the ANSI-C
|
---|
4278 | rule that const applied to an array of elements applies instead to the
|
---|
4279 | elements in the array moot by explicitly applying const to the base
|
---|
4280 | elements of the png_icc_matrix and png_icc_vector types. The accidental
|
---|
4281 | (harmless) 'const' previously applied to the parameters of two of the
|
---|
4282 | functions have also been removed.
|
---|
4283 | Added a work around for GCC 4.2 optimization bug.
|
---|
4284 | Marked the broken (bad white point) original HP sRGB profiles correctly and
|
---|
4285 | correct comments.
|
---|
4286 | Added -DZ_SOLO to contrib/pngminim/*/makefile to work with zlib-1.2.7
|
---|
4287 | Use /MDd for vstudio debug builds. Also added pngunkown to the vstudio
|
---|
4288 | builds, fixed build errors and corrected a minor exit code error in
|
---|
4289 | pngvalid if the 'touch' file name is invalid.
|
---|
4290 | Add updated WARNING file to projects/vstudio from libpng 1.5/vstudio
|
---|
4291 | Fixed build when using #define PNG_NO_READ_GAMMA in png_do_compose() in
|
---|
4292 | pngrtran.c (Domani Hannes).
|
---|
4293 |
|
---|
4294 | Version 1.6.0beta31 [November 1, 2012]
|
---|
4295 | Undid the erroneous change to vstudio/pngvalid build in libpng-1.6.0beta30.
|
---|
4296 | Made pngvalid so that it will build outside the libpng source tree.
|
---|
4297 | Made builds -DPNG_NO_READ_GAMMA compile (the unit tests still fail).
|
---|
4298 | Made PNG_NO_READ_GAMMA switch off interfaces that depend on READ_GAMMA.
|
---|
4299 | Prior to 1.6.0 switching off READ_GAMMA did unpredictable things to the
|
---|
4300 | interfaces that use it (specifically, png_do_background in 1.4 would
|
---|
4301 | simply display composite for grayscale images but do composition
|
---|
4302 | with the incorrect arithmetic for color ones). In 1.6 the semantic
|
---|
4303 | of -DPNG_NO_READ_GAMMA is changed to simply disable any interface that
|
---|
4304 | depends on it; this obliges people who set it to consider whether they
|
---|
4305 | really want it off if they happen to use any of the interfaces in
|
---|
4306 | question (typically most users who disable it won't).
|
---|
4307 | Fixed GUIDs in projects/vstudio. Some were duplicated or missing,
|
---|
4308 | resulting in VS2010 having to update the files.
|
---|
4309 | Removed non-working ICC profile support code that was mostly added to
|
---|
4310 | libpng-1.6.0beta29 and beta30. There was too much code for too little
|
---|
4311 | gain; implementing full ICC color correction may be desirable but is left
|
---|
4312 | up to applications.
|
---|
4313 |
|
---|
4314 | Version 1.6.0beta32 [November 25, 2012]
|
---|
4315 | Fixed an intermittent SEGV in pngstest due to an uninitialized array element.
|
---|
4316 | Added the ability for contrib/libtests/makepng.c to make a PNG with just one
|
---|
4317 | color. This is useful for debugging pngstest color inaccuracy reports.
|
---|
4318 | Fixed error checking in the simplified write API (Olaf van der Spek)
|
---|
4319 | Made png_user_version_check() ok to use with libpng version 1.10.x and later.
|
---|
4320 |
|
---|
4321 | Version 1.6.0beta33 [December 15, 2012]
|
---|
4322 | Fixed typo in png.c (PNG_SET_CHUNK_MALLOC_MAX should be PNG_CHUNK_MALLOC_MAX)
|
---|
4323 | that causes the MALLOC_MAX limit not to work (John Bowler)
|
---|
4324 | Change png_warning() to png_app_error() in pngwrite.c and comment the
|
---|
4325 | fall-through condition.
|
---|
4326 | Change png_warning() to png_app_warning() in png_write_tRNS().
|
---|
4327 | Rearranged the ARM-NEON optimizations: Isolated the machine specific code
|
---|
4328 | to the hardware subdirectory and added comments to pngrutil.c so that
|
---|
4329 | implementors of other optimizations know what to do.
|
---|
4330 | Fixed cases of unquoted DESTDIR in Makefile.am
|
---|
4331 | Rebuilt Makefile.in, etc., with autoconf-2.69 and automake-1.12.5.
|
---|
4332 |
|
---|
4333 | Version 1.6.0beta34 [December 19, 2012]
|
---|
4334 | Cleaned up whitespace in the synopsis portion of the manpage "libpng.3"
|
---|
4335 | Disassembled the version number in scripts/options.awk (necessary for
|
---|
4336 | building on SunOs).
|
---|
4337 |
|
---|
4338 | Version 1.6.0beta35 [December 23, 2012]
|
---|
4339 | Made default Zlib compression settings be configurable. This adds #defines to
|
---|
4340 | pnglibconf.h to control the defaults.
|
---|
4341 | Fixed Windows build issues, enabled ARM compilation. Various warnings issued
|
---|
4342 | by earlier versions of GCC fixed for Cygwin and Min/GW (which both use old
|
---|
4343 | GCCs.) ARM support is enabled by default in zlib.props (unsupported by
|
---|
4344 | Microsoft) and ARM compilation is made possible by deleting the check for
|
---|
4345 | x86. The test programs cannot be run because they are not signed.
|
---|
4346 |
|
---|
4347 | Version 1.6.0beta36 [January 2, 2013]
|
---|
4348 | Discontinued distributing libpng-1.x.x.tar.bz2.
|
---|
4349 | Discontinued distributing libpng-1.7.0-1.6.0-diff.txt and similar.
|
---|
4350 | Rebuilt configure with autoconf-2.69 (inadvertently not done in beta33)
|
---|
4351 | Fixed 'make distcheck' on SUN OS - libpng.so was not being removed
|
---|
4352 |
|
---|
4353 | Version 1.6.0beta37 [January 10, 2013]
|
---|
4354 | Fixed conceivable but difficult to repro overflow. Also added two test
|
---|
4355 | programs to generate and test a PNG which should have the problem.
|
---|
4356 |
|
---|
4357 | Version 1.6.0beta39 [January 19, 2013]
|
---|
4358 | Again corrected attempt at overflow detection in png_set_unknown_chunks()
|
---|
4359 | (CVE-2013-7353). Added overflow detection in png_set_sPLT() and
|
---|
4360 | png_set_text_2() (CVE-2013-7354).
|
---|
4361 |
|
---|
4362 | Version 1.6.0beta40 [January 20, 2013]
|
---|
4363 | Use consistent handling of overflows in text, sPLT and unknown png_set_* APIs
|
---|
4364 |
|
---|
4365 | Version 1.6.0rc01 [January 26, 2013]
|
---|
4366 | No changes.
|
---|
4367 |
|
---|
4368 | Version 1.6.0rc02 [February 4, 2013]
|
---|
4369 | Added png_get_palette_max() function.
|
---|
4370 |
|
---|
4371 | Version 1.6.0rc03 [February 5, 2013]
|
---|
4372 | Fixed the png_get_palette_max API.
|
---|
4373 |
|
---|
4374 | Version 1.6.0rc04 [February 7, 2013]
|
---|
4375 | Turn serial tests back on (recently turned off by autotools upgrade).
|
---|
4376 |
|
---|
4377 | Version 1.6.0rc05 [February 8, 2013]
|
---|
4378 | Update manual about png_get_palette_max().
|
---|
4379 |
|
---|
4380 | Version 1.6.0rc06 [February 9, 2013]
|
---|
4381 | Fixed missing dependency in --prefix builds The intermediate
|
---|
4382 | internal 'prefix.h' file can only be generated correctly after
|
---|
4383 | pnglibconf.h, however the dependency was not in Makefile.am. The
|
---|
4384 | symptoms are unpredictable depending on the order make chooses to
|
---|
4385 | build pngprefix.h and pnglibconf.h, often the error goes unnoticed
|
---|
4386 | because there is a system pnglibconf.h to use instead.
|
---|
4387 |
|
---|
4388 | Version 1.6.0rc07 [February 10, 2013]
|
---|
4389 | Enclosed the new png_get_palette_max in #ifdef PNG_GET_PALETTE_MAX_SUPPORTED
|
---|
4390 | block, and revised pnglibconf.h and pnglibconf.h.prebuilt accordingly.
|
---|
4391 |
|
---|
4392 | Version 1.6.0rc08 [February 10, 2013]
|
---|
4393 | Fix typo in png.h #ifdef
|
---|
4394 |
|
---|
4395 | Version 1.6.0 [February 14, 2013]
|
---|
4396 | No changes.
|
---|
4397 |
|
---|
4398 | Version 1.6.1beta01 [February 16, 2013]
|
---|
4399 | Made symbol prefixing work with the ARM neon optimizations. Also allow
|
---|
4400 | pngpriv.h to be included for preprocessor definitions only, so it can
|
---|
4401 | be used in non-C/C++ files. Back ported from libpng 1.7.
|
---|
4402 | Made sRGB check numbers consistent.
|
---|
4403 | Ported libpng 1.5 options.awk/dfn file handling to 1.6, fixed one bug.
|
---|
4404 | Removed cc -E workround, corrected png_get_palette_max API Tested on
|
---|
4405 | SUN OS cc 5.9, which demonstrates the tokenization problem previously
|
---|
4406 | avoided by using /lib/cpp. Since all .dfn output is now protected in
|
---|
4407 | double quotes unless it is to be macro substituted the fix should
|
---|
4408 | work everywhere.
|
---|
4409 | Enabled parallel tests - back ported from libpng-1.7.
|
---|
4410 | scripts/pnglibconf.dfa formatting improvements back ported from libpng17.
|
---|
4411 | Fixed a race condition in the creation of the build 'scripts' directory
|
---|
4412 | while building with a parallel make.
|
---|
4413 | Use approved/supported Android method to check for NEON, use Linux/POSIX
|
---|
4414 | 1003.1 API to check /proc/self/auxv avoiding buffer allocation and other
|
---|
4415 | library calls (ported from libpng15).
|
---|
4416 |
|
---|
4417 | Version 1.6.1beta02 [February 19, 2013]
|
---|
4418 | Use parentheses more consistently in "#if defined(MACRO)" tests.
|
---|
4419 | Folded long lines.
|
---|
4420 | Reenabled code to allow zero length PLTE chunks for MNG.
|
---|
4421 |
|
---|
4422 | Version 1.6.1beta03 [February 22, 2013]
|
---|
4423 | Fixed ALIGNED_MEMORY support.
|
---|
4424 | Added a new configure option:
|
---|
4425 | --enable-arm-neon=always will stop the run-time checks. New checks
|
---|
4426 | within arm/arm_init.c will cause the code not to be compiled unless
|
---|
4427 | __ARM_NEON__ is set. This should make it fail safe (if someone asks
|
---|
4428 | for it on then the build will fail if it can't be done.)
|
---|
4429 | Updated the INSTALL document.
|
---|
4430 |
|
---|
4431 | Version 1.6.1beta04 [February 27, 2013]
|
---|
4432 | Revised INSTALL to recommend using CPPFLAGS instead of INCLUDES.
|
---|
4433 | Revised scripts/makefile.freebsd to respect ZLIBLIB and ZLIBINC.
|
---|
4434 | Revised scripts/dfn.awk to work with the buggy MSYS awk that has trouble
|
---|
4435 | with CRLF line endings.
|
---|
4436 |
|
---|
4437 | Version 1.6.1beta05 [March 1, 2013]
|
---|
4438 | Avoid a possible memory leak in contrib/gregbook/readpng.c
|
---|
4439 |
|
---|
4440 | Version 1.6.1beta06 [March 4, 2013]
|
---|
4441 | Better documentation of unknown handling API interactions.
|
---|
4442 | Corrected Android builds and corrected libpng.vers with symbol
|
---|
4443 | prefixing. It also makes those tests compile and link on Android.
|
---|
4444 | Added an API png_set_option() to set optimization options externally,
|
---|
4445 | providing an alternative and general solution for the non-portable
|
---|
4446 | run-time tests used by the ARM Neon code, using the PNG_ARM_NEON option.
|
---|
4447 | The order of settings vs options in pnglibconf.h is reversed to allow
|
---|
4448 | settings to depend on options and options can now set (or override) the
|
---|
4449 | defaults for settings.
|
---|
4450 |
|
---|
4451 | Version 1.6.1beta07 [March 7, 2013]
|
---|
4452 | Corrected simplified API default gamma for color-mapped output, added
|
---|
4453 | a flag to change default. In 1.6.0 when the simplified API was used
|
---|
4454 | to produce color-mapped output from an input image with no gamma
|
---|
4455 | information the gamma assumed for the input could be different from
|
---|
4456 | that assumed for non-color-mapped output. In particular 16-bit depth
|
---|
4457 | input files were assumed to be sRGB encoded, whereas in the 'direct'
|
---|
4458 | case they were assumed to have linear data. This was an error. The
|
---|
4459 | fix makes the simplified API treat all input files the same way and
|
---|
4460 | adds a new flag to the png_image::flags member to allow the
|
---|
4461 | application/user to specify that 16-bit files contain sRGB data
|
---|
4462 | rather than the default linear.
|
---|
4463 | Fixed bugs in the pngpixel and makepng test programs.
|
---|
4464 |
|
---|
4465 | Version 1.6.1beta08 [March 7, 2013]
|
---|
4466 | Fixed CMakelists.txt to allow building a single variant of the library
|
---|
4467 | (Claudio Bley):
|
---|
4468 | Introduced a PNG_LIB_TARGETS variable that lists all activated library
|
---|
4469 | targets. It is an error if this variable ends up empty, ie. you have
|
---|
4470 | to build at least one library variant.
|
---|
4471 | Made the *_COPY targets only depend on library targets actually being build.
|
---|
4472 | Use PNG_LIB_TARGETS to unify a code path.
|
---|
4473 | Changed the CREATE_SYMLINK macro to expect the full path to a file as the
|
---|
4474 | first argument. When symlinking the filename component of that path is
|
---|
4475 | determined and used as the link target.
|
---|
4476 | Use copy_if_different in the CREATE_SYMLINK macro.
|
---|
4477 |
|
---|
4478 | Version 1.6.1beta09 [March 13, 2013]
|
---|
4479 | Eliminated two warnings from the Intel C compiler. The warnings are
|
---|
4480 | technically valid, although a reasonable treatment of division would
|
---|
4481 | show it to be incorrect.
|
---|
4482 |
|
---|
4483 | Version 1.6.1rc01 [March 21, 2013]
|
---|
4484 | No changes.
|
---|
4485 |
|
---|
4486 | Version 1.6.1 [March 28, 2013]
|
---|
4487 | No changes.
|
---|
4488 |
|
---|
4489 | Version 1.6.2beta01 [April 14, 2013]
|
---|
4490 | Updated documentation of 1.5.x to 1.6.x changes in iCCP chunk handling.
|
---|
4491 | Fixed incorrect warning of excess deflate data. End condition - the
|
---|
4492 | warning would be produced if the end of the deflate stream wasn't read
|
---|
4493 | in the last row. The warning is harmless.
|
---|
4494 | Corrected the test on user transform changes on read. It was in the
|
---|
4495 | png_set of the transform function, but that doesn't matter unless the
|
---|
4496 | transform function changes the rowbuf size, and that is only valid if
|
---|
4497 | transform_info is called.
|
---|
4498 | Corrected a misplaced closing bracket in contrib/libtests/pngvalid.c
|
---|
4499 | (Flavio Medeiros).
|
---|
4500 | Corrected length written to uncompressed iTXt chunks (Samuli Suominen).
|
---|
4501 | Bug was introduced in libpng-1.6.0.
|
---|
4502 |
|
---|
4503 | Version 1.6.2rc01 [April 18, 2013]
|
---|
4504 | Added contrib/tools/fixitxt.c, to repair the erroneous iTXt chunk length
|
---|
4505 | written by libpng-1.6.0 and 1.6.1.
|
---|
4506 | Disallow storing sRGB information when the sRGB is not supported.
|
---|
4507 |
|
---|
4508 | Version 1.6.2rc02 [April 18, 2013]
|
---|
4509 | Merge pngtest.c with libpng-1.7.0
|
---|
4510 |
|
---|
4511 | Version 1.6.2rc03 [April 22, 2013]
|
---|
4512 | Trivial spelling cleanup.
|
---|
4513 |
|
---|
4514 | Version 1.6.2rc04 and 1.6.2rc05 [omitted]
|
---|
4515 |
|
---|
4516 | Version 1.6.2rc06 [April 24, 2013]
|
---|
4517 | Reverted to version 1.6.2rc03. Recent changes to arm/neon support
|
---|
4518 | have been ported to libpng-1.7.0beta09 and will reappear in version
|
---|
4519 | 1.6.3beta01.
|
---|
4520 |
|
---|
4521 | Version 1.6.2 [April 25, 2013]
|
---|
4522 | No changes.
|
---|
4523 |
|
---|
4524 | Version 1.6.3beta01 [April 25, 2013]
|
---|
4525 | Revised stack marking in arm/filter_neon.S and configure.ac.
|
---|
4526 | Ensure that NEON filter stuff is completely disabled when switched 'off'.
|
---|
4527 | Previously the ARM NEON specific files were still built if the option
|
---|
4528 | was switched 'off' as opposed to being explicitly disabled.
|
---|
4529 |
|
---|
4530 | Version 1.6.3beta02 [April 26, 2013]
|
---|
4531 | Test for 'arm*' not just 'arm' in the host_cpu configure variable.
|
---|
4532 | Rebuilt the configure scripts.
|
---|
4533 |
|
---|
4534 | Version 1.6.3beta03 [April 30, 2013]
|
---|
4535 | Expanded manual paragraph about writing private chunks, particularly
|
---|
4536 | the need to call png_set_keep_unknown_chunks() when writing them.
|
---|
4537 | Avoid dereferencing NULL pointer possibly returned from
|
---|
4538 | png_create_write_struct() (Andrew Church).
|
---|
4539 |
|
---|
4540 | Version 1.6.3beta05 [May 9, 2013]
|
---|
4541 | Calculate our own zlib windowBits when decoding rather than trusting the
|
---|
4542 | CMF bytes in the PNG datastream.
|
---|
4543 | Added an option to force maximum window size for inflating, which was
|
---|
4544 | the behavior of libpng15 and earlier, via a new PNG_MAXIMUM_INFLATE_WINDOW
|
---|
4545 | option for png_set_options().
|
---|
4546 | Added png-fix-itxt and png-fix-too-far-back to the built programs and
|
---|
4547 | removed warnings from the source code and timepng that are revealed as
|
---|
4548 | a result.
|
---|
4549 | Detect wrong libpng versions linked to png-fix-too-far-back, which currently
|
---|
4550 | only works with libpng versions that can be made to reliably fail when
|
---|
4551 | the deflate data contains an out-of-window reference. This means only
|
---|
4552 | 1.6 and later.
|
---|
4553 | Fixed gnu issues: g++ needs a static_cast, gcc 4.4.7 has a broken warning
|
---|
4554 | message which it is easier to work round than ignore.
|
---|
4555 | Updated contrib/pngminus/pnm2png.c (Paul Stewart):
|
---|
4556 | Check for EOF
|
---|
4557 | Ignore "#" delimited comments in input file to pnm2png.c.
|
---|
4558 | Fixed whitespace handling
|
---|
4559 | Added a call to png_set_packing()
|
---|
4560 | Initialize dimension values so if sscanf fails at least we have known
|
---|
4561 | invalid values.
|
---|
4562 | Attempt to detect configuration issues with png-fix-too-far-back, which
|
---|
4563 | requires both the correct libpng and the correct zlib to function
|
---|
4564 | correctly.
|
---|
4565 | Check ZLIB_VERNUM for mismatches, enclose #error in quotes
|
---|
4566 | Added information in the documentation about problems with and fixes for
|
---|
4567 | the bad CRC and bad iTXt chunk situations.
|
---|
4568 |
|
---|
4569 | Version 1.6.3beta06 [May 12, 2013]
|
---|
4570 | Allow contrib/pngminus/pnm2png.c to compile without WRITE_INVERT and
|
---|
4571 | WRITE_PACK supported (writes error message that it can't read P1 or
|
---|
4572 | P4 PBM files).
|
---|
4573 | Improved png-fix-too-far-back usage message, added --suffix option.
|
---|
4574 | Revised contrib/pngminim/*/makefile to generate pnglibconf.h with the
|
---|
4575 | right zlib header files.
|
---|
4576 | Separated CPPFLAGS and CFLAGS in contrib/pngminim/*/makefile
|
---|
4577 |
|
---|
4578 | Version 1.6.3beta07 [June 8, 2013]
|
---|
4579 | Removed a redundant test in png_set_IHDR().
|
---|
4580 | Added set(CMAKE_CONFIGURATION_TYPES ...) to CMakeLists.txt (Andrew Hundt)
|
---|
4581 | Deleted set(CMAKE_BUILD_TYPE) block from CMakeLists.txt
|
---|
4582 | Enclose the prototypes for the simplified write API in
|
---|
4583 | #ifdef PNG_STDIO_SUPPORTED/#endif
|
---|
4584 | Make ARM NEON support work at compile time (not just configure time).
|
---|
4585 | This moves the test on __ARM_NEON__ into pngconf.h to avoid issues when
|
---|
4586 | using a compiler that compiles for multiple architectures at one time.
|
---|
4587 | Removed PNG_FILTER_OPTIMIZATIONS and PNG_ARM_NEON_SUPPORTED from
|
---|
4588 | pnglibconf.h, allowing more of the decisions to be made internally
|
---|
4589 | (pngpriv.h) during the compile. Without this, symbol prefixing is broken
|
---|
4590 | under certain circumstances on ARM platforms. Now only the API parts of
|
---|
4591 | the optimizations ('check' vs 'api') are exposed in the public header files
|
---|
4592 | except that the new setting PNG_ARM_NEON_OPT documents how libpng makes the
|
---|
4593 | decision about whether or not to use the optimizations.
|
---|
4594 | Protect symbol prefixing against CC/CPPFLAGS/CFLAGS usage.
|
---|
4595 | Previous iOS/Xcode fixes for the ARM NEON optimizations moved the test
|
---|
4596 | on __ARM_NEON__ from configure time to compile time. This breaks symbol
|
---|
4597 | prefixing because the definition of the special png_init_filter_functions
|
---|
4598 | call was hidden at configure time if the relevant compiler arguments are
|
---|
4599 | passed in CFLAGS as opposed to CC. This change attempts to avoid all
|
---|
4600 | the confusion that would result by declaring the init function even when
|
---|
4601 | it is not used, so that it will always get prefixed.
|
---|
4602 |
|
---|
4603 | Version 1.6.3beta08 [June 18, 2013]
|
---|
4604 | Revised libpng.3 so that "doclifter" can process it.
|
---|
4605 |
|
---|
4606 | Version 1.6.3beta09 [June 27, 2013]
|
---|
4607 | Revised example.c to illustrate use of PNG_DEFAULT_sRGB and PNG_GAMMA_MAC_18
|
---|
4608 | as parameters for png_set_gamma(). These have been available since
|
---|
4609 | libpng-1.5.4.
|
---|
4610 | Renamed contrib/tools/png-fix-too-far-back.c to pngfix.c and revised it
|
---|
4611 | to check all compressed chunks known to libpng.
|
---|
4612 |
|
---|
4613 | Version 1.6.3beta10 [July 5, 2013]
|
---|
4614 | Updated documentation to show default behavior of benign errors correctly.
|
---|
4615 | Only compile ARM code when PNG_READ_SUPPORTED is defined.
|
---|
4616 | Fixed undefined behavior in contrib/tools/pngfix.c and added new strip
|
---|
4617 | option. pngfix relied on undefined behavior and even a simple change from
|
---|
4618 | gcc to g++ caused it to fail. The new strip option 'unsafe' has been
|
---|
4619 | implemented and is the default if --max is given. Option names have
|
---|
4620 | been clarified, with --strip=transform now stripping the bKGD chunk,
|
---|
4621 | which was stripped previously with --strip=unused.
|
---|
4622 | Added all documented chunk types to pngpriv.h
|
---|
4623 | Unified pngfix.c source with libpng17.
|
---|
4624 |
|
---|
4625 | Version 1.6.3rc01 [July 11, 2013]
|
---|
4626 | No changes.
|
---|
4627 |
|
---|
4628 | Version 1.6.3 [July 18, 2013]
|
---|
4629 | Revised manual about changes in iTXt chunk handling made in libpng-1.6.0.
|
---|
4630 | Added "/* SAFE */" comments in pngrutil.c and pngrtran.c where warnings
|
---|
4631 | may be erroneously issued by code-checking applications.
|
---|
4632 |
|
---|
4633 | Version 1.6.4beta01 [August 21, 2013]
|
---|
4634 | Added information about png_set_options() to the manual.
|
---|
4635 | Delay calling png_init_filter_functions() until a row with nonzero filter
|
---|
4636 | is found.
|
---|
4637 |
|
---|
4638 | Version 1.6.4beta02 [August 30, 2013]
|
---|
4639 | Fixed inconsistent conditional compilation of png_chunk_unknown_handling()
|
---|
4640 | prototype, definition, and usage. Made it depend on
|
---|
4641 | PNG_HANDLE_AS_UNKNOWN_SUPPORTED everywhere.
|
---|
4642 |
|
---|
4643 | Version 1.6.4rc01 [September 5, 2013]
|
---|
4644 | No changes.
|
---|
4645 |
|
---|
4646 | Version 1.6.4 [September 12, 2013]
|
---|
4647 | No changes.
|
---|
4648 |
|
---|
4649 | Version 1.6.5 [September 14, 2013]
|
---|
4650 | Removed two stray lines of code from arm/arm_init.c.
|
---|
4651 |
|
---|
4652 | Version 1.6.6 [September 16, 2013]
|
---|
4653 | Removed two stray lines of code from arm/arm_init.c, again.
|
---|
4654 |
|
---|
4655 | Version 1.6.7beta01 [September 30, 2013]
|
---|
4656 | Revised unknown chunk code to correct several bugs in the NO_SAVE_/NO_WRITE
|
---|
4657 | combination
|
---|
4658 | Allow HANDLE_AS_UNKNOWN to work when other options are configured off. Also
|
---|
4659 | fixed the pngminim makefiles to work when $(MAKEFLAGS) contains stuff
|
---|
4660 | which terminates the make options (as by default in recent versions of
|
---|
4661 | Gentoo).
|
---|
4662 | Avoid up-cast warnings in pngvalid.c. On ARM the alignment requirements of
|
---|
4663 | png_modifier are greater than that of png_store and as a consequence
|
---|
4664 | compilation of pngvalid.c results in a warning about increased alignment
|
---|
4665 | requirements because of the bare cast to (png_modifier*). The code is safe,
|
---|
4666 | because the pointer is known to point to a stack allocated png_modifier,
|
---|
4667 | but this change avoids the warning.
|
---|
4668 | Fixed default behavior of ARM_NEON_API. If the ARM NEON API option was
|
---|
4669 | compiled without the CHECK option it defaulted to on, not off.
|
---|
4670 | Check user callback behavior in pngunknown.c. Previous versions compiled
|
---|
4671 | if SAVE_UNKNOWN was not available but did nothing since the callback
|
---|
4672 | was never implemented.
|
---|
4673 | Merged pngunknown.c with 1.7 version and back ported 1.7 improvements/fixes
|
---|
4674 |
|
---|
4675 | Version 1.6.7beta02 [October 12, 2013]
|
---|
4676 | Made changes for compatibility with automake 1.14:
|
---|
4677 | 1) Added the 'compile' program to the list of programs that must be cleaned
|
---|
4678 | in autogen.sh
|
---|
4679 | 2) Added 'subdir-objects' which causes .c files in sub-directories to be
|
---|
4680 | compiled such that the corresponding .o files are also in the
|
---|
4681 | sub-directory. This is because automake 1.14 warns that the
|
---|
4682 | current behavior of compiling to the top level directory may be removed
|
---|
4683 | in the future.
|
---|
4684 | 3) Updated dependencies on pnglibconf.h to match the new .o locations and
|
---|
4685 | added all the files in contrib/libtests and contrib/tools that depend
|
---|
4686 | on pnglibconf.h
|
---|
4687 | 4) Added 'BUILD_SOURCES = pnglibconf.h'; this is the automake recommended
|
---|
4688 | way of handling the dependencies of sources that are machine generated;
|
---|
4689 | unfortunately it only works if the user does 'make all' or 'make check',
|
---|
4690 | so the dependencies (3) are still required.
|
---|
4691 | Cleaned up (char*) casts of zlib messages. The latest version of the Intel C
|
---|
4692 | compiler complains about casting a string literal as (char*), so copied the
|
---|
4693 | treatment of z_const from the library code into pngfix.c
|
---|
4694 | Simplified error message code in pngunknown. The simplification has the
|
---|
4695 | useful side effect of avoiding a bogus warning generated by the latest
|
---|
4696 | version of the Intel C compiler (it objects to
|
---|
4697 | condition ? string-literal : string-literal).
|
---|
4698 | Make autogen.sh work with automake 1.13 as well as 1.14. Do this by always
|
---|
4699 | removing the 1.14 'compile' script but never checking for it.
|
---|
4700 |
|
---|
4701 | Version 1.6.7beta03 [October 19, 2013]
|
---|
4702 | Added ARMv8 support (James Yu <james.yu at linaro.org>). Added file
|
---|
4703 | arm/filter_neon_intrinsics.c; enable with -mfpu=neon.
|
---|
4704 | Revised pngvalid to generate size images with as many filters as it can
|
---|
4705 | manage, limited by the number of rows.
|
---|
4706 | Cleaned up ARM NEON compilation handling. The tests are now in pngpriv.h
|
---|
4707 | and detect the broken GCC compilers.
|
---|
4708 |
|
---|
4709 | Version 1.6.7beta04 [October 26, 2013]
|
---|
4710 | Allow clang derived from older GCC versions to use ARM intrinsics. This
|
---|
4711 | causes all clang builds that use -mfpu=neon to use the intrinsics code,
|
---|
4712 | not the assembler code. This has only been tested on iOS 7. It may be
|
---|
4713 | necessary to exclude some earlier clang versions but this seems unlikely.
|
---|
4714 | Changed NEON implementation selection mechanism. This allows assembler
|
---|
4715 | or intrinsics to be turned on at compile time during the build by defining
|
---|
4716 | PNG_ARM_NEON_IMPLEMENTATION to the correct value (2 or 1). This macro
|
---|
4717 | is undefined by default and the build type is selected in pngpriv.h.
|
---|
4718 |
|
---|
4719 | Version 1.6.7rc01 [November 2, 2013]
|
---|
4720 | No changes.
|
---|
4721 |
|
---|
4722 | Version 1.6.7rc02 [November 7, 2013]
|
---|
4723 | Fixed #include in filter_neon_intrinsics.c and ctype macros. The ctype char
|
---|
4724 | checking macros take an unsigned char argument, not a signed char.
|
---|
4725 |
|
---|
4726 | Version 1.6.7 [November 14, 2013]
|
---|
4727 | No changes.
|
---|
4728 |
|
---|
4729 | Version 1.6.8beta01 [November 24, 2013]
|
---|
4730 | Moved prototype for png_handle_unknown() in pngpriv.h outside of
|
---|
4731 | the #ifdef PNG_SET_UNKNOWN_CHUNKS_SUPPORTED/#endif block.
|
---|
4732 | Added "-Wall" to CFLAGS in contrib/pngminim/*/makefile
|
---|
4733 | Conditionally compile some unused functions reported by -Wall in
|
---|
4734 | pngminim.
|
---|
4735 | Fixed 'minimal' builds. Various obviously useful minimal configurations
|
---|
4736 | don't build because of missing contrib/libtests test programs and
|
---|
4737 | overly complex dependencies in scripts/pnglibconf.dfa. This change
|
---|
4738 | adds contrib/conftest/*.dfa files that can be used in automatic build
|
---|
4739 | scripts to ensure that these configurations continue to build.
|
---|
4740 | Enabled WRITE_INVERT and WRITE_PACK in contrib/pngminim/encoder.
|
---|
4741 | Fixed pngvalid 'fail' function declaration on the Intel C Compiler.
|
---|
4742 | This reverts to the previous 'static' implementation and works round
|
---|
4743 | the 'unused static function' warning by using PNG_UNUSED().
|
---|
4744 |
|
---|
4745 | Version 1.6.8beta02 [November 30, 2013]
|
---|
4746 | Removed or marked PNG_UNUSED some harmless "dead assignments" reported
|
---|
4747 | by clang scan-build.
|
---|
4748 | Changed tabs to 3 spaces in png_debug macros and changed '"%s"m'
|
---|
4749 | to '"%s" m' to improve portability among compilers.
|
---|
4750 | Changed png_free_default() to free() in pngtest.c
|
---|
4751 |
|
---|
4752 | Version 1.6.8rc01 [December 12, 2013]
|
---|
4753 | Tidied up pngfix inits and fixed pngtest no-write builds.
|
---|
4754 |
|
---|
4755 | Version 1.6.8rc02 [December 14, 2013]
|
---|
4756 | Handle zero-length PLTE chunk or NULL palette with png_error()
|
---|
4757 | instead of png_chunk_report(), which by default issues a warning
|
---|
4758 | rather than an error, leading to later reading from a NULL pointer
|
---|
4759 | (png_ptr->palette) in png_do_expand_palette(). This is CVE-2013-6954
|
---|
4760 | and VU#650142. Libpng-1.6.1 through 1.6.7 are vulnerable.
|
---|
4761 | Libpng-1.6.0 and earlier do not have this bug.
|
---|
4762 |
|
---|
4763 | Version 1.6.8 [December 19, 2013]
|
---|
4764 | No changes.
|
---|
4765 |
|
---|
4766 | Version 1.6.9beta01 [December 26, 2013]
|
---|
4767 | Bookkeeping: Moved functions around (no changes). Moved transform
|
---|
4768 | function definitions before the place where they are called so that
|
---|
4769 | they can be made static. Move the intrapixel functions and the
|
---|
4770 | grayscale palette builder out of the png?tran.c files. The latter
|
---|
4771 | isn't a transform function and is no longer used internally, and the
|
---|
4772 | former MNG specific functions are better placed in pngread/pngwrite.c
|
---|
4773 | Made transform implementation functions static. This makes the internal
|
---|
4774 | functions called by png_do_{read|write}_transformations static. On an
|
---|
4775 | x86-64 DLL build (Gentoo Linux) this reduces the size of the text
|
---|
4776 | segment of the DLL by 1208 bytes, about 0.6%. It also simplifies
|
---|
4777 | maintenance by removing the declarations from pngpriv.h and allowing
|
---|
4778 | easier changes to the internal interfaces.
|
---|
4779 | Rebuilt configure scripts with automake-1.14.1 and autoconf-2.69
|
---|
4780 | in the tar distributions.
|
---|
4781 |
|
---|
4782 | Version 1.6.9beta02 [January 1, 2014]
|
---|
4783 | Added checks for libpng 1.5 to pngvalid.c. This supports the use of
|
---|
4784 | this version of pngvalid in libpng 1.5
|
---|
4785 | Merged with pngvalid.c from libpng-1.7 changes to create a single
|
---|
4786 | pngvalid.c
|
---|
4787 | Removed #error macro from contrib/tools/pngfix.c (Thomas Klausner).
|
---|
4788 | Merged pngrio.c, pngtrans.c, pngwio.c, and pngerror.c with libpng-1.7.0
|
---|
4789 | Merged libpng-1.7.0 changes to make no-interlace configurations work
|
---|
4790 | with test programs.
|
---|
4791 | Revised pngvalid.c to support libpng 1.5, which does not support the
|
---|
4792 | PNG_MAXIMUM_INFLATE_WINDOW option, so #define it out when appropriate in
|
---|
4793 | pngvalid.c
|
---|
4794 | Allow unversioned links created on install to be disabled in configure.
|
---|
4795 | In configure builds 'make install' changes/adds links like png.h
|
---|
4796 | and libpng.a to point to the newly installed, versioned, files (e.g.
|
---|
4797 | libpng17/png.h and libpng17.a). Three new configure options and some
|
---|
4798 | rearrangement of Makefile.am allow creation of these links to be disabled.
|
---|
4799 |
|
---|
4800 | Version 1.6.9beta03 [January 10, 2014]
|
---|
4801 | Removed potentially misleading warning from png_check_IHDR().
|
---|
4802 |
|
---|
4803 | Version 1.6.9beta04 [January 20, 2014]
|
---|
4804 | Updated scripts/makefile.* to use CPPFLAGS (Cosmin).
|
---|
4805 | Added clang attribute support (Cosmin).
|
---|
4806 |
|
---|
4807 | Version 1.6.9rc01 [January 28, 2014]
|
---|
4808 | No changes.
|
---|
4809 |
|
---|
4810 | Version 1.6.9rc02 [January 30, 2014]
|
---|
4811 | Quiet an uninitialized memory warning from VC2013 in png_get_png().
|
---|
4812 |
|
---|
4813 | Version 1.6.9 [February 6, 2014]
|
---|
4814 |
|
---|
4815 | Version 1.6.10beta01 [February 9, 2014]
|
---|
4816 | Backported changes from libpng-1.7.0beta30 and beta31:
|
---|
4817 | Fixed a large number of instances where PNGCBAPI was omitted from
|
---|
4818 | function definitions.
|
---|
4819 | Added pngimage test program for png_read_png() and png_write_png()
|
---|
4820 | with two new test scripts.
|
---|
4821 | Removed dependence on !PNG_READ_EXPAND_SUPPORTED for calling
|
---|
4822 | png_set_packing() in png_read_png().
|
---|
4823 | Fixed combination of ~alpha with shift. On read invert alpha, processing
|
---|
4824 | occurred after shift processing, which causes the final values to be
|
---|
4825 | outside the range that should be produced by the shift. Reversing the
|
---|
4826 | order on read makes the two transforms work together correctly and mirrors
|
---|
4827 | the order used on write.
|
---|
4828 | Do not read invalid sBIT chunks. Previously libpng only checked sBIT
|
---|
4829 | values on write, so a malicious PNG writer could therefore cause
|
---|
4830 | the read code to return an invalid sBIT chunk, which might lead to
|
---|
4831 | application errors or crashes. Such chunks are now skipped (with
|
---|
4832 | chunk_benign_error).
|
---|
4833 | Make png_read_png() and png_write_png() prototypes in png.h depend
|
---|
4834 | upon PNG_READ_SUPPORTED and PNG_WRITE_SUPPORTED.
|
---|
4835 | Support builds with unsupported PNG_TRANSFORM_* values. All of the
|
---|
4836 | PNG_TRANSFORM_* values are always defined in png.h and, because they
|
---|
4837 | are used for both read and write in some cases, it is not reliable
|
---|
4838 | to #if out ones that are totally unsupported. This change adds error
|
---|
4839 | detection in png_read_image() and png_write_image() to do a
|
---|
4840 | png_app_error() if the app requests something that cannot be done
|
---|
4841 | and it adds corresponding code to pngimage.c to handle such options
|
---|
4842 | by not attempting to test them.
|
---|
4843 |
|
---|
4844 | Version 1.6.10beta02 [February 23, 2014]
|
---|
4845 | Moved redefines of png_error(), png_warning(), png_chunk_error(),
|
---|
4846 | and png_chunk_warning() from pngpriv.h to png.h to make them visible
|
---|
4847 | to libpng-calling applications.
|
---|
4848 | Moved OS dependent code from arm/arm_init.c, to allow the included
|
---|
4849 | implementation of the ARM NEON discovery function to be set at
|
---|
4850 | build-time and provide sample implementations from the current code in the
|
---|
4851 | contrib/arm-neon subdirectory. The __linux__ code has also been changed to
|
---|
4852 | compile and link on Android by using /proc/cpuinfo, and the old linux code
|
---|
4853 | is in contrib/arm-neon/linux-auxv.c. The new code avoids POSIX and Linux
|
---|
4854 | dependencies apart from opening /proc/cpuinfo and is C90 compliant.
|
---|
4855 | Check for info_ptr == NULL early in png_read_end() so we don't need to
|
---|
4856 | run all the png_handle_*() and depend on them to return if info_ptr == NULL.
|
---|
4857 | This improves the performance of png_read_end(png_ptr, NULL) and makes
|
---|
4858 | it more robust against future programming errors.
|
---|
4859 | Check for __has_extension before using it in pngconf.h, to
|
---|
4860 | support older Clang versions (Jeremy Sequoia).
|
---|
4861 | Treat CRC error handling with png_set_crc_action(), instead of with
|
---|
4862 | png_set_benign_errors(), which has been the case since libpng-1.6.0beta18.
|
---|
4863 | Use a user warning handler in contrib/gregbook/readpng2.c instead of default,
|
---|
4864 | so warnings will be put on stderr even if libpng has CONSOLE_IO disabled.
|
---|
4865 | Added png_ptr->process_mode = PNG_READ_IDAT_MODE in png_push_read_chunk
|
---|
4866 | after recognizing the IDAT chunk, which avoids an infinite loop while
|
---|
4867 | reading a datastream whose first IDAT chunk is of zero-length.
|
---|
4868 | This fixes CERT VU#684412 and CVE-2014-0333.
|
---|
4869 | Don't recognize known sRGB profiles as sRGB if they have been hacked,
|
---|
4870 | but don't reject them and don't issue a copyright violation warning.
|
---|
4871 |
|
---|
4872 | Version 1.6.10beta03 [February 25, 2014]
|
---|
4873 | Moved some documentation from png.h to libpng.3 and libpng-manual.txt
|
---|
4874 | Minor editing of contrib/arm-neon/README and contrib/examples/*.c
|
---|
4875 |
|
---|
4876 | Version 1.6.10rc01 [February 27, 2014]
|
---|
4877 | Fixed typos in the manual and in scripts/pnglibconf.dfa (CFLAGS -> CPPFLAGS
|
---|
4878 | and PNG_USR_CONFIG -> PNG_USER_CONFIG).
|
---|
4879 |
|
---|
4880 | Version 1.6.10rc02 [February 28, 2014]
|
---|
4881 | Removed unreachable return statement after png_chunk_error()
|
---|
4882 | in pngrutil.c
|
---|
4883 |
|
---|
4884 | Version 1.6.10rc03 [March 4, 2014]
|
---|
4885 | Un-deprecated png_data_freer().
|
---|
4886 |
|
---|
4887 | Version 1.6.10 [March 6, 2014]
|
---|
4888 | No changes.
|
---|
4889 |
|
---|
4890 | Version 1.6.11beta01 [March 17, 2014]
|
---|
4891 | Use "if (value != 0)" instead of "if (value)" consistently.
|
---|
4892 | Changed ZlibSrcDir from 1.2.5 to 1.2.8 in projects/vstudio.
|
---|
4893 | Moved configuration information from the manual to the INSTALL file.
|
---|
4894 |
|
---|
4895 | Version 1.6.11beta02 [April 6, 2014]
|
---|
4896 | Removed #if/#else/#endif from inside two pow() calls in pngvalid.c because
|
---|
4897 | they were handled improperly by Portland Group's PGI-14.1 - PGI-14.3
|
---|
4898 | when using its "__builtin_pow()" function.
|
---|
4899 | Silence 'unused parameter' build warnings (Cosmin Truta).
|
---|
4900 | $(CP) is now used alongside $(RM_F). Also, use 'copy' instead of 'cp'
|
---|
4901 | where applicable, and applied other minor makefile changes (Cosmin).
|
---|
4902 | Don't warn about invalid dimensions exceeding user limits (Cosmin).
|
---|
4903 | Allow an easy replacement of the default pre-built configuration
|
---|
4904 | header with a custom header, via the make PNGLIBCONF_H_PREBUILT
|
---|
4905 | macro (Cosmin).
|
---|
4906 |
|
---|
4907 | Version 1.6.11beta03 [April 6, 2014]
|
---|
4908 | Fixed a typo in pngrutil.c, introduced in libpng-1.5.6, that interferes
|
---|
4909 | with "blocky" expansion of sub-8-bit interlaced PNG files (Eric Huss).
|
---|
4910 | Optionally use __builtin_bswap16() in png_do_swap().
|
---|
4911 |
|
---|
4912 | Version 1.6.11beta04 [April 19, 2014]
|
---|
4913 | Made progressive reading of interlaced images consistent with the
|
---|
4914 | behavior of the sequential reader and consistent with the manual, by
|
---|
4915 | moving some code out of the PNG_READ_INTERLACING_SUPPORTED blocks. The
|
---|
4916 | row_callback now receives the proper pass number and unexpanded rows, when
|
---|
4917 | png_combine_row() isn't built or used, and png_set_interlace_handling()
|
---|
4918 | is not called.
|
---|
4919 | Allow PNG_sRGB_PROFILE_CHECKING = (-1) to mean no sRGB profile checking.
|
---|
4920 |
|
---|
4921 | Version 1.6.11beta05 [April 26, 2014]
|
---|
4922 | Do not reject ICC V2 profiles that lack padding (Kai-Uwe Behrmann).
|
---|
4923 | Relocated closing bracket of the sRGB profile test loop to avoid getting
|
---|
4924 | "Not recognizing known sRGB profile that has been edited" warning for
|
---|
4925 | ICC V2 profiles that lack the MD5 signature in the profile header.
|
---|
4926 |
|
---|
4927 | Version 1.6.11beta06 [May 19, 2014]
|
---|
4928 | Added PNG_SKIP_sRGB_CHECK_PROFILE choice for png_set_option().
|
---|
4929 |
|
---|
4930 | Version 1.6.11rc01 [May 27, 2014]
|
---|
4931 | No changes.
|
---|
4932 |
|
---|
4933 | Version 1.6.11rc02 [June 3, 2014]
|
---|
4934 | Test ZLIB_VERNUM instead of PNG_ZLIB_VERNUM in contrib/tools/pngfix.c
|
---|
4935 |
|
---|
4936 | Version 1.6.11 [June 5, 2014]
|
---|
4937 | No changes.
|
---|
4938 |
|
---|
4939 | Version 1.6.12rc01 [June 6, 2014]
|
---|
4940 | Relocated new code from 1.6.11beta06 in png.c to a point after the
|
---|
4941 | declarations (Max Stepin).
|
---|
4942 |
|
---|
4943 | Version 1.6.12rc02 [June 7, 2014]
|
---|
4944 | Changed file permissions of contrib/tools/intgamma.sh,
|
---|
4945 | test-driver, and compile from 0644 to 0755 (Cosmin).
|
---|
4946 |
|
---|
4947 | Version 1.6.12rc03 [June 8, 2014]
|
---|
4948 | Ensure "__has_attribute()" macro exists before trying to use it with
|
---|
4949 | old clang compilers (MacPorts Ticket #43939).
|
---|
4950 |
|
---|
4951 | Version 1.6.12 [June 12, 2014]
|
---|
4952 | No changes.
|
---|
4953 |
|
---|
4954 | Version 1.6.13beta01 [July 4, 2014]
|
---|
4955 | Quieted -Wsign-compare and -Wclobber compiler warnings in
|
---|
4956 | contrib/pngminus/*.c
|
---|
4957 | Added "(void) png_ptr;" where needed in contrib/gregbook to quiet
|
---|
4958 | compiler complaints about unused pointers.
|
---|
4959 | Split a long output string in contrib/gregbook/rpng2-x.c.
|
---|
4960 | Added "PNG_SET_OPTION" requirement for sRGB chunk support to pnglibconf.dfa,
|
---|
4961 | Needed for write-only support (John Bowler).
|
---|
4962 | Changed "if defined(__ARM_NEON__)" to
|
---|
4963 | "if (defined(__ARM_NEON__) || defined(__ARM_NEON))" (James Wu).
|
---|
4964 | Fixed clang no-warning builds: png_digit was defined but never used.
|
---|
4965 |
|
---|
4966 | Version 1.6.13beta02 [July 21, 2014]
|
---|
4967 | Fixed an incorrect separator ("/" should be "\") in scripts/makefile.vcwin32
|
---|
4968 | (bug report from Wolfgang S. Kechel). Bug was introduced in libpng-1.6.11.
|
---|
4969 | Also fixed makefile.bc32, makefile.bor, makefile.msc, makefile.intel, and
|
---|
4970 | makefile.tc3 similarly.
|
---|
4971 |
|
---|
4972 | Version 1.6.13beta03 [August 3, 2014]
|
---|
4973 | Removed scripts/makefile.elf. It has not worked since libpng-1.5.0beta14
|
---|
4974 | due to elimination of the PNG_FUNCTION_EXPORT and PNG_DATA_EXPORT
|
---|
4975 | definitions from pngconf.h.
|
---|
4976 | Ensure that CMakeLists.txt makes the target "lib" directory before making
|
---|
4977 | symbolic link into it (SourceForge bug report #226 by Rolf Timmermans).
|
---|
4978 |
|
---|
4979 | Version 1.6.13beta04 [August 8, 2014]
|
---|
4980 | Added opinion that the ECCN (Export Control Classification Number) for
|
---|
4981 | libpng is EAR99 to the README file.
|
---|
4982 | Eliminated use of "$<" in makefile explicit rules, when copying
|
---|
4983 | $PNGLIBCONF_H_PREBUILT. This does not work on some versions of make;
|
---|
4984 | bug introduced in libpng version 1.6.11.
|
---|
4985 |
|
---|
4986 | Version 1.6.13rc01 [August 14, 2014]
|
---|
4987 | Made "ccopts" agree with "CFLAGS" in scripts/makefile.hp* and makefile.*sunu
|
---|
4988 |
|
---|
4989 | Version 1.6.13 [August 21, 2014]
|
---|
4990 | No changes.
|
---|
4991 |
|
---|
4992 | Version 1.6.14beta01 [September 14, 2014]
|
---|
4993 | Guard usage of png_ptr->options with #ifdef PNG_SET_OPTION_SUPPORTED.
|
---|
4994 | Do not build contrib/tools/pngfix.c when PNG_SETJMP_NOT_SUPPORTED,
|
---|
4995 | to allow "make" to complete without setjmp support (bug report by
|
---|
4996 | Claudio Fontana)
|
---|
4997 | Add "#include <setjmp.h>" to contrib/tools/pngfix.c (John Bowler)
|
---|
4998 |
|
---|
4999 | Version 1.6.14beta02 [September 18, 2014]
|
---|
5000 | Use nanosleep() instead of usleep() in contrib/gregbook/rpng2-x.c
|
---|
5001 | because usleep() is deprecated.
|
---|
5002 | Define usleep() in contrib/gregbook/rpng2-x.c if not already defined
|
---|
5003 | in unistd.h and nanosleep() is not available; fixes error introduced
|
---|
5004 | in libpng-1.6.13.
|
---|
5005 | Disable floating point exception handling in pngvalid.c when
|
---|
5006 | PNG_FLOATING_ARITHMETIC is not supported (bug report by "zootus
|
---|
5007 | at users.sourceforge.net").
|
---|
5008 |
|
---|
5009 | Version 1.6.14beta03 [September 19, 2014]
|
---|
5010 | Define FE_DIVBYZERO, FE_INVALID, and FE_OVERFLOW in pngvalid.c if not
|
---|
5011 | already defined. Revert floating point exception handling in pngvalid.c
|
---|
5012 | to version 1.6.14beta01 behavior.
|
---|
5013 |
|
---|
5014 | Version 1.6.14beta04 [September 27, 2014]
|
---|
5015 | Fixed incorrect handling of the iTXt compression flag in pngrutil.c
|
---|
5016 | (bug report by Shunsaku Hirata). Bug was introduced in libpng-1.6.0.
|
---|
5017 |
|
---|
5018 | Version 1.6.14beta05 [October 1, 2014]
|
---|
5019 | Added "option READ_iCCP enables READ_COMPRESSED_TEXT" to pnglibconf.dfa
|
---|
5020 |
|
---|
5021 | Version 1.6.14beta06 [October 5, 2014]
|
---|
5022 | Removed unused "text_len" parameter from private function png_write_zTXt().
|
---|
5023 | Conditionally compile some code in png_deflate_claim(), when
|
---|
5024 | PNG_WARNINGS_SUPPORTED and PNG_ERROR_TEXT_SUPPORTED are disabled.
|
---|
5025 | Replaced repeated code in pngpread.c with PNG_PUSH_SAVE_BUFFER_IF_FULL.
|
---|
5026 | Added "chunk iTXt enables TEXT" and "chunk zTXt enables TEXT"
|
---|
5027 | to pnglibconf.dfa.
|
---|
5028 | Removed "option READ_COMPRESSED_TEXT enables READ_TEXT" from pnglibconf.dfa,
|
---|
5029 | to make it possible to configure a libpng that supports iCCP but not TEXT.
|
---|
5030 |
|
---|
5031 | Version 1.6.14beta07 [October 7, 2014]
|
---|
5032 | Removed "option WRITE_COMPRESSED_TEXT enables WRITE_TEXT" from pnglibconf.dfa
|
---|
5033 | Only mark text chunks as written after successfully writing them.
|
---|
5034 |
|
---|
5035 | Version 1.6.14rc01 [October 15, 2014]
|
---|
5036 | Fixed some typos in comments.
|
---|
5037 |
|
---|
5038 | Version 1.6.14rc02 [October 17, 2014]
|
---|
5039 | Changed png_convert_to_rfc_1123() to png_convert_to_rfc_1123_buffer()
|
---|
5040 | in the manual, to reflect the change made in libpng-1.6.0.
|
---|
5041 | Updated README file to explain that direct access to the png_struct
|
---|
5042 | and info_struct members has not been permitted since libpng-1.5.0.
|
---|
5043 |
|
---|
5044 | Version 1.6.14 [October 23, 2014]
|
---|
5045 | No changes.
|
---|
5046 |
|
---|
5047 | Version 1.6.15beta01 [October 29, 2014]
|
---|
5048 | Changed "if (!x)" to "if (x == 0)" and "if (x)" to "if (x != 0)"
|
---|
5049 | Simplified png_free_data().
|
---|
5050 | Added missing "ptr = NULL" after some instances of png_free().
|
---|
5051 |
|
---|
5052 | Version 1.6.15beta02 [November 1, 2014]
|
---|
5053 | Changed remaining "if (!x)" to "if (x == 0)" and "if (x)" to "if (x != 0)"
|
---|
5054 |
|
---|
5055 | Version 1.6.15beta03 [November 3, 2014]
|
---|
5056 | Added PNG_USE_ARM_NEON configuration flag (Marcin Juszkiewicz).
|
---|
5057 |
|
---|
5058 | Version 1.6.15beta04 [November 4, 2014]
|
---|
5059 | Removed new PNG_USE_ARM_NEON configuration flag and made a one-line
|
---|
5060 | revision to configure.ac to support ARM on aarch64 instead (John Bowler).
|
---|
5061 |
|
---|
5062 | Version 1.6.15beta05 [November 5, 2014]
|
---|
5063 | Use png_get_libpng_ver(NULL) instead of PNG_LIBPNG_VER_STRING in
|
---|
5064 | example.c, pngtest.c, and applications in the contrib directory.
|
---|
5065 | Fixed an out-of-range read in png_user_version_check() (Bug report from
|
---|
5066 | Qixue Xiao, CVE-2015-8540).
|
---|
5067 | Simplified and future-proofed png_user_version_check().
|
---|
5068 | Fixed GCC unsigned int->float warnings. Various versions of GCC
|
---|
5069 | seem to generate warnings when an unsigned value is implicitly
|
---|
5070 | converted to double. This is probably a GCC bug but this change
|
---|
5071 | avoids the issue by explicitly converting to (int) where safe.
|
---|
5072 | Free all allocated memory in pngimage. The file buffer cache was left
|
---|
5073 | allocated at the end of the program, harmless but it causes memory
|
---|
5074 | leak reports from clang.
|
---|
5075 | Fixed array size calculations to avoid warnings. At various points
|
---|
5076 | in the code the number of elements in an array is calculated using
|
---|
5077 | sizeof. This generates a compile time constant of type (size_t) which
|
---|
5078 | is then typically assigned to an (unsigned int) or (int). Some versions
|
---|
5079 | of GCC on 64-bit systems warn about the apparent narrowing, even though
|
---|
5080 | the same compiler does apparently generate the correct, in-range,
|
---|
5081 | numeric constant. This adds appropriate, safe, casts to make the
|
---|
5082 | warnings go away.
|
---|
5083 |
|
---|
5084 | Version 1.6.15beta06 [November 6, 2014]
|
---|
5085 | Reverted use png_get_libpng_ver(NULL) instead of PNG_LIBPNG_VER_STRING
|
---|
5086 | in the manual, example.c, pngtest.c, and applications in the contrib
|
---|
5087 | directory. It was incorrect advice.
|
---|
5088 |
|
---|
5089 | Version 1.6.15beta07 [November 7, 2014]
|
---|
5090 | Removed #ifdef PNG_16BIT_SUPPORTED/#endif around png_product2(); it is
|
---|
5091 | needed by png_reciprocal2().
|
---|
5092 | Added #ifdef PNG_16BIT_SUPPORTED/#endif around png_log16bit() and
|
---|
5093 | png_do_swap().
|
---|
5094 | Changed all "#endif /* PNG_FEATURE_SUPPORTED */" to "#endif /* FEATURE */"
|
---|
5095 |
|
---|
5096 | Version 1.6.15beta08 [November 8, 2014]
|
---|
5097 | More housecleaning in *.h
|
---|
5098 |
|
---|
5099 | Version 1.6.15rc01 [November 13, 2014]
|
---|
5100 |
|
---|
5101 | Version 1.6.15rc02 [November 14, 2014]
|
---|
5102 | The macros passed in the command line to Borland make were ignored if
|
---|
5103 | similarly-named macros were already defined in makefiles. This behavior
|
---|
5104 | is different from POSIX make and other make programs. Surround the
|
---|
5105 | macro definitions with ifndef guards (Cosmin).
|
---|
5106 |
|
---|
5107 | Version 1.6.15rc03 [November 16, 2014]
|
---|
5108 | Added "-D_CRT_SECURE_NO_WARNINGS" to CFLAGS in scripts/makefile.vcwin32.
|
---|
5109 | Removed the obsolete $ARCH variable from scripts/makefile.darwin.
|
---|
5110 |
|
---|
5111 | Version 1.6.15 [November 20, 2014]
|
---|
5112 | No changes.
|
---|
5113 |
|
---|
5114 | Version 1.6.16beta01 [December 14, 2014]
|
---|
5115 | Added ".align 2" to arm/filter_neon.S to support old GAS assemblers that
|
---|
5116 | don't do alignment correctly.
|
---|
5117 | Revised Makefile.am and scripts/symbols.dfn to work with MinGW/MSYS
|
---|
5118 | (Bob Friesenhahn).
|
---|
5119 |
|
---|
5120 | Version 1.6.16beta02 [December 15, 2014]
|
---|
5121 | Revised Makefile.am and scripts/*.dfn again to work with MinGW/MSYS;
|
---|
5122 | renamed scripts/*.dfn to scripts/*.c (John Bowler).
|
---|
5123 |
|
---|
5124 | Version 1.6.16beta03 [December 21, 2014]
|
---|
5125 | Quiet a "comparison always true" warning in pngstest.c (John Bowler).
|
---|
5126 |
|
---|
5127 | Version 1.6.16rc01 [December 21, 2014]
|
---|
5128 | Restored a test on width that was removed from png.c at libpng-1.6.9
|
---|
5129 | (Bug report by Alex Eubanks, CVE-2015-0973).
|
---|
5130 |
|
---|
5131 | Version 1.6.16rc02 [December 21, 2014]
|
---|
5132 | Undid the update to pngrutil.c in 1.6.16rc01.
|
---|
5133 |
|
---|
5134 | Version 1.6.16rc03 [December 21, 2014]
|
---|
5135 | Fixed an overflow in png_combine_row() with very wide interlaced images
|
---|
5136 | (Bug report and fix by John Bowler, CVE-2014-9495).
|
---|
5137 |
|
---|
5138 | Version 1.6.16 [December 22, 2014]
|
---|
5139 | No changes.
|
---|
5140 |
|
---|
5141 | Version 1.6.17beta01 [January 29, 2015]
|
---|
5142 | Removed duplicate PNG_SAFE_LIMITS_SUPPORTED handling from pngconf.h
|
---|
5143 | Corrected the width limit calculation in png_check_IHDR().
|
---|
5144 | Removed user limits from pngfix. Also pass NULL pointers to
|
---|
5145 | png_read_row to skip the unnecessary row de-interlace stuff.
|
---|
5146 | Added testing of png_set_packing() to pngvalid.c
|
---|
5147 | Regenerated configure scripts in the *.tar distributions with libtool-2.4.4
|
---|
5148 | Implement previously untested cases of libpng transforms in pngvalid.c
|
---|
5149 | Fixed byte order in png_do_read_filler() with 16-bit input. Previously
|
---|
5150 | the high and low bytes of the filler, from png_set_filler() or from
|
---|
5151 | png_set_add_alpha(), were read in the wrong order.
|
---|
5152 | Made the check for out-of-range values in png_set_tRNS() detect
|
---|
5153 | values that are exactly 2^bit_depth, and work on 16-bit platforms.
|
---|
5154 | Merged some parts of libpng-1.6.17beta01 and libpng-1.7.0beta47.
|
---|
5155 | Added #ifndef __COVERITY__ where needed in png.c, pngrutil.c and
|
---|
5156 | pngset.c to avoid warnings about dead code.
|
---|
5157 | Added "& 0xff" to many instances of expressions that are typecast
|
---|
5158 | to (png_byte), to avoid Coverity warnings.
|
---|
5159 |
|
---|
5160 | Version 1.6.17beta02 [February 7, 2015]
|
---|
5161 | Work around one more Coverity-scan dead-code warning.
|
---|
5162 | Do not build png_product2() when it is unused.
|
---|
5163 |
|
---|
5164 | Version 1.6.17beta03 [February 17, 2015]
|
---|
5165 | Display user limits in the output from pngtest.
|
---|
5166 | Eliminated the PNG_SAFE_LIMITS macro and restored the 1-million-column
|
---|
5167 | and 1-million-row default limits in pnglibconf.dfa, that can be reset
|
---|
5168 | by the user at build time or run time. This provides a more robust
|
---|
5169 | defense against DOS and as-yet undiscovered overflows.
|
---|
5170 |
|
---|
5171 | Version 1.6.17beta04 [February 21, 2015]
|
---|
5172 | Added PNG_WRITE_CUSTOMIZE_COMPRESSION_SUPPORTED macro, on by default.
|
---|
5173 | Allow user to call png_get_IHDR() with NULL arguments (Reuben Hawkins).
|
---|
5174 | Rebuilt configure scripts with automake-1.15 and libtool-2.4.6
|
---|
5175 |
|
---|
5176 | Version 1.6.17beta05 [February 25, 2015]
|
---|
5177 | Restored compiling of png_reciprocal2 with PNG_NO_16BIT.
|
---|
5178 |
|
---|
5179 | Version 1.6.17beta06 [February 27, 2015]
|
---|
5180 | Moved png_set_filter() prototype into a PNG_WRITE_SUPPORTED block
|
---|
5181 | of png.h.
|
---|
5182 | Avoid runtime checks when converting integer to png_byte with
|
---|
5183 | Visual Studio (Sergey Kosarevsky)
|
---|
5184 |
|
---|
5185 | Version 1.6.17rc01 [March 4, 2015]
|
---|
5186 | No changes.
|
---|
5187 |
|
---|
5188 | Version 1.6.17rc02 [March 9, 2015]
|
---|
5189 | Removed some comments that the configure script did not handle
|
---|
5190 | properly from scripts/pnglibconf.dfa and pnglibconf.h.prebuilt.
|
---|
5191 | Free the unknown_chunks structure even when it contains no data.
|
---|
5192 |
|
---|
5193 | Version 1.6.17rc03 [March 12, 2015]
|
---|
5194 | Updated CMakeLists.txt to add OSX framework, change YES/NO to ON/OFF
|
---|
5195 | for consistency, and remove some useless tests (Alexey Petruchik).
|
---|
5196 |
|
---|
5197 | Version 1.6.17rc04 [March 16, 2015]
|
---|
5198 | Remove pnglibconf.h, pnglibconf.c, and pnglibconf.out instead of
|
---|
5199 | pnglibconf.* in "make clean" (Cosmin).
|
---|
5200 | Fix bug in calculation of maxbits, in png_write_sBIT, introduced
|
---|
5201 | in libpng-1.6.17beta01 (John Bowler).
|
---|
5202 |
|
---|
5203 | Version 1.6.17rc05 [March 21, 2015]
|
---|
5204 | Define PNG_FILTER_* and PNG_FILTER_VALUE_* in png.h even when WRITE
|
---|
5205 | is not supported (John Bowler). This fixes an error introduced in
|
---|
5206 | libpng-1.6.17beta06.
|
---|
5207 | Reverted "& 0xff" additions of version 1.6.17beta01. Libpng passes
|
---|
5208 | the Coverity scan without them.
|
---|
5209 |
|
---|
5210 | Version 1.6.17rc06 [March 23, 2015]
|
---|
5211 | Remove pnglibconf.dfn and pnglibconf.pre with "make clean".
|
---|
5212 | Reformatted some "&0xff" instances to "& 0xff".
|
---|
5213 | Fixed simplified 8-bit-linear to sRGB alpha. The calculated alpha
|
---|
5214 | value was wrong. It's not clear if this affected the final stored
|
---|
5215 | value; in the obvious code path the upper and lower 8-bits of the
|
---|
5216 | alpha value were identical and the alpha was truncated to 8-bits
|
---|
5217 | rather than dividing by 257 (John Bowler).
|
---|
5218 |
|
---|
5219 | Version 1.6.17 [March 26, 2015]
|
---|
5220 | No changes.
|
---|
5221 |
|
---|
5222 | Version 1.6.18beta01 [April 1, 2015]
|
---|
5223 | Removed PNG_SET_CHUNK_[CACHE|MALLOC]_LIMIT_SUPPORTED macros. They
|
---|
5224 | have been combined with PNG_SET_USER_LIMITS_SUPPORTED (resolves
|
---|
5225 | bug report by Andrew Church).
|
---|
5226 | Fixed rgb_to_gray checks and added tRNS checks to pngvalid.c. This
|
---|
5227 | fixes some arithmetic errors that caused some tests to fail on
|
---|
5228 | some 32-bit platforms (Bug reports by Peter Breitenlohner [i686]
|
---|
5229 | and Petr Gajdos [i586]).
|
---|
5230 |
|
---|
5231 | Version 1.6.18beta02 [April 26, 2015]
|
---|
5232 | Suppressed some warnings from the Borland C++ 5.5.1/5.82 compiler
|
---|
5233 | (Bug report by Viktor Szakats).
|
---|
5234 |
|
---|
5235 | Version 1.6.18beta03 [May 6, 2015]
|
---|
5236 | Replaced "unexpected" with an integer (0xabadca11) in pngset.c
|
---|
5237 | where a long was expected, to avoid a compiler warning when PNG_DEBUG > 1.
|
---|
5238 | Added contrib/examples/simpleover.c, to demonstrate how to handle
|
---|
5239 | alpha compositing of multiple images, using the "simplified API"
|
---|
5240 | and an example PNG generation tool, contrib/examples/genpng.c
|
---|
5241 | (John Bowler).
|
---|
5242 |
|
---|
5243 | Version 1.6.18beta04 [May 20, 2015]
|
---|
5244 | PNG_RELEASE_BUILD replaces tests where the code depended on the build base
|
---|
5245 | type and can be defined on the command line, allowing testing in beta
|
---|
5246 | builds (John Bowler).
|
---|
5247 | Avoid Coverity issue 80858 (REVERSE NULL) in pngtest.c PNG_DEBUG builds.
|
---|
5248 | Avoid a harmless potential integer overflow in png_XYZ_from_xy() (Bug
|
---|
5249 | report from Christopher Ferris).
|
---|
5250 |
|
---|
5251 | Version 1.6.18beta05 [May 31, 2015]
|
---|
5252 | Backport filter selection code from libpng-1.7.0beta51, to combine
|
---|
5253 | sub_row, up_row, avg_row, and paeth_row into try_row and tst_row.
|
---|
5254 | Changed png_voidcast(), etc., to voidcast(), etc., in contrib/tools/pngfix.c
|
---|
5255 | to avoid confusion with the libpng private macros.
|
---|
5256 | Fixed old cut&paste bug in the weighted filter selection code in
|
---|
5257 | pngwutil.c, introduced in libpng-0.95, March 1997.
|
---|
5258 |
|
---|
5259 | Version 1.6.18beta06 [June 1, 2015]
|
---|
5260 | Removed WRITE_WEIGHTED_FILTERED code, to save a few kbytes of the
|
---|
5261 | compiled library size. It never worked properly and as far as we can
|
---|
5262 | tell, no one uses it. The png_set_filter_heuristics() and
|
---|
5263 | png_set_filter_heuristics_fixed() APIs are retained but deprecated
|
---|
5264 | and do nothing.
|
---|
5265 |
|
---|
5266 | Version 1.6.18beta07 [June 6, 2015]
|
---|
5267 | Removed non-working progressive reader 'skip' function. This
|
---|
5268 | function has apparently never been used. It was implemented
|
---|
5269 | to support back-door modification of png_struct in libpng-1.4.x
|
---|
5270 | but (because it does nothing and cannot do anything) was apparently
|
---|
5271 | never tested (John Bowler).
|
---|
5272 | Fixed cexcept.h in which GCC 5 now reports that one of the auto
|
---|
5273 | variables in the Try macro needs to be volatile to prevent value
|
---|
5274 | being lost over the setjmp (John Bowler).
|
---|
5275 | Fixed NO_WRITE_FILTER and -Wconversion build breaks (John Bowler).
|
---|
5276 | Fix g++ build breaks (John Bowler).
|
---|
5277 | Quieted some Coverity issues in pngfix.c, png-fix-itxt.c, pngvalid.c,
|
---|
5278 | pngstest.c, and pngimage.c. Most seem harmless, but png-fix-itxt
|
---|
5279 | would only work with iTXt chunks with length 255 or less.
|
---|
5280 | Added #ifdef's to contrib/examples programs so people don't try
|
---|
5281 | to compile them without the minimum required support enabled
|
---|
5282 | (suggested by Flavio Medeiros).
|
---|
5283 |
|
---|
5284 | Version 1.6.18beta08 [June 30, 2015]
|
---|
5285 | Eliminated the final two Coverity defects (insecure temporary file
|
---|
5286 | handling in contrib/libtests/pngstest.c; possible overflow of
|
---|
5287 | unsigned char in contrib/tools/png-fix-itxt.c). To use the "secure"
|
---|
5288 | file handling, define PNG_USE_MKSTEMP, otherwise "tmpfile()" will
|
---|
5289 | be used.
|
---|
5290 | Removed some unused WEIGHTED_FILTER macros from png.h and pngstruct.h
|
---|
5291 |
|
---|
5292 | Version 1.6.18beta09 [July 5, 2015]
|
---|
5293 | Removed some useless typecasts from contrib/tools/png-fix-itxt.c
|
---|
5294 | Fixed a new signed-unsigned comparison in pngrtran.c (Max Stepin).
|
---|
5295 | Replaced arbitrary use of 'extern' with #define PNG_LINKAGE_*. To
|
---|
5296 | preserve API compatibility, the new defines all default to "extern"
|
---|
5297 | (requested by Jan Nijtmans).
|
---|
5298 |
|
---|
5299 | Version 1.6.18rc01 [July 9, 2015]
|
---|
5300 | Belatedly added Mans Rullgard and James Yu to the list of Contributing
|
---|
5301 | Authors.
|
---|
5302 |
|
---|
5303 | Version 1.6.18rc02 [July 12, 2015]
|
---|
5304 | Restored unused FILTER_HEURISTIC macros removed at libpng-1.6.18beta08
|
---|
5305 | to png.h to avoid compatibility warnings.
|
---|
5306 |
|
---|
5307 | Version 1.6.18rc03 [July 15, 2015]
|
---|
5308 | Minor changes to the man page
|
---|
5309 |
|
---|
5310 | Version 1.6.18 [July 23, 2015]
|
---|
5311 | No changes.
|
---|
5312 |
|
---|
5313 | Version 1.6.19beta01 [July 30, 2015]
|
---|
5314 | Updated obsolete information about the simplified API macros in the
|
---|
5315 | manual pages (Bug report by Arc Riley).
|
---|
5316 | Avoid potentially dereferencing NULL info_ptr in png_info_init_3().
|
---|
5317 | Rearranged png.h to put the major sections in the same order as
|
---|
5318 | in libpng17.
|
---|
5319 | Eliminated unused PNG_COST_SHIFT, PNG_WEIGHT_SHIFT, PNG_COST_FACTOR, and
|
---|
5320 | PNG_WEIGHT_FACTOR macros.
|
---|
5321 | Suppressed some warnings from the Borland C++ 5.5.1/5.82 compiler
|
---|
5322 | (Bug report by Viktor Szakats). Several warnings remain and are
|
---|
5323 | unavoidable, where we test for overflow.
|
---|
5324 | Fixed potential leak of png_pixels in contrib/pngminus/pnm2png.c
|
---|
5325 | Fixed uninitialized variable in contrib/gregbook/rpng2-x.c
|
---|
5326 |
|
---|
5327 | Version 1.6.19beta02 [August 19, 2015]
|
---|
5328 | Moved config.h.in~ from the "libpng_autotools_files" list to the
|
---|
5329 | "libpng_autotools_extra" list in autogen.sh because it was causing a
|
---|
5330 | false positive for missing files (bug report by Robert C. Seacord).
|
---|
5331 | Removed unreachable "break" statements in png.c, pngread.c, and pngrtran.c
|
---|
5332 | to suppress clang warnings (Bug report by Viktor Szakats).
|
---|
5333 | Fixed some bad links in the man page.
|
---|
5334 | Changed "n bit" to "n-bit" in comments.
|
---|
5335 | Added signed/unsigned 16-bit safety net. This removes the dubious
|
---|
5336 | 0x8000 flag definitions on 16-bit systems. They aren't supported
|
---|
5337 | yet the defs *probably* work, however it seems much safer to do this
|
---|
5338 | and be advised if anyone, contrary to advice, is building libpng 1.6
|
---|
5339 | on a 16-bit system. It also adds back various switch default clauses
|
---|
5340 | for GCC; GCC errors out if they are not present (with an appropriately
|
---|
5341 | high level of warnings).
|
---|
5342 | Safely convert num_bytes to a png_byte in png_set_sig_bytes() (Robert
|
---|
5343 | Seacord).
|
---|
5344 | Fixed the recently reported 1's complement security issue by replacing
|
---|
5345 | the value that is illegal in the PNG spec, in both signed and unsigned
|
---|
5346 | values, with 0. Illegal unsigned values (anything greater than or equal
|
---|
5347 | to 0x80000000) can still pass through, but since these are not illegal
|
---|
5348 | in ANSI-C (unlike 0x80000000 in the signed case) the checking that
|
---|
5349 | occurs later can catch them (John Bowler).
|
---|
5350 |
|
---|
5351 | Version 1.6.19beta03 [September 26, 2015]
|
---|
5352 | Fixed png_save_int_32 when int is not 2's complement (John Bowler).
|
---|
5353 | Updated libpng16 with all the recent test changes from libpng17,
|
---|
5354 | including changes to pngvalid.c to ensure that the original,
|
---|
5355 | distributed, version of contrib/visupng/cexcept.h can be used
|
---|
5356 | (John Bowler).
|
---|
5357 | pngvalid contains the correction to the use of SAVE/STORE_
|
---|
5358 | UNKNOWN_CHUNKS; a bug revealed by changes in libpng 1.7. More
|
---|
5359 | tests contain the --strict option to detect warnings and the
|
---|
5360 | pngvalid-standard test has been corrected so that it does not
|
---|
5361 | turn on progressive-read. There is a separate test which does
|
---|
5362 | that. (John Bowler)
|
---|
5363 | Also made some signed/unsigned fixes.
|
---|
5364 | Make pngstest error limits version specific. Splitting the machine
|
---|
5365 | generated error structs out to a file allows the values to be updated
|
---|
5366 | without changing pngstest.c itself. Since libpng 1.6 and 1.7 have
|
---|
5367 | slightly different error limits this simplifies maintenance. The
|
---|
5368 | makepngs.sh script has also been updated to more accurately reflect
|
---|
5369 | current problems in libpng 1.7 (John Bowler).
|
---|
5370 | Incorporated new test PNG files into make check. tests/pngstest-*
|
---|
5371 | are changed so that the new test files are divided into 8 groups by
|
---|
5372 | gamma and alpha channel. These tests have considerably better code
|
---|
5373 | and pixel-value coverage than contrib/pngsuite; however,coverage is
|
---|
5374 | still incomplete (John Bowler).
|
---|
5375 | Removed the '--strict' in 1.6 because of the double-gamma-correction
|
---|
5376 | warning, updated pngstest-errors.h for the errors detected with the
|
---|
5377 | new contrib/testspngs PNG test files (John Bowler).
|
---|
5378 |
|
---|
5379 | Version 1.6.19beta04 [October 15, 2015]
|
---|
5380 | Worked around rgb-to-gray issues in libpng 1.6. The previous
|
---|
5381 | attempts to ignore the errors in the code aren't quite enough to
|
---|
5382 | deal with the 'channel selection' encoding added to libpng 1.7; abort.
|
---|
5383 | pngvalid.c is changed to drop this encoding in prior versions.
|
---|
5384 | Fixed 'pow' macros in pngvalid.c. It is legal for 'pow' to be a
|
---|
5385 | macro, therefore the argument list cannot contain preprocessing
|
---|
5386 | directives. Make sure pow is a function where this happens. This is
|
---|
5387 | a minimal safe fix, the issue only arises in non-performance-critical
|
---|
5388 | code (bug report by Curtis Leach, fix by John Bowler).
|
---|
5389 | Added sPLT support to pngtest.c
|
---|
5390 |
|
---|
5391 | Version 1.6.19rc01 [October 23, 2015]
|
---|
5392 | No changes.
|
---|
5393 |
|
---|
5394 | Version 1.6.19rc02 [October 31, 2015]
|
---|
5395 | Prevent setting or writing over-length PLTE chunk (Cosmin Truta).
|
---|
5396 | Silently truncate over-length PLTE chunk while reading.
|
---|
5397 | Libpng incorrectly calculated the output rowbytes when the application
|
---|
5398 | decreased either the number of channels or the bit depth (or both) in
|
---|
5399 | a user transform. This was safe; libpng overallocated buffer space
|
---|
5400 | (potentially by quite a lot; up to 4 times the amount required) but,
|
---|
5401 | from 1.5.4 on, resulted in a png_error (John Bowler).
|
---|
5402 |
|
---|
5403 | Version 1.6.19rc03 [November 3, 2015]
|
---|
5404 | Fixed some inconsequential cut-and-paste typos in png_set_cHRM_XYZ_fixed().
|
---|
5405 | Clarified COPYRIGHT information to state explicitly that versions
|
---|
5406 | are derived from previous versions.
|
---|
5407 | Removed much of the long list of previous versions from png.h and
|
---|
5408 | libpng.3.
|
---|
5409 |
|
---|
5410 | Version 1.6.19rc04 [November 5, 2015]
|
---|
5411 | Fixed new bug with CRC error after reading an over-length palette
|
---|
5412 | (bug report by Cosmin Truta) (CVE-2015-8126).
|
---|
5413 |
|
---|
5414 | Version 1.6.19 [November 12, 2015]
|
---|
5415 | Cleaned up coding style in png_handle_PLTE().
|
---|
5416 |
|
---|
5417 | Version 1.6.20beta01 [November 20, 2015]
|
---|
5418 | Avoid potential pointer overflow/underflow in png_handle_sPLT() and
|
---|
5419 | png_handle_pCAL() (Bug report by John Regehr).
|
---|
5420 |
|
---|
5421 | Version 1.6.20beta02 [November 23, 2015]
|
---|
5422 | Fixed incorrect implementation of png_set_PLTE() that uses png_ptr
|
---|
5423 | not info_ptr, that left png_set_PLTE() open to the CVE-2015-8126
|
---|
5424 | vulnerability. Fixes CVE-2015-8472.
|
---|
5425 |
|
---|
5426 | Version 1.6.20beta03 [November 24, 2015]
|
---|
5427 | Backported tests from libpng-1.7.0beta69.
|
---|
5428 |
|
---|
5429 | Version 1.6.20rc01 [November 26, 2015]
|
---|
5430 | Fixed an error in handling of bad zlib CMINFO field in pngfix, found by
|
---|
5431 | American Fuzzy Lop, reported by Brian Carpenter. inflate() doesn't
|
---|
5432 | immediately fault a bad CMINFO field; instead a 'too far back' error
|
---|
5433 | happens later (at least some times). pngfix failed to limit CMINFO to
|
---|
5434 | the allowed values but then assumed that window_bits was in range,
|
---|
5435 | triggering an assert. The bug is mostly harmless; the PNG file cannot
|
---|
5436 | be fixed.
|
---|
5437 |
|
---|
5438 | Version 1.6.20rc02 [November 29, 2015]
|
---|
5439 | In libpng 1.6 zlib initialization was changed to use the window size
|
---|
5440 | in the zlib stream, not a fixed value. This causes some invalid images,
|
---|
5441 | where CINFO is too large, to display 'correctly' if the rest of the
|
---|
5442 | data is valid. This provides a workaround for zlib versions where the
|
---|
5443 | error arises (ones that support the API change to use the window size
|
---|
5444 | in the stream).
|
---|
5445 |
|
---|
5446 | Version 1.6.20 [December 3, 2015]
|
---|
5447 | No changes.
|
---|
5448 |
|
---|
5449 | Version 1.6.21beta01 [December 11, 2015]
|
---|
5450 | Fixed syntax "$(command)" in tests/pngstest that some shells other than
|
---|
5451 | bash could not parse (Bug report by Nelson Beebe). Use `command` instead.
|
---|
5452 |
|
---|
5453 | Version 1.6.21beta02 [December 14, 2015]
|
---|
5454 | Moved png_check_keyword() from pngwutil.c to pngset.c
|
---|
5455 | Removed LE/BE dependencies in pngvalid, to 'fix' the current problem
|
---|
5456 | in the BigEndian tests by not testing it, making the BE code the same
|
---|
5457 | as the LE version.
|
---|
5458 | Fixes to pngvalid for various reduced build configurations (eliminate unused
|
---|
5459 | statics) and a fix for the case in rgb_to_gray when the digitize option
|
---|
5460 | reduces graylo to 0, producing a large error.
|
---|
5461 |
|
---|
5462 | Version 1.6.21beta03 [December 18, 2015]
|
---|
5463 | Widened the 'limit' check on the internally calculated error limits in
|
---|
5464 | the 'DIGITIZE' case (the code used prior to 1.7 for rgb_to_gray error
|
---|
5465 | checks) and changed the check to only operate in non-release builds
|
---|
5466 | (base build type not RC or RELEASE.)
|
---|
5467 | Fixed undefined behavior in pngvalid.c, undefined because
|
---|
5468 | (png_byte) << shift is undefined if it changes the signed bit
|
---|
5469 | (because png_byte is promoted to int). The libpng exported functions
|
---|
5470 | png_get_uint_32 and png_get_uint_16 handle this. (Bug reported by
|
---|
5471 | David Drysdale as a result of reports from UBSAN in clang 3.8).
|
---|
5472 | This changes pngvalid to use BE random numbers; this used to produce
|
---|
5473 | errors but these should not be fixed as a result of the previous changes.
|
---|
5474 |
|
---|
5475 | Version 1.6.21rc01 [January 4, 2016]
|
---|
5476 | In projects/vstudio, combined readme.txt and WARNING into README.txt
|
---|
5477 |
|
---|
5478 | Version 1.6.21rc02 [January 7, 2016]
|
---|
5479 | Relocated assert() in contrib/tools/pngfix.c, bug found by American
|
---|
5480 | Fuzzy Lop, reported by Brian Carpenter.
|
---|
5481 | Marked 'limit' UNUSED in transform_range_check(). This only affects
|
---|
5482 | release builds.
|
---|
5483 |
|
---|
5484 | Version 1.6.21 [January 15, 2016]
|
---|
5485 | Worked around a false-positive Coverity issue in pngvalid.c.
|
---|
5486 |
|
---|
5487 | Version 1.6.22beta01 [January 23, 2016]
|
---|
5488 | Changed PNG_USE_MKSTEMP to __COVERITY__ to select alternate
|
---|
5489 | "tmpfile()" implementation in contrib/libtests/pngstest.c
|
---|
5490 | Fixed NO_STDIO build of pngunknown.c to skip calling png_init_io()
|
---|
5491 | if there is no stdio.h support.
|
---|
5492 | Added a png_image_write_to_memory() API and a number of assist macros
|
---|
5493 | to allow an application that uses the simplified API write to bypass
|
---|
5494 | stdio and write directly to memory.
|
---|
5495 | Added some warnings (png.h) and some check code to detect *possible*
|
---|
5496 | overflow in the ROW_STRIDE and simplified image SIZE macros. This
|
---|
5497 | disallows image width/height/format that *might* overflow. This is
|
---|
5498 | a quiet API change that limits in-memory image size (uncompressed) to
|
---|
5499 | less than 4GByte and image row size (stride) to less than 2GByte.
|
---|
5500 | Revised workaround for false-positive Coverity issue in pngvalid.c.
|
---|
5501 |
|
---|
5502 | Version 1.6.22beta02 [February 8, 2016]
|
---|
5503 | Only use exit(77) in configure builds.
|
---|
5504 | Corrected error in PNG_IMAGE_PNG_SIZE_MAX. This new macro underreported
|
---|
5505 | the palette size because it failed to take into account that the memory
|
---|
5506 | palette has to be expanded to full RGB when it is written to PNG.
|
---|
5507 | Updated CMakeLists.txt, added supporting scripts/gen*.cmake.in
|
---|
5508 | and test.cmake.in (Roger Leigh).
|
---|
5509 | Relaxed limit checks on gamma values in pngrtran.c. As suggested in
|
---|
5510 | the comments gamma values outside the range currently permitted
|
---|
5511 | by png_set_alpha_mode are useful for HDR data encoding. These values
|
---|
5512 | are already permitted by png_set_gamma so it is reasonable caution to
|
---|
5513 | extend the png_set_alpha_mode range as HDR imaging systems are starting
|
---|
5514 | to emerge.
|
---|
5515 |
|
---|
5516 | Version 1.6.22beta03 [March 9, 2016]
|
---|
5517 | Added a common-law trademark notice and export control information
|
---|
5518 | to the LICENSE file, png.h, and the man page.
|
---|
5519 | Restored "& 0xff" in png_save_uint_16() and png_save_uint_32() that
|
---|
5520 | were accidentally removed from libpng-1.6.17.
|
---|
5521 | Changed PNG_INFO_cHNK and PNG_FREE_cHNK from 0xnnnn to 0xnnnnU in png.h
|
---|
5522 | (Robert C. Seacord).
|
---|
5523 | Removed dubious "#if INT_MAX" test from png.h that was added to
|
---|
5524 | libpng-1.6.19beta02 (John Bowler).
|
---|
5525 | Add ${INCLUDES} in scripts/genout.cmake.in (Bug report by Nixon Kwok).
|
---|
5526 | Updated LICENSE to say files in the contrib directory are not
|
---|
5527 | necessarily under the libpng license, and that some makefiles have
|
---|
5528 | other copyright owners.
|
---|
5529 | Added INTEL-SSE2 support (Mike Klein and Matt Sarett, Google, Inc.).
|
---|
5530 | Made contrib/libtests/timepng more robust. The code no longer gives
|
---|
5531 | up/fails on invalid PNG data, it just skips it (with error messages).
|
---|
5532 | The code no longer fails on PNG files with data beyond IEND. Options
|
---|
5533 | exist to use png_read_png (reading the whole image, not by row) and, in
|
---|
5534 | that case, to apply any of the supported transforms. This makes for
|
---|
5535 | more realistic testing; the decoded data actually gets used in a
|
---|
5536 | meaningful fashion (John Bowler).
|
---|
5537 | Fixed some misleading indentation (Krishnaraj Bhat).
|
---|
5538 |
|
---|
5539 | Version 1.6.22beta04 [April 5, 2016]
|
---|
5540 | Force GCC compilation to C89 if needed (Dagobert Michelsen).
|
---|
5541 | SSE filter speed improvements for bpp=3:
|
---|
5542 | memcpy-free implementations of load3() / store3().
|
---|
5543 | call load3() only when needed at the end of a scanline.
|
---|
5544 |
|
---|
5545 | Version 1.6.22beta05 [April 27, 2016]
|
---|
5546 | Added PNG_FAST_FILTERS macro (defined as
|
---|
5547 | PNG_FILTER_NONE|PNG_FILTER_SUB|PNG_FILTER_UP).
|
---|
5548 | Various fixes for contrib/libtests/timepng.c
|
---|
5549 | Moved INTEL-SSE code from pngpriv.h into contrib/intel/intel_sse.patch.
|
---|
5550 | Fixed typo (missing underscore) in #define PNG_READ_16_TO_8_SUPPORTED
|
---|
5551 | (Bug report by Y.Ohashik).
|
---|
5552 |
|
---|
5553 | Version 1.6.22beta06 [May 5, 2016]
|
---|
5554 | Rebased contrib/intel_sse.patch.
|
---|
5555 | Quieted two Coverity issues in contrib/libtests/timepng.c.
|
---|
5556 | Fixed issues with scripts/genout.cmake.in (David Capello, Nixon Kwok):
|
---|
5557 | Added support to use multiple directories in ZLIBINCDIR variable,
|
---|
5558 | Fixed CMAKE_C_FLAGS with multiple values when genout is compiled on MSVC,
|
---|
5559 | Fixed pnglibconf.c compilation on OS X including the sysroot path.
|
---|
5560 |
|
---|
5561 | Version 1.6.22rc01 [May 14, 2016]
|
---|
5562 | No changes.
|
---|
5563 |
|
---|
5564 | Version 1.6.22rc02 [May 16, 2016]
|
---|
5565 | Removed contrib/timepng from default build; it does not build on platforms
|
---|
5566 | that don't supply clock_gettime().
|
---|
5567 |
|
---|
5568 | Version 1.6.22rc03 [May 17, 2016]
|
---|
5569 | Restored contrib/timepng to default build but check for the presence
|
---|
5570 | of clock_gettime() in configure.ac and Makefile.am.
|
---|
5571 |
|
---|
5572 | Version 1.6.22 [May 26, 2016]
|
---|
5573 | No changes.
|
---|
5574 |
|
---|
5575 | Version 1.6.23beta01 [May 29, 2016]
|
---|
5576 | Stop a potential memory leak in png_set_tRNS() (Bug report by Ted Ying).
|
---|
5577 | Fixed the progressive reader to handle empty first IDAT chunk properly
|
---|
5578 | (patch by Timothy Nikkel). This bug was introduced in libpng-1.6.0 and
|
---|
5579 | only affected the libpng16 branch.
|
---|
5580 | Added tests in pngvalid.c to check zero-length IDAT chunks in various
|
---|
5581 | positions. Fixed the sequential reader to handle these more robustly
|
---|
5582 | (John Bowler).
|
---|
5583 |
|
---|
5584 | Version 1.6.23rc01 [June 2, 2016]
|
---|
5585 | Corrected progressive read input buffer in pngvalid.c. The previous version
|
---|
5586 | the code invariably passed just one byte at a time to libpng. The intent
|
---|
5587 | was to pass a random number of bytes in the range 0..511.
|
---|
5588 | Moved sse2 prototype from pngpriv.h to contrib/intel/intel_sse.patch.
|
---|
5589 | Added missing ")" in pngerror.c (Matt Sarrett).
|
---|
5590 |
|
---|
5591 | Version 1.6.23rc02 [June 4, 2016]
|
---|
5592 | Fixed undefined behavior in png_push_save_buffer(). Do not call
|
---|
5593 | memcpy() with a null source, even if count is zero (Leon Scroggins III).
|
---|
5594 |
|
---|
5595 | Version 1.6.23 [June 9, 2016]
|
---|
5596 | Fixed bad link to RFC2083 in png.5 (Nikola Forro).
|
---|
5597 |
|
---|
5598 | Version 1.6.24beta01 [June 11, 2016]
|
---|
5599 | Avoid potential overflow of the PNG_IMAGE_SIZE macro. This macro
|
---|
5600 | is not used within libpng, but is used in some of the examples.
|
---|
5601 |
|
---|
5602 | Version 1.6.24beta02 [June 23, 2016]
|
---|
5603 | Correct filter heuristic overflow handling. This was broken when the
|
---|
5604 | write filter code was moved out-of-line; if there is a single filter and
|
---|
5605 | the heuristic sum overflows the calculation of the filtered line is not
|
---|
5606 | completed. In versions prior to 1.6 the code was duplicated in-line
|
---|
5607 | and the check not performed, so the filter operation completed; however,
|
---|
5608 | in the multi-filter case where the sum is performed the 'none' filter would
|
---|
5609 | be selected if all the sums overflowed, even if it wasn't in the filter
|
---|
5610 | list. The fix to the first problem is simply to provide PNG_SIZE_MAX as
|
---|
5611 | the current lmins sum value; this means the sum can never exceed it and
|
---|
5612 | overflows silently. A reasonable compiler that does choose to inline
|
---|
5613 | the code will simply eliminate the sum check.
|
---|
5614 | The fix to the second problem is to use high precision arithmetic (this is
|
---|
5615 | implemented in 1.7), however a simple safe fix here is to chose the lowest
|
---|
5616 | numbered filter in the list from png_set_filter (this only works if the
|
---|
5617 | first problem is also fixed) (John Bowler).
|
---|
5618 | Use a more efficient absolute value calculation on SSE2 (Matthieu Darbois).
|
---|
5619 | Fixed the case where PNG_IMAGE_BUFFER_SIZE can overflow in the application
|
---|
5620 | as a result of the application using an increased 'row_stride'; previously
|
---|
5621 | png_image_finish_read only checked for overflow on the base calculation of
|
---|
5622 | components. (I.e. it checked for overflow of a 32-bit number on the total
|
---|
5623 | number of pixel components in the output format, not the possibly padded row
|
---|
5624 | length and not the number of bytes, which for linear formats is twice the
|
---|
5625 | number of components.)
|
---|
5626 | MSVC does not like '-(unsigned)', so replaced it with 0U-(unsigned)
|
---|
5627 | MSVC does not like (uInt) = -(unsigned) (i.e. as an initializer), unless
|
---|
5628 | the conversion is explicitly invoked by a cast.
|
---|
5629 | Put the SKIP definition in the correct place. It needs to come after the
|
---|
5630 | png.h include (see all the other .c files in contrib/libtests) because it
|
---|
5631 | depends on PNG_LIBPNG_VER.
|
---|
5632 | Removed the three compile warning options from the individual project
|
---|
5633 | files into the zlib.props globals. It increases the warning level from 4
|
---|
5634 | to All and adds a list of the warnings that need to be turned off. This is
|
---|
5635 | semi-documentary; the intent is to tell libpng users which warnings have
|
---|
5636 | been examined and judged non-fixable at present. The warning about
|
---|
5637 | structure padding is fixable, but it would be a significant change (moving
|
---|
5638 | structure members around).
|
---|
5639 |
|
---|
5640 | Version 1.6.24beta03 [July 4, 2016]
|
---|
5641 | Optimized absolute value calculation in filter selection, similar to
|
---|
5642 | code in the PAETH decoder in pngrutil.c. Build with PNG_USE_ABS to
|
---|
5643 | use this.
|
---|
5644 | Added pngcp to the build together with a pngcp.dfa configuration test.
|
---|
5645 | Added high resolution timing to pngcp.
|
---|
5646 | Added "Common linking failures" section to INSTALL.
|
---|
5647 | Relocated misplaced #endif in png.c sRGB profile checking.
|
---|
5648 | Fixed two Coverity issues in pngcp.c.
|
---|
5649 |
|
---|
5650 | Version 1.6.24beta04 [July 8, 2016]
|
---|
5651 | Avoid filter-selection heuristic sum calculations in cases where only one
|
---|
5652 | filter is a candidate for selection. This trades off code size (added
|
---|
5653 | private png_setup_*_row_only() functions) for speed.
|
---|
5654 |
|
---|
5655 | Version 1.6.24beta05 [July 13, 2016]
|
---|
5656 | Fixed some indentation to comply with our coding style.
|
---|
5657 | Added contrib/tools/reindent.
|
---|
5658 |
|
---|
5659 | Version 1.6.24beta06 [July 18, 2016]
|
---|
5660 | Fixed more indentation to comply with our coding style.
|
---|
5661 | Eliminated unnecessary tests of boolean png_isaligned() vs 0.
|
---|
5662 |
|
---|
5663 | Version 1.6.24rc01 [July 25, 2016]
|
---|
5664 | No changes.
|
---|
5665 |
|
---|
5666 | Version 1.6.24rc02 [August 1, 2016]
|
---|
5667 | Conditionally compile SSE2 headers in contrib/intel/intel_sse.patch
|
---|
5668 | Conditionally compile png_decompress_chunk().
|
---|
5669 |
|
---|
5670 | Version 1.6.24rc03 [August 2, 2016]
|
---|
5671 | Conditionally compile ARM_NEON headers in pngpriv.h
|
---|
5672 | Updated contrib/intel/intel_sse.patch
|
---|
5673 |
|
---|
5674 | Version 1.6.24[August 4, 2016]
|
---|
5675 | No changes.
|
---|
5676 |
|
---|
5677 | Version 1.6.25beta01 [August 12, 2016]
|
---|
5678 | Reject oversized iCCP profile immediately.
|
---|
5679 | Cleaned up PNG_DEBUG compile of pngtest.c.
|
---|
5680 | Conditionally compile png_inflate().
|
---|
5681 |
|
---|
5682 | Version 1.6.25beta02 [August 18, 2016]
|
---|
5683 | Don't install pngcp; it conflicts with pngcp in the pngtools package.
|
---|
5684 | Minor editing of INSTALL, (whitespace, added copyright line)
|
---|
5685 |
|
---|
5686 | Version 1.6.25rc01 [August 24, 2016]
|
---|
5687 | No changes.
|
---|
5688 |
|
---|
5689 | Version 1.6.25rc02 [August 29, 2016]
|
---|
5690 | Added MIPS support (Mandar Sahastrabuddhe <Mandar.Sahastrabuddhe@imgtec.com>).
|
---|
5691 | Only the UP filter is currently implemented.
|
---|
5692 |
|
---|
5693 | Version 1.6.25rc03 [August 29, 2016]
|
---|
5694 | Rebased contrib/intel/intel_sse.patch after the MIPS implementation.
|
---|
5695 |
|
---|
5696 | Version 1.6.25rc04 [August 30, 2016]
|
---|
5697 | Added MIPS support for SUB, AVG, and PAETH filters (Mandar Sahastrabuddhe).
|
---|
5698 |
|
---|
5699 | Version 1.6.25rc05 [August 30, 2016]
|
---|
5700 | Rebased contrib/intel/intel_sse.patch after the MIPS implementation update..
|
---|
5701 |
|
---|
5702 | Version 1.6.25 [September 1, 2016]
|
---|
5703 | No changes.
|
---|
5704 |
|
---|
5705 | Version 1.6.26beta01 [September 26, 2016]
|
---|
5706 | Fixed handling zero length IDAT in pngfix (bug report by Agostino Sarubbo,
|
---|
5707 | bugfix by John Bowler).
|
---|
5708 | Do not issue a png_error() on read in png_set_pCAL() because png_handle_pCAL
|
---|
5709 | has allocated memory that libpng needs to free.
|
---|
5710 | Conditionally compile png_set_benign_errors() in pngread.c and pngtest.c
|
---|
5711 | Issue a png_benign_error instead of a png_error on ADLER32 mismatch
|
---|
5712 | while decoding compressed data chunks.
|
---|
5713 | Changed PNG_ZLIB_VERNUM to ZLIB_VERNUM in pngpriv.h, pngstruct.h, and
|
---|
5714 | pngrutil.c.
|
---|
5715 | If CRC handling of critical chunks has been set to PNG_CRC_QUIET_USE,
|
---|
5716 | ignore the ADLER32 checksum in the IDAT chunk as well as the chunk CRCs.
|
---|
5717 | Issue png_benign_error() on ADLER32 checksum mismatch instead of png_error().
|
---|
5718 | Add tests/badcrc.png and tests/badadler.png to tests/pngtest.
|
---|
5719 | Merged pngtest.c with libpng-1.7.0beta84/pngtest.c
|
---|
5720 |
|
---|
5721 | Version 1.6.26beta02 [October 1, 2016]
|
---|
5722 | Updated the documentation about CRC and ADLER32 handling.
|
---|
5723 | Quieted 117 warnings from clang-3.8 in pngtrans.c, pngread.c,
|
---|
5724 | pngwrite.c, pngunknown.c, and pngvalid.c.
|
---|
5725 | Quieted 58 (out of 144) -Wconversion compiler warnings by changing
|
---|
5726 | flag definitions in pngpriv.h from 0xnnnn to 0xnnnnU and trivial changes
|
---|
5727 | in png.c, pngread.c, and pngwutil.c.
|
---|
5728 |
|
---|
5729 | Version 1.6.26beta03 [October 2, 2016]
|
---|
5730 | Removed contrib/libtests/*.orig and *.rej that slipped into the tarballs.
|
---|
5731 | Quieted the 86 remaining -Wconversion compiler warnings by
|
---|
5732 | revising the png_isaligned() macro and trivial changes in png.c,
|
---|
5733 | pngerror.c, pngget.c, pngmem.c, pngset.c, pngrtran.c, pngrutil.c,
|
---|
5734 | pngwtran.c, pngwrite.c, and pngwutil.c.
|
---|
5735 |
|
---|
5736 | Version 1.6.26beta04 [October 3, 2016]
|
---|
5737 | Quieted (bogus?) clang warnings about "absolute value has no effect"
|
---|
5738 | when PNG_USE_ABS is defined.
|
---|
5739 | Fixed offsets in contrib/intel/intel_sse.patch
|
---|
5740 |
|
---|
5741 | Version 1.6.26beta05 [October 6, 2016]
|
---|
5742 | Changed integer constant 4294967294 to unsigned 4294967294U in pngconf.h
|
---|
5743 | to avoid a signed/unsigned compare in the preprocessor.
|
---|
5744 |
|
---|
5745 | Version 1.6.26beta06 [October 7, 2016]
|
---|
5746 | Use zlib-1.2.8.1 inflateValidate() instead of inflateReset2() to
|
---|
5747 | optionally avoid ADLER32 evaluation.
|
---|
5748 |
|
---|
5749 | Version 1.6.26rc01 [October 12, 2016]
|
---|
5750 | No changes.
|
---|
5751 |
|
---|
5752 | Version 1.6.26 [October 20, 2016]
|
---|
5753 | Cosmetic change, "ptr != 0" to "ptr != NULL" in png.c and pngrutil.c
|
---|
5754 | Despammed email addresses (replaced "@" with " at ").
|
---|
5755 |
|
---|
5756 | Version 1.6.27beta01 [November 2, 2016]
|
---|
5757 | Restrict the new ADLER32-skipping to IDAT chunks. It broke iCCP chunk
|
---|
5758 | handling: an erroneous iCCP chunk would throw a png_error and reject the
|
---|
5759 | entire PNG image instead of rejecting just the iCCP chunk with a warning,
|
---|
5760 | if built with zlib-1.2.8.1.
|
---|
5761 |
|
---|
5762 | Version 1.6.27rc01 [December 27, 2016]
|
---|
5763 | Control ADLER32 checking with new PNG_IGNORE_ADLER32 option. Fixes
|
---|
5764 | an endless loop when handling erroneous ADLER32 checksums; bug
|
---|
5765 | introduced in libpng-1.6.26.
|
---|
5766 | Removed the use of a macro containing the pre-processor 'defined'
|
---|
5767 | operator. It is unclear whether this is valid; a macro that
|
---|
5768 | "generates" 'defined' is not permitted, but the use of the word
|
---|
5769 | "generates" within the C90 standard seems to imply more than simple
|
---|
5770 | substitution of an expression itself containing a well-formed defined
|
---|
5771 | operation.
|
---|
5772 | Added ARM support to CMakeLists.txt (Andreas Franek).
|
---|
5773 |
|
---|
5774 | Version 1.6.27 [December 29, 2016]
|
---|
5775 | Fixed a potential null pointer dereference in png_set_text_2() (bug report
|
---|
5776 | and patch by Patrick Keshishian, CVE-2016-10087).
|
---|
5777 |
|
---|
5778 | Version 1.6.28rc01 [January 3, 2017]
|
---|
5779 | Fixed arm/aarch64 detection in CMakeLists.txt (Gianfranco Costamagna).
|
---|
5780 | Added option to Cmake build allowing a custom location of zlib to be
|
---|
5781 | specified in a scenario where libpng is being built as a subproject
|
---|
5782 | alongside zlib by another project (Sam Serrels).
|
---|
5783 | Changed png_ptr->options from a png_byte to png_uint_32, to accommodate
|
---|
5784 | up to 16 options.
|
---|
5785 |
|
---|
5786 | Version 1.6.28rc02 [January 4, 2017]
|
---|
5787 | Added "include(GNUInstallDirs)" to CMakeLists.txt (Gianfranco Costamagna).
|
---|
5788 | Moved SSE2 optimization code into the main libpng source directory.
|
---|
5789 | Configure libpng with "configure --enable-intel-sse" or compile
|
---|
5790 | libpng with "-DPNG_INTEL_SSE" in CPPFLAGS to enable it.
|
---|
5791 |
|
---|
5792 | Version 1.6.28rc03 [January 4, 2017]
|
---|
5793 | Backed out the SSE optimization and last CMakeLists.txt to allow time for QA.
|
---|
5794 |
|
---|
5795 | Version 1.6.28 [January 5, 2017]
|
---|
5796 | No changes.
|
---|
5797 |
|
---|
5798 | Version 1.6.29beta01 [January 12, 2017]
|
---|
5799 | Readded "include(GNUInstallDirs)" to CMakeLists.txt (Gianfranco Costamagna).
|
---|
5800 | Moved SSE2 optimization code into the main libpng source directory.
|
---|
5801 | Configure libpng with "configure --enable-intel-sse" or compile
|
---|
5802 | libpng with "-DPNG_INTEL_SSE" in CPPFLAGS to enable it.
|
---|
5803 | Simplified conditional compilation in pngvalid.c, for AIX (Michael Felt).
|
---|
5804 |
|
---|
5805 | Version 1.6.29beta02 [February 22, 2017]
|
---|
5806 | Avoid conditional directives that break statements in pngrutil.c (Romero
|
---|
5807 | Malaquias)
|
---|
5808 | The contrib/examples/pngtopng.c recovery code was in the wrong "if"
|
---|
5809 | branches; the comments were correct.
|
---|
5810 | Added code for PowerPC VSX optimisation (Vadim Barkov).
|
---|
5811 |
|
---|
5812 | Version 1.6.29beta03 [March 1, 2017]
|
---|
5813 | Avoid potential overflow of shift operations in png_do_expand() (Aaron Boxer).
|
---|
5814 | Change test ZLIB_VERNUM >= 0x1281 to ZLIB_VERNUM >= 0x1290 in pngrutil.c
|
---|
5815 | because Solaris 11 distributes zlib-1.2.8.f that is older than 1.2.8.1,
|
---|
5816 | as suggested in zlib FAQ, item 24.
|
---|
5817 | Suppress clang warnings about implicit sign changes in png.c
|
---|
5818 |
|
---|
5819 | Version 1.6.29 [March 16, 2017]
|
---|
5820 | No changes.
|
---|
5821 |
|
---|
5822 | Version 1.6.30beta01 [April 1, 2017]
|
---|
5823 | Added missing "$(CPPFLAGS)" to the compile line for c.pic.o in
|
---|
5824 | makefile.linux and makefile.solaris-x86 (Cosmin).
|
---|
5825 | Revised documentation of png_get_error_ptr() in the libpng manual.
|
---|
5826 | Silence clang -Wcomma and const drop warnings (Viktor Szakats).
|
---|
5827 | Update Sourceforge URLs in documentation (https instead of http).
|
---|
5828 |
|
---|
5829 | Version 1.6.30beta02 [April 22, 2017]
|
---|
5830 | Document need to check for integer overflow when allocating a pixel
|
---|
5831 | buffer for multiple rows in contrib/gregbook, contrib/pngminus,
|
---|
5832 | example.c, and in the manual (suggested by Jaeseung Choi). This
|
---|
5833 | is similar to the bug reported against pngquant in CVE-2016-5735.
|
---|
5834 | Removed reference to the obsolete PNG_SAFE_LIMITS macro in the documentation.
|
---|
5835 |
|
---|
5836 | Version 1.6.30beta03 [May 22, 2017]
|
---|
5837 | Check for integer overflow in contrib/visupng and contrib/tools/genpng.
|
---|
5838 | Do not double evaluate CMAKE_SYSTEM_PROCESSOR in CMakeLists.txt.
|
---|
5839 | Test CMAKE_HOST_WIN32 instead of WIN32 in CMakeLists.txt.
|
---|
5840 | Fix some URL in documentation.
|
---|
5841 |
|
---|
5842 | Version 1.6.30beta04 [June 7, 2017]
|
---|
5843 | Avoid writing an empty IDAT when the last IDAT exactly fills the
|
---|
5844 | compression buffer (bug report by Brian Baird). This bug was
|
---|
5845 | introduced in libpng-1.6.0.
|
---|
5846 |
|
---|
5847 | Version 1.6.30rc01 [June 14, 2017]
|
---|
5848 | No changes.
|
---|
5849 |
|
---|
5850 | Version 1.6.30rc02 [June 25, 2017]
|
---|
5851 | Update copyright year in pnglibconf.h, make ltmain.sh executable.
|
---|
5852 | Add a reference to the libpng.download site in README.
|
---|
5853 |
|
---|
5854 | Version 1.6.30 [June 28, 2017]
|
---|
5855 | No changes.
|
---|
5856 |
|
---|
5857 | Version 1.6.31beta01 [July 5, 2017]
|
---|
5858 | Guard the definition of _POSIX_SOURCE in pngpriv.h (AIX already defines it;
|
---|
5859 | bug report by Michael Felt).
|
---|
5860 | Revised pngpriv.h to work around failure to compile arm/filter_neon.S
|
---|
5861 | ("typedef" directive is unrecognized by the assembler). The problem
|
---|
5862 | was introduced in libpng-1.6.30beta01.
|
---|
5863 | Added "Requires: zlib" to libpng.pc.in (Pieter Neerincx).
|
---|
5864 | Added special case for FreeBSD in arm/filter_neon.S (Maya Rashish).
|
---|
5865 |
|
---|
5866 | Version 1.6.31beta02 [July 8, 2017]
|
---|
5867 | Added instructions for disabling hardware optimizations in INSTALL.
|
---|
5868 | Added "--enable-hardware-optimizations" configuration flag to enable
|
---|
5869 | or disable all hardware optimizations with one flag.
|
---|
5870 |
|
---|
5871 | Version 1.6.31beta03 [July 9, 2017]
|
---|
5872 | Updated CMakeLists.txt to add INTEL_SSE and MIPS_MSA platforms.
|
---|
5873 | Changed "int" to "png_size_t" in intel/filter_sse2.c to prevent
|
---|
5874 | possible integer overflow (Bug report by John Bowler).
|
---|
5875 | Quieted "declaration after statement" warnings in intel/filter_sse2.c.
|
---|
5876 | Added scripts/makefile-linux-opt, which has hardware optimizations enabled.
|
---|
5877 |
|
---|
5878 | Version 1.6.31beta04 [July 11, 2017]
|
---|
5879 | Removed one of the GCC-7.1.0 'strict-overflow' warnings that result when
|
---|
5880 | integers appear on both sides of a compare. Worked around the others by
|
---|
5881 | forcing the strict-overflow setting in the relevant functions to a level
|
---|
5882 | where they are not reported (John Bowler).
|
---|
5883 | Changed "FALL THROUGH" comments to "FALLTHROUGH" because GCC doesn't like
|
---|
5884 | the space.
|
---|
5885 | Worked around some C-style casts from (void*) because g++ 5.4.0 objects
|
---|
5886 | to them.
|
---|
5887 | Increased the buffer size for 'sprint' to pass the gcc 7.1.0 'sprint
|
---|
5888 | overflow' check that is on by default with -Wall -Wextra.
|
---|
5889 |
|
---|
5890 | Version 1.6.31beta05 [July 13, 2017]
|
---|
5891 | Added eXIf chunk support.
|
---|
5892 |
|
---|
5893 | Version 1.6.31beta06 [July 17, 2017]
|
---|
5894 | Added a minimal eXIf chunk (with Orientation and FocalLengthIn35mmFilm
|
---|
5895 | tags) to pngtest.png.
|
---|
5896 |
|
---|
5897 | Version 1.6.31beta07 [July 18, 2017]
|
---|
5898 | Revised the eXIf chunk in pngtest.png to fix "Bad IFD1 Directory" warning.
|
---|
5899 |
|
---|
5900 | Version 1.6.31rc01 [July 19, 2017]
|
---|
5901 | No changes.
|
---|
5902 |
|
---|
5903 | Version 1.6.31rc02 [July 25, 2017]
|
---|
5904 | Fixed typo in example.c (png_free_image should be png_image_free) (Bug
|
---|
5905 | report by John Smith)
|
---|
5906 |
|
---|
5907 | Version 1.6.31 [July 27, 2017]
|
---|
5908 | No changes.
|
---|
5909 |
|
---|
5910 | Version 1.6.32beta01 [July 31, 2017]
|
---|
5911 | Avoid possible NULL dereference in png_handle_eXIf when benign_errors
|
---|
5912 | are allowed. Avoid leaking the input buffer "eXIf_buf".
|
---|
5913 | Eliminated png_ptr->num_exif member from pngstruct.h and added num_exif
|
---|
5914 | to arguments for png_get_eXIf() and png_set_eXIf().
|
---|
5915 | Added calls to png_handle_eXIf(() in pngread.c and png_write_eXIf() in
|
---|
5916 | pngwrite.c, and made various other fixes to png_write_eXIf().
|
---|
5917 | Changed name of png_get_eXIF and png_set_eXIf() to png_get_eXIf_1() and
|
---|
5918 | png_set_eXIf_1(), respectively, to avoid breaking API compatibility
|
---|
5919 | with libpng-1.6.31.
|
---|
5920 |
|
---|
5921 | Version 1.6.32beta02 [August 1, 2017]
|
---|
5922 | Updated contrib/libtests/pngunknown.c with eXIf chunk.
|
---|
5923 |
|
---|
5924 | Version 1.6.32beta03 [August 2, 2017]
|
---|
5925 | Initialized btoa[] in pngstest.c
|
---|
5926 | Stop memory leak when returning from png_handle_eXIf() with an error
|
---|
5927 | (Bug report from the OSS-fuzz project).
|
---|
5928 |
|
---|
5929 | Version 1.6.32beta04 [August 2, 2017]
|
---|
5930 | Replaced local eXIf_buf with info_ptr->eXIf_buf in png_handle_eXIf().
|
---|
5931 | Update libpng.3 and libpng-manual.txt about eXIf functions.
|
---|
5932 |
|
---|
5933 | Version 1.6.32beta05 [August 2, 2017]
|
---|
5934 | Restored png_get_eXIf() and png_set_eXIf() to maintain API compatibility.
|
---|
5935 |
|
---|
5936 | Version 1.6.32beta06 [August 2, 2017]
|
---|
5937 | Removed png_get_eXIf_1() and png_set_eXIf_1().
|
---|
5938 |
|
---|
5939 | Version 1.6.32beta07 [August 3, 2017]
|
---|
5940 | Check length of all chunks except IDAT against user limit to fix an
|
---|
5941 | OSS-fuzz issue (Fixes CVE-2017-12652).
|
---|
5942 |
|
---|
5943 | Version 1.6.32beta08 [August 3, 2017]
|
---|
5944 | Check length of IDAT against maximum possible IDAT size, accounting
|
---|
5945 | for height, rowbytes, interlacing and zlib/deflate overhead.
|
---|
5946 | Restored png_get_eXIf_1() and png_set_eXIf_1(), because strlen(eXIf_buf)
|
---|
5947 | does not work (the eXIf chunk data can contain zeroes).
|
---|
5948 |
|
---|
5949 | Version 1.6.32beta09 [August 3, 2017]
|
---|
5950 | Require cmake-2.8.8 in CMakeLists.txt. Revised symlink creation,
|
---|
5951 | no longer using deprecated cmake LOCATION feature (Clifford Yapp).
|
---|
5952 | Fixed five-byte error in the calculation of IDAT maximum possible size.
|
---|
5953 |
|
---|
5954 | Version 1.6.32beta10 [August 5, 2017]
|
---|
5955 | Moved chunk-length check into a png_check_chunk_length() private
|
---|
5956 | function (Suggested by Max Stepin).
|
---|
5957 | Moved bad pngs from tests to contrib/libtests/crashers
|
---|
5958 | Moved testing of bad pngs into a separate tests/pngtest-badpngs script
|
---|
5959 | Added the --xfail (expected FAIL) option to pngtest.c. It writes XFAIL
|
---|
5960 | in the output but PASS for the libpng test.
|
---|
5961 | Require cmake-3.0.2 in CMakeLists.txt (Clifford Yapp).
|
---|
5962 | Fix "const" declaration info_ptr argument to png_get_eXIf_1() and the
|
---|
5963 | num_exif argument to png_get_eXIf_1() (Github Issue 171).
|
---|
5964 |
|
---|
5965 | Version 1.6.32beta11 [August 7, 2017]
|
---|
5966 | Added "eXIf" to "chunks_to_ignore[]" in png_set_keep_unknown_chunks().
|
---|
5967 | Added huge_IDAT.png and empty_ancillary_chunks.png to testpngs/crashers.
|
---|
5968 | Make pngtest --strict, --relax, --xfail options imply -m (multiple).
|
---|
5969 | Removed unused chunk_name parameter from png_check_chunk_length().
|
---|
5970 | Relocated setting free_me for eXIf data, to stop an OSS-fuzz leak.
|
---|
5971 | Initialize profile_header[] in png_handle_iCCP() to fix OSS-fuzz issue.
|
---|
5972 | Initialize png_ptr->row_buf[0] to 255 in png_read_row() to fix OSS-fuzz UMR.
|
---|
5973 | Attempt to fix a UMR in png_set_text_2() to fix OSS-fuzz issue.
|
---|
5974 | Increase minimum zlib stream from 9 to 14 in png_handle_iCCP(), to account
|
---|
5975 | for the minimum 'deflate' stream, and relocate the test to a point
|
---|
5976 | after the keyword has been read.
|
---|
5977 | Check that the eXIf chunk has at least 2 bytes and begins with "II" or "MM".
|
---|
5978 |
|
---|
5979 | Version 1.6.32rc01 [August 18, 2017]
|
---|
5980 | Added a set of "huge_xxxx_chunk.png" files to contrib/testpngs/crashers,
|
---|
5981 | one for each known chunk type, with length = 2GB-1.
|
---|
5982 | Check for 0 return from png_get_rowbytes() and added some (size_t) typecasts
|
---|
5983 | in contrib/pngminus/*.c to stop some Coverity issues (162705, 162706,
|
---|
5984 | and 162707).
|
---|
5985 | Renamed chunks in contrib/testpngs/crashers to avoid having files whose
|
---|
5986 | names differ only in case; this causes problems with some platforms
|
---|
5987 | (github issue #172).
|
---|
5988 |
|
---|
5989 | Version 1.6.32rc02 [August 22, 2017]
|
---|
5990 | Added contrib/oss-fuzz directory which contains files used by the oss-fuzz
|
---|
5991 | project (https://github.com/google/oss-fuzz/tree/master/projects/libpng).
|
---|
5992 |
|
---|
5993 | Version 1.6.32 [August 24, 2017]
|
---|
5994 | No changes.
|
---|
5995 |
|
---|
5996 | Version 1.6.33beta01 [August 28, 2017]
|
---|
5997 | Added PNGMINUS_UNUSED macro to contrib/pngminus/p*.c and added missing
|
---|
5998 | parenthesis in contrib/pngminus/pnm2png.c (bug report by Christian Hesse).
|
---|
5999 | Fixed off-by-one error in png_do_check_palette_indexes() (Bug report
|
---|
6000 | by Mick P., Source Forge Issue #269).
|
---|
6001 |
|
---|
6002 | Version 1.6.33beta02 [September 3, 2017]
|
---|
6003 | Initialize png_handler.row_ptr in contrib/oss-fuzz/libpng_read_fuzzer.cc
|
---|
6004 | to fix shortlived oss-fuzz issue 3234.
|
---|
6005 | Compute a larger limit on IDAT because some applications write a deflate
|
---|
6006 | buffer for each row (Bug report by Andrew Church).
|
---|
6007 | Use current date (DATE) instead of release-date (RDATE) in last
|
---|
6008 | changed date of contrib/oss-fuzz files.
|
---|
6009 | Enabled ARM support in CMakeLists.txt (Bernd Kuhls).
|
---|
6010 |
|
---|
6011 | Version 1.6.33beta03 [September 14, 2017]
|
---|
6012 | Fixed incorrect typecast of some arguments to png_malloc() and
|
---|
6013 | png_calloc() that were png_uint_32 instead of png_alloc_size_t
|
---|
6014 | (Bug report by "irwir" in Github libpng issue #175).
|
---|
6015 | Use pnglibconf.h.prebuilt when building for ANDROID with cmake (Github
|
---|
6016 | issue 162, by rcdailey).
|
---|
6017 |
|
---|
6018 | Version 1.6.33rc01 [September 20, 2017]
|
---|
6019 | Initialize memory allocated by png_inflate to zero, using memset, to
|
---|
6020 | stop an oss-fuzz "use of uninitialized value" detection in png_set_text_2()
|
---|
6021 | due to truncated iTXt or zTXt chunk.
|
---|
6022 | Initialize memory allocated by png_read_buffer to zero, using memset, to
|
---|
6023 | stop an oss-fuzz "use of uninitialized value" detection in
|
---|
6024 | png_icc_check_tag_table() due to truncated iCCP chunk.
|
---|
6025 | Removed a redundant test (suggested by "irwir" in Github issue #180).
|
---|
6026 |
|
---|
6027 | Version 1.6.33rc02 [September 23, 2017]
|
---|
6028 | Added an interlaced version of each file in contrib/pngsuite.
|
---|
6029 | Relocate new memset() call in pngrutil.c.
|
---|
6030 | Removed more redundant tests (suggested by "irwir" in Github issue #180).
|
---|
6031 | Add support for loading images with associated alpha in the Simplified
|
---|
6032 | API (Samuel Williams).
|
---|
6033 |
|
---|
6034 | Version 1.6.33 [September 28, 2017]
|
---|
6035 | Revert contrib/oss-fuzz/libpng_read_fuzzer.cc to libpng-1.6.32 state.
|
---|
6036 | Initialize png_handler.row_ptr in contrib/oss-fuzz/libpng_read_fuzzer.cc
|
---|
6037 | Add end_info structure and png_read_end() to the libpng fuzzer.
|
---|
6038 |
|
---|
6039 | Version 1.6.34 [September 29, 2017]
|
---|
6040 | Removed contrib/pngsuite/i*.png; some of them caused test failures.
|
---|
6041 |
|
---|
6042 | Version 1.6.35beta01 [March 6, 2018]
|
---|
6043 | Restored 21 of the contrib/pngsuite/i*.png, which do not cause test
|
---|
6044 | failures. Placed the remainder in contrib/pngsuite/interlaced/i*.png.
|
---|
6045 | Added calls to png_set_*() transforms commonly used by browsers to
|
---|
6046 | the fuzzer.
|
---|
6047 | Removed some unnecessary brackets in pngrtran.c
|
---|
6048 | Fixed miscellaneous typos (Patch by github user "luzpaz").
|
---|
6049 | Change "ASM C" to "C ASM" in CMakeLists.txt
|
---|
6050 | Fixed incorrect handling of bKGD chunk in sub-8-bit files (Cosmin)
|
---|
6051 | Added hardware optimization directories to zip and 7z distributions.
|
---|
6052 | Fixed incorrect bitmask for options.
|
---|
6053 | Fixed many spelling typos.
|
---|
6054 |
|
---|
6055 | Version 1.6.35beta02 [March 28, 2018]
|
---|
6056 | Make png_get_iCCP consistent with man page (allow compression-type argument
|
---|
6057 | to be NULL, bug report by Lenard Szolnoki).
|
---|
6058 |
|
---|
6059 | Version 1.6.35 [July 15, 2018]
|
---|
6060 | Replaced the remaining uses of png_size_t with size_t (Cosmin)
|
---|
6061 | Fixed the calculation of row_factor in png_check_chunk_length
|
---|
6062 | (reported by Thuan Pham in SourceForge issue #278)
|
---|
6063 | Added missing parentheses to a macro definition
|
---|
6064 | (suggested by "irwir" in GitHub issue #216)
|
---|
6065 |
|
---|
6066 | Version 1.6.36 [December 1, 2018]
|
---|
6067 | Optimized png_do_expand_palette for ARM processors.
|
---|
6068 | Improved performance by around 10-22% on a recent ARM Chromebook.
|
---|
6069 | (Contributed by Richard Townsend, ARM Holdings)
|
---|
6070 | Fixed manipulation of machine-specific optimization options.
|
---|
6071 | (Contributed by Vicki Pfau)
|
---|
6072 | Used memcpy instead of manual pointer arithmetic on Intel SSE2.
|
---|
6073 | (Contributed by Samuel Williams)
|
---|
6074 | Fixed build errors with MSVC on ARM64.
|
---|
6075 | (Contributed by Zhijie Liang)
|
---|
6076 | Fixed detection of libm in CMakeLists.
|
---|
6077 | (Contributed by Cameron Cawley)
|
---|
6078 | Fixed incorrect creation of pkg-config file in CMakeLists.
|
---|
6079 | (Contributed by Kyle Bentley)
|
---|
6080 | Fixed the CMake build on Windows MSYS by avoiding symlinks.
|
---|
6081 | Fixed a build warning on OpenBSD.
|
---|
6082 | (Contributed by Theo Buehler)
|
---|
6083 | Fixed various typos in comments.
|
---|
6084 | (Contributed by "luz.paz")
|
---|
6085 | Raised the minimum required CMake version from 3.0.2 to 3.1.
|
---|
6086 | Removed yet more of the vestigial support for pre-ANSI C compilers.
|
---|
6087 | Removed ancient makefiles for ancient systems that have been broken
|
---|
6088 | across all previous libpng-1.6.x versions.
|
---|
6089 | Removed the Y2K compliance statement and the export control
|
---|
6090 | information.
|
---|
6091 | Applied various code style and documentation fixes.
|
---|
6092 |
|
---|
6093 | Version 1.6.37 [April 14, 2019]
|
---|
6094 | Fixed a use-after-free vulnerability (CVE-2019-7317) in png_image_free.
|
---|
6095 | Fixed a memory leak in the ARM NEON implementation of png_do_expand_palette.
|
---|
6096 | Fixed a memory leak in pngtest.c.
|
---|
6097 | Fixed two vulnerabilities (CVE-2018-14048, CVE-2018-14550) in
|
---|
6098 | contrib/pngminus; refactor.
|
---|
6099 | Changed the license of contrib/pngminus to MIT; refresh makefile and docs.
|
---|
6100 | (Contributed by Willem van Schaik)
|
---|
6101 | Fixed a typo in the libpng license v2.
|
---|
6102 | (Contributed by Miguel Ojeda)
|
---|
6103 | Added makefiles for AddressSanitizer-enabled builds.
|
---|
6104 | Cleaned up various makefiles.
|
---|
6105 |
|
---|
6106 | Version 1.6.38 [September 14, 2022]
|
---|
6107 | Added configurations and scripts for continuous integration.
|
---|
6108 | Fixed various errors in the handling of tRNS, hIST and eXIf.
|
---|
6109 | Implemented many stability improvements across all platforms.
|
---|
6110 | Updated the internal documentation.
|
---|
6111 |
|
---|
6112 | Version 1.6.39 [November 20, 2022]
|
---|
6113 | Changed the error handler of oversized chunks (i.e. larger than
|
---|
6114 | PNG_USER_CHUNK_MALLOC_MAX) from png_chunk_error to png_benign_error.
|
---|
6115 | Fixed a buffer overflow error in contrib/tools/pngfix.
|
---|
6116 | Fixed a memory leak (CVE-2019-6129) in contrib/tools/pngcp.
|
---|
6117 | Disabled the ARM Neon optimizations by default in the CMake file,
|
---|
6118 | following the default behavior of the configure script.
|
---|
6119 | Allowed configure.ac to work with the trunk version of autoconf.
|
---|
6120 | Removed the support for "install" targets from the legacy makefiles;
|
---|
6121 | removed the obsolete makefile.cegcc.
|
---|
6122 | Cleaned up the code and updated the internal documentation.
|
---|
6123 |
|
---|
6124 | Version 1.6.40 [June 21, 2023]
|
---|
6125 | Fixed the eXIf chunk multiplicity checks.
|
---|
6126 | Fixed a memory leak in pCAL processing.
|
---|
6127 | Corrected the validity report about tRNS inside png_get_valid().
|
---|
6128 | Fixed various build issues on *BSD, Mac and Windows.
|
---|
6129 | Updated the configurations and the scripts for continuous integration.
|
---|
6130 | Cleaned up the code, the build scripts, and the documentation.
|
---|
6131 |
|
---|
6132 | Version 1.6.41 [January 24, 2024]
|
---|
6133 | Added SIMD-optimized code for the LoongArch LSX hardware.
|
---|
6134 | (Contributed by GuXiWei, JinBo and ZhangLixia)
|
---|
6135 | Fixed the run-time discovery of MIPS MSA hardware.
|
---|
6136 | (Contributed by Sui Jingfeng)
|
---|
6137 | Fixed an off-by-one error in the function png_do_check_palette_indexes(),
|
---|
6138 | which failed to recognize errors that might have existed in the first
|
---|
6139 | column of a broken palette-encoded image. This was a benign regression
|
---|
6140 | accidentally introduced in libpng-1.6.33. No pixel was harmed.
|
---|
6141 | (Contributed by Adam Richter; reviewed by John Bowler)
|
---|
6142 | Fixed, improved and modernized the contrib/pngminus programs, i.e.,
|
---|
6143 | png2pnm.c and pnm2png.c
|
---|
6144 | Removed old and peculiar portability hacks that were meant to silence
|
---|
6145 | warnings issued by gcc version 7.1 alone.
|
---|
6146 | (Contributed by John Bowler)
|
---|
6147 | Fixed and modernized the CMake file, and raised the minimum required
|
---|
6148 | CMake version from 3.1 to 3.6.
|
---|
6149 | (Contributed by Clinton Ingram, Timothy Lyanguzov, Tyler Kropp, et al.)
|
---|
6150 | Allowed the configure script to disable the building of auxiliary tools
|
---|
6151 | and tests, thus catching up with the CMake file.
|
---|
6152 | (Contributed by Carlo Bramini)
|
---|
6153 | Fixed a build issue on Mac.
|
---|
6154 | (Contributed by Zixu Wang)
|
---|
6155 | Moved the Autoconf macro files to scripts/autoconf.
|
---|
6156 | Moved the CMake files (except for the main CMakeLists.txt) to
|
---|
6157 | scripts/cmake and moved the list of their contributing authors to
|
---|
6158 | scripts/cmake/AUTHORS.md
|
---|
6159 | Updated the CI configurations and scripts.
|
---|
6160 | Relicensed the CI scripts to the MIT License.
|
---|
6161 | Improved the test coverage.
|
---|
6162 | (Contributed by John Bowler)
|
---|
6163 |
|
---|
6164 | Version 1.6.42 [January 29, 2024]
|
---|
6165 | Fixed the implementation of the macro function png_check_sig().
|
---|
6166 | This was an API regression, introduced in libpng-1.6.41.
|
---|
6167 | (Reported by Matthieu Darbois)
|
---|
6168 | Fixed and updated the libpng manual.
|
---|
6169 |
|
---|
6170 | Version 1.6.43 [February 23, 2024]
|
---|
6171 | Fixed the row width check in png_check_IHDR().
|
---|
6172 | This corrected a bug that was specific to the 16-bit platforms,
|
---|
6173 | and removed a spurious compiler warning from the 64-bit builds.
|
---|
6174 | (Reported by Jacek Caban; fixed by John Bowler)
|
---|
6175 | Added eXIf chunk support to the push-mode reader in pngpread.c.
|
---|
6176 | (Contributed by Chris Blume)
|
---|
6177 | Added contrib/pngexif for the benefit of the users who would like
|
---|
6178 | to inspect the content of eXIf chunks.
|
---|
6179 | Added contrib/conftest/basic.dfa, a basic build-time configuration.
|
---|
6180 | (Contributed by John Bowler)
|
---|
6181 | Fixed a preprocessor condition in pngread.c that broke build-time
|
---|
6182 | configurations like contrib/conftest/pngcp.dfa.
|
---|
6183 | (Contributed by John Bowler)
|
---|
6184 | Added CMake build support for LoongArch LSX.
|
---|
6185 | (Contributed by GuXiWei)
|
---|
6186 | Fixed a CMake build error that occurred under a peculiar state of the
|
---|
6187 | dependency tree. This was a regression introduced in libpng-1.6.41.
|
---|
6188 | (Contributed by Dan Rosser)
|
---|
6189 | Marked the installed libpng headers as system headers in CMake.
|
---|
6190 | (Contributed by Benjamin Buch)
|
---|
6191 | Updated the build support for RISCOS.
|
---|
6192 | (Contributed by Cameron Cawley)
|
---|
6193 | Updated the makefiles to allow cross-platform builds to initialize
|
---|
6194 | conventional make variables like AR and ARFLAGS.
|
---|
6195 | Added various improvements to the CI scripts in areas like version
|
---|
6196 | consistency verification and text linting.
|
---|
6197 | Added version consistency verification to pngtest.c also.
|
---|
6198 |
|
---|
6199 | Send comments/corrections/commendations to png-mng-implement at lists.sf.net.
|
---|
6200 | Subscription is required; visit
|
---|
6201 | https://lists.sourceforge.net/lists/listinfo/png-mng-implement
|
---|
6202 | to subscribe.
|
---|