]>
Commit | Line | Data |
---|---|---|
1 | #if 0 | |
2 | CHANGES - changes for libpng | |
3 | ||
4 | Version 0.2 | |
5 | added reader into png.h | |
6 | fixed small problems in stub file | |
7 | ||
8 | Version 0.3 | |
9 | added pull reader | |
10 | split up pngwrite.c to several files | |
11 | added pnglib.txt | |
12 | added example.c | |
13 | cleaned up writer, adding a few new transformations | |
14 | fixed some bugs in writer | |
15 | interfaced with zlib 0.5 | |
16 | added K&R support | |
17 | added check for 64 KB blocks for 16-bit machines | |
18 | ||
19 | Version 0.4 | |
20 | cleaned up code and commented code | |
21 | simplified time handling into png_time | |
22 | created png_color_16 and png_color_8 to handle color needs | |
23 | cleaned up color type defines | |
24 | fixed various bugs | |
25 | made various names more consistent | |
26 | interfaced with zlib 0.71 | |
27 | cleaned up zTXt reader and writer (using zlib's Reset functions) | |
28 | split transformations into pngrtran.c and pngwtran.c | |
29 | ||
30 | Version 0.5 | |
31 | interfaced with zlib 0.8 | |
32 | fixed many reading and writing bugs | |
33 | saved using 3 spaces instead of tabs | |
34 | ||
35 | Version 0.6 | |
36 | added png_large_malloc() and png_large_free() | |
37 | added png_size_t | |
38 | cleaned up some compiler warnings | |
39 | added png_start_read_image() | |
40 | ||
41 | Version 0.7 | |
42 | cleaned up lots of bugs | |
43 | finished dithering and other stuff | |
44 | added test program | |
45 | changed name from pnglib to libpng | |
46 | ||
47 | Version 0.71 [June, 1995] | |
48 | changed pngtest.png for zlib 0.93 | |
49 | fixed error in libpng.txt and example.c | |
50 | ||
51 | Version 0.8 | |
52 | cleaned up some bugs | |
53 | added png_set_filler() | |
54 | split up pngstub.c into pngmem.c, pngio.c, and pngerror.c | |
55 | added #define's to remove unwanted code | |
56 | moved png_info_init() to png.c | |
57 | added old_size into png_realloc() | |
58 | added functions to manually set filtering and compression info | |
59 | changed compression parameters based on image type | |
60 | optimized filter selection code | |
61 | added version info | |
62 | changed external functions passing floats to doubles (k&r problems?) | |
63 | put all the configurable stuff in pngconf.h | |
64 | enabled png_set_shift to work with paletted images on read | |
65 | added png_read_update_info() - updates info structure with transformations | |
66 | ||
67 | Version 0.81 [August, 1995] | |
68 | incorporated Tim Wegner's medium model code (thanks, Tim) | |
69 | ||
70 | Version 0.82 [September, 1995] | |
71 | [unspecified changes] | |
72 | ||
73 | Version 0.85 [December, 1995] | |
74 | added more medium model code (almost everything's a far) | |
75 | added i/o, error, and memory callback functions | |
76 | fixed some bugs (16-bit, 4-bit interlaced, etc.) | |
77 | added first run progressive reader (barely tested) | |
78 | ||
79 | Version 0.86 [January, 1996] | |
80 | fixed bugs | |
81 | improved documentation | |
82 | ||
83 | Version 0.87 [January, 1996] | |
84 | fixed medium model bugs | |
85 | fixed other bugs introduced in 0.85 and 0.86 | |
86 | added some minor documentation | |
87 | ||
88 | Version 0.88 [January, 1996] | |
89 | fixed progressive bugs | |
90 | replaced tabs with spaces | |
91 | cleaned up documentation | |
92 | added callbacks for read/write and warning/error functions | |
93 | ||
94 | Version 0.89 [July, 1996] | |
95 | Added new initialization API to make libpng work better with shared libs | |
96 | we now have png_create_read_struct(), png_create_write_struct(), | |
97 | png_create_info_struct(), png_destroy_read_struct(), and | |
98 | png_destroy_write_struct() instead of the separate calls to | |
99 | malloc and png_read_init(), png_info_init(), and png_write_init() | |
100 | Changed warning/error callback functions to fix bug - this means you | |
101 | should use the new initialization API if you were using the old | |
102 | png_set_message_fn() calls, and that the old API no longer exists | |
103 | so that people are aware that they need to change their code | |
104 | Changed filter selection API to allow selection of multiple filters | |
105 | since it didn't work in previous versions of libpng anyways | |
106 | Optimized filter selection code | |
107 | Fixed png_set_background() to allow using an arbitrary RGB color for | |
108 | paletted images | |
109 | Fixed gamma and background correction for paletted images, so | |
110 | png_correct_palette is not needed unless you are correcting an | |
111 | external palette (you will need to #define PNG_CORRECT_PALETTE_SUPPORTED | |
112 | in pngconf.h) - if nobody uses this, it may disappear in the future. | |
113 | Fixed bug with Borland 64K memory allocation (Alexander Lehmann) | |
114 | Fixed bug in interlace handling (Smarasderagd, I think) | |
115 | Added more error checking for writing and image to reduce invalid files | |
116 | Separated read and write functions so that they won't both be linked | |
117 | into a binary when only reading or writing functionality is used | |
118 | New pngtest image also has interlacing and zTXt | |
119 | Updated documentation to reflect new API | |
120 | ||
121 | Version 0.90 [January, 1997] | |
122 | Made CRC errors/warnings on critical and ancillary chunks configurable | |
123 | libpng will use the zlib CRC routines by (compile-time) default | |
124 | Changed DOS small/medium model memory support - needs zlib 1.04 (Tim Wegner) | |
125 | Added external C++ wrapper statements to png.h (Gilles Dauphin) | |
126 | Allow PNG file to be read when some or all of file signature has already | |
127 | been read from the beginning of the stream. ****This affects the size | |
128 | of info_struct and invalidates all programs that use a shared libpng**** | |
129 | Fixed png_filler() declarations | |
130 | Fixed? background color conversions | |
131 | Fixed order of error function pointers to match documentation | |
132 | Current chunk name is now available in png_struct to reduce the number | |
133 | of nearly identical error messages (will simplify multi-lingual | |
134 | support when available) | |
135 | Try to get ready for unknown-chunk callback functions: | |
136 | - previously read critical chunks are flagged, so the chunk handling | |
137 | routines can determine if the chunk is in the right place | |
138 | - all chunk handling routines have the same prototypes, so we will | |
139 | be able to handle all chunks via a callback mechanism | |
140 | Try to fix Linux "setjmp" buffer size problems | |
141 | Removed png_large_malloc, png_large_free, and png_realloc functions. | |
142 | ||
143 | Version 0.95 [March, 1997] | |
144 | Fixed bug in pngwutil.c allocating "up_row" twice and "avg_row" never | |
145 | Fixed bug in PNG file signature compares when start != 0 | |
146 | Changed parameter type of png_set_filler(...filler...) from png_byte | |
147 | to png_uint_32 | |
148 | Added test for MACOS to ensure that both math.h and fp.h are not #included | |
149 | Added macros for libpng to be compiled as a Windows DLL (Andreas Kupries) | |
150 | Added "packswap" transformation, which changes the endianness of | |
151 | packed-pixel bytes (Kevin Bracey) | |
152 | Added "strip_alpha" transformation, which removes the alpha channel of | |
153 | input images without using it (not necessarily a good idea) | |
154 | Added "swap_alpha" transformation, which puts the alpha channel in front | |
155 | of the color bytes instead of after | |
156 | Removed all implicit variable tests which assume NULL == 0 (I think) | |
157 | Changed several variables to "png_size_t" to show 16/32-bit limitations | |
158 | Added new pCAL chunk read/write support | |
159 | Added experimental filter selection weighting (Greg Roelofs) | |
160 | Removed old png_set_rgbx() and png_set_xrgb() functions that have been | |
161 | obsolete for about 2 years now (use png_set_filler() instead) | |
162 | Added macros to read 16- and 32-bit ints directly from buffer, to be | |
163 | used only on those systems that support it (namely PowerPC and 680x0) | |
164 | With some testing, this may become the default for MACOS/PPC systems. | |
165 | Only calculate CRC on data if we are going to use it | |
166 | Added macros for zTXt compression type PNG_zTXt_COMPRESSION_??? | |
167 | Added macros for simple libpng debugging output selectable at compile time | |
168 | Removed PNG_READ_END_MODE in progressive reader (Smarasderagd) | |
169 | More description of info_struct in libpng.txt and png.h | |
170 | More instructions in example.c | |
171 | More chunk types tested in pngtest.c | |
172 | Renamed pngrcb.c to pngset.c, and all png_read_<chunk> functions to be | |
173 | png_set_<chunk>. We now have corresponding png_get_<chunk> | |
174 | functions in pngget.c to get information in info_ptr. This isolates | |
175 | the application from the internal organization of png_info_struct | |
176 | (good for shared library implementations). | |
177 | ||
178 | Version 0.96 [May, 1997] | |
179 | Fixed serious bug with < 8bpp images introduced in 0.95 | |
180 | Fixed 256-color transparency bug (Greg Roelofs) | |
181 | Fixed up documentation (Greg Roelofs, Laszlo Nyul) | |
182 | Fixed "error" in pngconf.h for Linux setjmp() behavior | |
183 | Fixed DOS medium model support (Tim Wegner) | |
184 | Fixed png_check_keyword() for case with error in static string text | |
185 | Added read of CRC after IEND chunk for embedded PNGs (Laszlo Nyul) | |
186 | Added typecasts to quiet compiler errors | |
187 | Added more debugging info | |
188 | ||
189 | Version 0.97 [January, 1998] | |
190 | Removed PNG_USE_OWN_CRC capability | |
191 | Relocated png_set_crc_action from pngrutil.c to pngrtran.c | |
192 | Fixed typecasts of "new_key", etc. (Andreas Dilger) | |
193 | Added RFC 1152 [sic] date support | |
194 | Fixed bug in gamma handling of 4-bit grayscale | |
195 | Added 2-bit grayscale gamma handling (Glenn R-P) | |
196 | Added more typecasts. 65536L becomes (png_uint_32)65536L, etc. (Glenn R-P) | |
197 | Minor corrections in libpng.txt | |
198 | Added simple sRGB support (Glenn R-P) | |
199 | Easier conditional compiling, e.g. define PNG_READ/WRITE_NOT_FULLY_SUPPORTED; | |
200 | all configurable options can be selected from command-line instead | |
201 | of having to edit pngconf.h (Glenn R-P) | |
202 | Fixed memory leak in pngwrite.c (free info_ptr->text) (Glenn R-P) | |
203 | Added more conditions for png_do_background, to avoid changing | |
204 | black pixels to background when a background is supplied and | |
205 | no pixels are transparent | |
206 | Repaired PNG_NO_STDIO behavior | |
207 | Tested NODIV support and made it default behavior (Greg Roelofs) | |
208 | Added "-m" option and PNGTEST_DEBUG_MEMORY to pngtest (John Bowler) | |
209 | Regularized version numbering scheme and bumped shared-library major | |
210 | version number to 2 to avoid problems with libpng 0.89 apps (Greg Roelofs) | |
211 | ||
212 | Version 0.98 [January, 1998] | |
213 | Cleaned up some typos in libpng.txt and in code documentation | |
214 | Fixed memory leaks in pCAL chunk processing (Glenn R-P and John Bowler) | |
215 | Cosmetic change "display_gamma" to "screen_gamma" in pngrtran.c | |
216 | Changed recommendation about file_gamma for PC images to .51 from .45, | |
217 | in example.c and libpng.txt, added comments to distinguish between | |
218 | screen_gamma, viewing_gamma, and display_gamma. | |
219 | Changed all references to RFC1152 to read RFC1123 and changed the | |
220 | PNG_TIME_RFC1152_SUPPORTED macro to PNG_TIME_RFC1123_SUPPORTED | |
221 | Added png_invert_alpha capability (Glenn R-P -- suggestion by Jon Vincent) | |
222 | Changed srgb_intent from png_byte to int to avoid compiler bugs | |
223 | ||
224 | Version 0.99 [January 30, 1998] | |
225 | Free info_ptr->text instead of end_info_ptr->text in pngread.c (John Bowler) | |
226 | Fixed a longstanding "packswap" bug in pngtrans.c | |
227 | Fixed some inconsistencies in pngconf.h that prevented compiling with | |
228 | PNG_READ_GAMMA_SUPPORTED and PNG_READ_hIST_SUPPORTED undefined | |
229 | Fixed some typos and made other minor rearrangement of libpng.txt (Andreas) | |
230 | Changed recommendation about file_gamma for PC images to .50 from .51 in | |
231 | example.c and libpng.txt, and changed file_gamma for sRGB images to .45 | |
232 | Added a number of functions to access information from the png structure | |
233 | png_get_image_height(), etc. (Glenn R-P, suggestion by Brad Pettit) | |
234 | Added TARGET_MACOS similar to zlib-1.0.8 | |
235 | Define PNG_ALWAYS_EXTERN when __MWERKS__ && WIN32 are defined | |
236 | Added type casting to all png_malloc() function calls | |
237 | ||
238 | Version 0.99a [January 31, 1998] | |
239 | Added type casts and parentheses to all returns that return a value.(Tim W.) | |
240 | ||
241 | Version 0.99b [February 4, 1998] | |
242 | Added type cast png_uint_32 on malloc function calls where needed. | |
243 | Changed type of num_hist from png_uint_32 to int (same as num_palette). | |
244 | Added checks for rowbytes overflow, in case png_size_t is less than 32 bits. | |
245 | Renamed makefile.elf to makefile.lnx. | |
246 | ||
247 | Version 0.99c [February 7, 1998] | |
248 | More type casting. Removed erroneous overflow test in pngmem.c. | |
249 | Added png_buffered_memcpy() and png_buffered_memset(), apply them to rowbytes. | |
250 | Added UNIX manual pages libpng.3 (incorporating libpng.txt) and png.5. | |
251 | ||
252 | Version 0.99d [February 11, 1998] | |
253 | Renamed "far_to_near()" "png_far_to_near()" | |
254 | Revised libpng.3 | |
255 | Version 99c "buffered" operations didn't work as intended. Replaced them | |
256 | with png_memcpy_check() and png_memset_check(). | |
257 | Added many "if (png_ptr == NULL) return" to quell compiler warnings about | |
258 | unused png_ptr, mostly in pngget.c and pngset.c. | |
259 | Check for overlength tRNS chunk present when indexed-color PLTE is read. | |
260 | Cleaned up spelling errors in libpng.3/libpng.txt | |
261 | Corrected a problem with png_get_tRNS() which returned undefined trans array | |
262 | ||
263 | Version 0.99e [February 28, 1998] | |
264 | Corrected png_get_tRNS() again. | |
265 | Add parentheses for easier reading of pngget.c, fixed "||" should be "&&". | |
266 | Touched up example.c to make more of it compileable, although the entire | |
267 | file still can't be compiled (Willem van Schaik) | |
268 | Fixed a bug in png_do_shift() (Bryan Tsai) | |
269 | Added a space in png.h prototype for png_write_chunk_start() | |
270 | Replaced pngtest.png with one created with zlib 1.1.1 | |
271 | Changed pngtest to report PASS even when file size is different (Jean-loup G.) | |
272 | Corrected some logic errors in png_do_invert_alpha() (Chris Patterson) | |
273 | ||
274 | Version 0.99f [March 5, 1998] | |
275 | Corrected a bug in pngpread() introduced in version 99c (Kevin Bracey) | |
276 | Moved makefiles into a "scripts" directory, and added INSTALL instruction file | |
277 | Added makefile.os2 and pngos2.def (A. Zabolotny) and makefile.s2x (W. Sebok) | |
278 | Added pointers to "note on libpng versions" in makefile.lnx and README | |
279 | Added row callback feature when reading and writing nonprogressive rows | |
280 | and added a test of this feature in pngtest.c | |
281 | Added user transform callbacks, with test of the feature in pngtest.c | |
282 | ||
283 | Version 0.99g [March 6, 1998, morning] | |
284 | Minor changes to pngtest.c to suppress compiler warnings. | |
285 | Removed "beta" language from documentation. | |
286 | ||
287 | Version 0.99h [March 6, 1998, evening] | |
288 | Minor changes to previous minor changes to pngtest.c | |
289 | Changed PNG_READ_NOT_FULLY_SUPPORTED to PNG_READ_TRANSFORMS_NOT_SUPPORTED | |
290 | and added PNG_PROGRESSIVE_READ_NOT_SUPPORTED macro | |
291 | Added user transform capability | |
292 | ||
293 | Version 1.00 [March 7, 1998] | |
294 | Changed several typedefs in pngrutil.c | |
295 | Added makefile.wat (Pawel Mrochen), updated makefile.tc3 (Willem van Schaik) | |
296 | Replaced "while(1)" with "for(;;)" | |
297 | Added PNGARG() to prototypes in pngtest.c and removed some prototypes | |
298 | Updated some of the makefiles (Tom Lane) | |
299 | Changed some typedefs (s_start, etc.) in pngrutil.c | |
300 | Fixed dimensions of "short_months" array in pngwrite.c | |
301 | Replaced ansi2knr.c with the one from jpeg-v6 | |
302 | ||
303 | Version 1.0.0 [March 8, 1998] | |
304 | Changed name from 1.00 to 1.0.0 (Adam Costello) | |
305 | Added smakefile.ppc (with SCOPTIONS.ppc) for Amiga PPC (Andreas Kleinert) | |
306 | ||
307 | Version 1.0.0a [March 9, 1998] | |
308 | Fixed three bugs in pngrtran.c to make gamma+background handling consistent | |
309 | (Greg Roelofs) | |
310 | Changed format of the PNG_LIBPNG_VER integer to xyyzz instead of xyz | |
311 | for major, minor, and bugfix releases. This is 10001. (Adam Costello, | |
312 | Tom Lane) | |
313 | Make months range from 1-12 in png_convert_to_rfc1123 | |
314 | ||
315 | Version 1.0.0b [March 13, 1998] | |
316 | Quieted compiler complaints about two empty "for" loops in pngrutil.c | |
317 | Minor changes to makefile.s2x | |
318 | Removed #ifdef/#endif around a png_free() in pngread.c | |
319 | ||
320 | Version 1.0.1 [March 14, 1998] | |
321 | Changed makefile.s2x to reduce security risk of using a relative pathname | |
322 | Fixed some typos in the documentation (Greg). | |
323 | Fixed a problem with value of "channels" returned by png_read_update_info() | |
324 | ||
325 | Version 1.0.1a [April 21, 1998] | |
326 | Optimized Paeth calculations by replacing abs() function calls with intrinsics | |
327 | plus other loop optimizations. Improves avg decoding speed by about 20%. | |
328 | Commented out i386istic "align" compiler flags in makefile.lnx. | |
329 | Reduced the default warning level in some makefiles, to make them consistent. | |
330 | Removed references to IJG and JPEG in the ansi2knr.c copyright statement. | |
331 | Fixed a bug in png_do_strip_filler with XXRRGGBB => RRGGBB transformation. | |
332 | Added grayscale and 16-bit capability to png_do_read_filler(). | |
333 | Fixed a bug in pngset.c, introduced in version 0.99c, that sets rowbytes | |
334 | too large when writing an image with bit_depth < 8 (Bob Dellaca). | |
335 | Corrected some bugs in the experimental weighted filtering heuristics. | |
336 | Moved a misplaced pngrutil code block that truncates tRNS if it has more | |
337 | than num_palette entries -- test was done before num_palette was defined. | |
338 | Fixed a png_convert_to_rfc1123() bug that converts day 31 to 0 (Steve Eddins). | |
339 | Changed compiler flags in makefile.wat for better optimization | |
340 | (Pawel Mrochen). | |
341 | ||
342 | Version 1.0.1b [May 2, 1998] | |
343 | Relocated png_do_gray_to_rgb() within png_do_read_transformations() (Greg). | |
344 | Relocated the png_composite macros from pngrtran.c to png.h (Greg). | |
345 | Added makefile.sco (contributed by Mike Hopkirk). | |
346 | Fixed two bugs (missing definitions of "istop") introduced in libpng-1.0.1a. | |
347 | Fixed a bug in pngrtran.c that would set channels=5 under some circumstances. | |
348 | More work on the Paeth-filtering, achieving imperceptible speedup | |
349 | (A Kleinert). | |
350 | More work on loop optimization which may help when compiled with C++ | |
351 | compilers. | |
352 | Added warnings when people try to use transforms they've defined out. | |
353 | Collapsed 4 "i" and "c" loops into single "i" loops in pngrtran and pngwtran. | |
354 | Revised paragraph about png_set_expand() in libpng.txt and libpng.3 (Greg) | |
355 | ||
356 | Version 1.0.1c [May 11, 1998] | |
357 | Fixed a bug in pngrtran.c (introduced in libpng-1.0.1a) where the masks for | |
358 | filler bytes should have been 0xff instead of 0xf. | |
359 | Added max_pixel_depth=32 in pngrutil.c when using FILLER with palette images. | |
360 | Moved PNG_WRITE_WEIGHTED_FILTER_SUPPORTED and PNG_WRITE_FLUSH_SUPPORTED | |
361 | out of the PNG_WRITE_TRANSFORMS_NOT_SUPPORTED block of pngconf.h | |
362 | Added "PNG_NO_WRITE_TRANSFORMS" etc., as alternatives for *_NOT_SUPPORTED, | |
363 | for consistency, in pngconf.h | |
364 | Added individual "ifndef PNG_NO_[CAPABILITY]" in pngconf.h to make it easier | |
365 | to remove unwanted capabilities via the compile line | |
366 | Made some corrections to grammar (which, it's) in documentation (Greg). | |
367 | Corrected example.c, use of row_pointers in png_write_image(). | |
368 | ||
369 | Version 1.0.1d [May 24, 1998] | |
370 | Corrected several statements that used side effects illegally in pngrutil.c | |
371 | and pngtrans.c, that were introduced in version 1.0.1b | |
372 | Revised png_read_rows() to avoid repeated if-testing for NULL (A Kleinert) | |
373 | More corrections to example.c, use of row_pointers in png_write_image() | |
374 | and png_read_rows(). | |
375 | Added pngdll.mak and pngdef.pas to scripts directory, contributed by | |
376 | Bob Dellaca, to make a png32bd.dll with Borland C++ 4.5 | |
377 | Fixed error in example.c with png_set_text: num_text is 3, not 2 (Guido V.) | |
378 | Changed several loops from count-down to count-up, for consistency. | |
379 | ||
380 | Version 1.0.1e [June 6, 1998] | |
381 | Revised libpng.txt and libpng.3 description of png_set_read|write_fn(), and | |
382 | added warnings when people try to set png_read_fn and png_write_fn in | |
383 | the same structure. | |
384 | Added a test such that png_do_gamma will be done when num_trans==0 | |
385 | for truecolor images that have defined a background. This corrects an | |
386 | error that was introduced in libpng-0.90 that can cause gamma processing | |
387 | to be skipped. | |
388 | Added tests in png.h to include "trans" and "trans_values" in structures | |
389 | when PNG_READ_BACKGROUND_SUPPORTED or PNG_READ_EXPAND_SUPPORTED is defined. | |
390 | Add png_free(png_ptr->time_buffer) in png_destroy_read_struct() | |
391 | Moved png_convert_to_rfc_1123() from pngwrite.c to png.c | |
392 | Added capability for user-provided malloc_fn() and free_fn() functions, | |
393 | and revised pngtest.c to demonstrate their use, replacing the | |
394 | PNGTEST_DEBUG_MEM feature. | |
395 | Added makefile.w32, for Microsoft C++ 4.0 and later (Tim Wegner). | |
396 | ||
397 | Version 1.0.2 [June 14, 1998] | |
398 | Fixed two bugs in makefile.bor . | |
399 | ||
400 | Version 1.0.2a [December 30, 1998] | |
401 | Replaced and extended code that was removed from png_set_filler() in 1.0.1a. | |
402 | Fixed a bug in png_do_filler() that made it fail to write filler bytes in | |
403 | the left-most pixel of each row (Kevin Bracey). | |
404 | Changed "static pngcharp tIME_string" to "static char tIME_string[30]" | |
405 | in pngtest.c (Duncan Simpson). | |
406 | Fixed a bug in pngtest.c that caused pngtest to try to write a tIME chunk | |
407 | even when no tIME chunk was present in the source file. | |
408 | Fixed a problem in pngrutil.c: gray_to_rgb didn't always work with 16-bit. | |
409 | Fixed a problem in png_read_push_finish_row(), which would not skip some | |
410 | passes that it should skip, for images that are less than 3 pixels high. | |
411 | Interchanged the order of calls to png_do_swap() and png_do_shift() | |
412 | in pngwtran.c (John Cromer). | |
413 | Added #ifdef PNG_DEBUG/#endif surrounding use of PNG_DEBUG in png.h . | |
414 | Changed "bad adaptive filter type" from error to warning in pngrutil.c . | |
415 | Fixed a documentation error about default filtering with 8-bit indexed-color. | |
416 | Separated the PNG_NO_STDIO macro into PNG_NO_STDIO and PNG_NO_CONSOLE_IO | |
417 | (L. Peter Deutsch). | |
418 | Added png_set_rgb_to_gray() and png_get_rgb_to_gray_status() functions. | |
419 | Added png_get_copyright() and png_get_header_version() functions. | |
420 | Revised comments on png_set_progressive_read_fn() in libpng.txt and example.c | |
421 | Added information about debugging in libpng.txt and libpng.3 . | |
422 | Changed "ln -sf" to "ln -s -f" in makefile.s2x, makefile.lnx, and | |
423 | makefile.sco. | |
424 | Removed lines after Dynamic Dependencies" in makefile.aco . | |
425 | Revised makefile.dec to make a shared library (Jeremie Petit). | |
426 | Removed trailing blanks from all files. | |
427 | ||
428 | Version 1.0.2a [January 6, 1999] | |
429 | Removed misplaced #endif and #ifdef PNG_NO_EXTERN near the end of png.h | |
430 | Added "if" tests to silence complaints about unused png_ptr in png.h and png.c | |
431 | Changed "check_if_png" function in example.c to return true (nonzero) if PNG. | |
432 | Changed libpng.txt to demonstrate png_sig_cmp() instead of png_check_sig() | |
433 | which is obsolete. | |
434 | ||
435 | Version 1.0.3 [January 14, 1999] | |
436 | Added makefile.hux, for Hewlett Packard HPUX 10.20 and 11.00 (Jim Rice) | |
437 | Added a statement of Y2K compliance in png.h, libpng.3, and Y2KINFO. | |
438 | ||
439 | Version 1.0.3a [August 12, 1999] | |
440 | Added check for PNG_READ_INTERLACE_SUPPORTED in pngread.c; issue a warning | |
441 | if an attempt is made to read an interlaced image when it's not supported. | |
442 | Added check if png_ptr->trans is defined before freeing it in pngread.c | |
443 | Modified the Y2K statement to include versions back to version 0.71 | |
444 | Fixed a bug in the check for valid IHDR bit_depth/color_types in pngrutil.c | |
445 | Modified makefile.wat (added -zp8 flag, ".symbolic", changed some comments) | |
446 | Replaced leading blanks with tab characters in makefile.hux | |
447 | Changed "dworkin.wustl.edu" to "ccrc.wustl.edu" in various documents. | |
448 | Changed (float)red and (float)green to (double)red, (double)green | |
449 | in png_set_rgb_to_gray() to avoid "promotion" problems in AIX. | |
450 | Fixed a bug in pngconf.h that omitted <stdio.h> when PNG_DEBUG==0 (K Bracey). | |
451 | Reformatted libpng.3 and libpngpf.3 with proper fonts (script by J. vanZandt). | |
452 | Updated documentation to refer to the PNG-1.2 specification. | |
453 | Removed ansi2knr.c and left pointers to the latest source for ansi2knr.c | |
454 | in makefile.knr, INSTALL, and README (L. Peter Deutsch) | |
455 | Fixed bugs in calculation of the length of rowbytes when adding alpha | |
456 | channels to 16-bit images, in pngrtran.c (Chris Nokleberg) | |
457 | Added function png_set_user_transform_info() to store user_transform_ptr, | |
458 | user_depth, and user_channels into the png_struct, and a function | |
459 | png_get_user_transform_ptr() to retrieve the pointer (Chris Nokleberg) | |
460 | Added function png_set_empty_plte_permitted() to make libpng useable | |
461 | in MNG applications. | |
462 | Corrected the typedef for png_free_ptr in png.h (Jesse Jones). | |
463 | Correct gamma with srgb is 45455 instead of 45000 in pngrutil.c, to be | |
464 | consistent with PNG-1.2, and allow variance of 500 before complaining. | |
465 | Added assembler code contributed by Intel in file pngvcrd.c and modified | |
466 | makefile.w32 to use it (Nirav Chhatrapati, INTEL Corporation, | |
467 | Gilles Vollant) | |
468 | Changed "ln -s -f" to "ln -f -s" in the makefiles to make Solaris happy. | |
469 | Added some aliases for png_set_expand() in pngrtran.c, namely | |
470 | png_set_expand_PLTE(), png_set_expand_depth(), and png_set_expand_tRNS() | |
471 | (Greg Roelofs, in "PNG: The Definitive Guide"). | |
472 | Added makefile.beo for BEOS on X86, contributed by Sander Stok. | |
473 | ||
474 | Version 1.0.3b [August 26, 1999] | |
475 | Replaced 2147483647L several places with PNG_MAX_UINT macro, defined in png.h | |
476 | Changed leading blanks to tabs in all makefiles. | |
477 | Define PNG_USE_PNGVCRD in makefile.w32, to get MMX assembler code. | |
478 | Made alternate versions of png_set_expand() in pngrtran.c, namely | |
479 | png_set_gray_1_2_4_to_8, png_set_palette_to_rgb, and png_set_tRNS_to_alpha | |
480 | (Greg Roelofs, in "PNG: The Definitive Guide"). Deleted the 1.0.3a aliases. | |
481 | Relocated start of 'extern "C"' block in png.h so it doesn't include pngconf.h | |
482 | Revised calculation of num_blocks in pngmem.c to avoid a potentially | |
483 | negative shift distance, whose results are undefined in the C language. | |
484 | Added a check in pngset.c to prevent writing multiple tIME chunks. | |
485 | Added a check in pngwrite.c to detect invalid small window_bits sizes. | |
486 | ||
487 | Version 1.0.3d [September 4, 1999] | |
488 | Fixed type casting of igamma in pngrutil.c | |
489 | Added new png_expand functions to scripts/pngdef.pas and pngos2.def | |
490 | Added a demo read_user_transform_fn that examines the row filters in pngtest.c | |
491 | ||
492 | Version 1.0.4 [September 24, 1999] | |
493 | Define PNG_ALWAYS_EXTERN in pngconf.h if __STDC__ is defined | |
494 | Delete #define PNG_INTERNAL and include "png.h" from pngasmrd.h | |
495 | Made several minor corrections to pngtest.c | |
496 | Renamed the makefiles with longer but more user friendly extensions. | |
497 | Copied the PNG copyright and license to a separate LICENSE file. | |
498 | Revised documentation, png.h, and example.c to remove reference to | |
499 | "viewing_gamma" which no longer appears in the PNG specification. | |
500 | Revised pngvcrd.c to use MMX code for interlacing only on the final pass. | |
501 | Updated pngvcrd.c to use the faster C filter algorithms from libpng-1.0.1a | |
502 | Split makefile.win32vc into two versions, makefile.vcawin32 (uses MMX | |
503 | assembler code) and makefile.vcwin32 (doesn't). | |
504 | Added a CPU timing report to pngtest.c (enabled by defining PNGTEST_TIMING) | |
505 | Added a copy of pngnow.png to the distribution. | |
506 | ||
507 | Version 1.0.4a [September 25, 1999] | |
508 | Increase max_pixel_depth in pngrutil.c if a user transform needs it. | |
509 | Changed several division operations to right-shifts in pngvcrd.c | |
510 | ||
511 | Version 1.0.4b [September 30, 1999] | |
512 | Added parentheses in line 3732 of pngvcrd.c | |
513 | Added a comment in makefile.linux warning about buggy -O3 in pgcc 2.95.1 | |
514 | ||
515 | Version 1.0.4c [October 1, 1999] | |
516 | Added a "png_check_version" function in png.c and pngtest.c that will generate | |
517 | a helpful compiler error if an old png.h is found in the search path. | |
518 | Changed type of png_user_transform_depth|channels from int to png_byte. | |
519 | ||
520 | Version 1.0.4d [October 6, 1999] | |
521 | Changed 0.45 to 0.45455 in png_set_sRGB() | |
522 | Removed unused PLTE entries from pngnow.png | |
523 | Re-enabled some parts of pngvcrd.c (png_combine_row) that work properly. | |
524 | ||
525 | Version 1.0.4e [October 10, 1999] | |
526 | Fixed sign error in pngvcrd.c (Greg Roelofs) | |
527 | Replaced some instances of memcpy with simple assignments in pngvcrd (GR-P) | |
528 | ||
529 | Version 1.0.4f [October 15, 1999] | |
530 | Surrounded example.c code with #if 0 .. #endif to prevent people from | |
531 | inadvertently trying to compile it. | |
532 | Changed png_get_header_version() from a function to a macro in png.h | |
533 | Added type casting mostly in pngrtran.c and pngwtran.c | |
534 | Removed some pointless "ptr = NULL" in pngmem.c | |
535 | Added a "contrib" directory containing the source code from Greg's book. | |
536 | ||
537 | Version 1.0.5 [October 15, 1999] | |
538 | Minor editing of the INSTALL and README files. | |
539 | ||
540 | Version 1.0.5a [October 23, 1999] | |
541 | Added contrib/pngsuite and contrib/pngminus (Willem van Schaik) | |
542 | Fixed a typo in the png_set_sRGB() function call in example.c (Jan Nijtmans) | |
543 | Further optimization and bugfix of pngvcrd.c | |
544 | Revised pngset.c so that it does not allocate or free memory in the user's | |
545 | text_ptr structure. Instead, it makes its own copy. | |
546 | Created separate write_end_info_struct in pngtest.c for a more severe test. | |
547 | Added code in pngwrite.c to free info_ptr->text[i].key to stop a memory leak. | |
548 | ||
549 | Version 1.0.5b [November 23, 1999] | |
550 | Moved PNG_FLAG_HAVE_CHUNK_HEADER, PNG_FLAG_BACKGROUND_IS_GRAY and | |
551 | PNG_FLAG_WROTE_tIME from flags to mode. | |
552 | Added png_write_info_before_PLTE() function. | |
553 | Fixed some typecasting in contrib/gregbook/*.c | |
554 | Updated scripts/makevms.com and added makevms.com to contrib/gregbook | |
555 | and contrib/pngminus (Martin Zinser) | |
556 | ||
557 | Version 1.0.5c [November 26, 1999] | |
558 | Moved png_get_header_version from png.h to png.c, to accommodate ansi2knr. | |
559 | Removed all global arrays (according to PNG_NO_GLOBAL_ARRAYS macro), to | |
560 | accommodate making DLL's: Moved usr_png_ver from global variable to function | |
561 | png_get_header_ver() in png.c. Moved png_sig to png_sig_bytes in png.c and | |
562 | eliminated use of png_sig in pngwutil.c. Moved the various png_CHNK arrays | |
563 | into pngtypes.h. Eliminated use of global png_pass arrays. Declared the | |
564 | png_CHNK and png_pass arrays to be "const". Made the global arrays | |
565 | available to applications (although none are used in libpng itself) when | |
566 | PNG_NO_GLOBAL_ARRAYS is not defined or when PNG_GLOBAL_ARRAYS is defined. | |
567 | Removed some extraneous "-I" from contrib/pngminus/makefile.std | |
568 | Changed the PNG_sRGB_INTENT macros in png.h to be consistent with PNG-1.2. | |
569 | Change PNG_SRGB_INTENT to PNG_sRGB_INTENT in libpng.txt and libpng.3 | |
570 | ||
571 | Version 1.0.5d [November 29, 1999] | |
572 | Add type cast (png_const_charp) two places in png.c | |
573 | Eliminated pngtypes.h; use macros instead to declare PNG_CHNK arrays. | |
574 | Renamed "PNG_GLOBAL_ARRAYS" to "PNG_USE_GLOBAL_ARRAYS" and made available | |
575 | to applications a macro "PNG_USE_LOCAL_ARRAYS". | |
576 | comment out (with #ifdef) all the new declarations when | |
577 | PNG_USE_GLOBAL_ARRAYS is defined. | |
578 | Added PNG_EXPORT_VAR macro to accommodate making DLL's. | |
579 | ||
580 | Version 1.0.5e [November 30, 1999] | |
581 | Added iCCP, iTXt, and sPLT support; added "lang" member to the png_text | |
582 | structure; refactored the inflate/deflate support to make adding new chunks | |
583 | with trailing compressed parts easier in the future, and added new functions | |
584 | png_free_iCCP, png_free_pCAL, png_free_sPLT, png_free_text, png_get_iCCP, | |
585 | png_get_spalettes, png_set_iCCP, png_set_spalettes (Eric S. Raymond). | |
586 | NOTE: Applications that write text chunks MUST define png_text->lang | |
587 | before calling png_set_text(). It must be set to NULL if you want to | |
588 | write tEXt or zTXt chunks. If you want your application to be able to | |
589 | run with older versions of libpng, use | |
590 | ||
591 | #ifdef PNG_iTXt_SUPPORTED | |
592 | png_text[i].lang = NULL; | |
593 | #endif | |
594 | ||
595 | Changed png_get_oFFs() and png_set_oFFs() to use signed rather than unsigned | |
596 | offsets (Eric S. Raymond). | |
597 | Combined PNG_READ_cHNK_SUPPORTED and PNG_WRITE_cHNK_SUPPORTED macros into | |
598 | PNG_cHNK_SUPPORTED and combined the three types of PNG_text_SUPPORTED | |
599 | macros, leaving the separate macros also available. | |
600 | Removed comments on #endifs at the end of many short, non-nested #if-blocks. | |
601 | ||
602 | Version 1.0.5f [December 6, 1999] | |
603 | Changed makefile.solaris to issue a warning about potential problems when | |
604 | the ucb "ld" is in the path ahead of the ccs "ld". | |
605 | Removed "- [date]" from the "synopsis" line in libpng.3 and libpngpf.3. | |
606 | Added sCAL chunk support (Eric S. Raymond). | |
607 | ||
608 | Version 1.0.5g [December 7, 1999] | |
609 | Fixed "png_free_spallettes" typo in png.h | |
610 | Added code to handle new chunks in pngpread.c | |
611 | Moved PNG_CHNK string macro definitions outside of PNG_NO_EXTERN block | |
612 | Added "translated_key" to png_text structure and png_write_iTXt(). | |
613 | Added code in pngwrite.c to work around a newly discovered zlib bug. | |
614 | ||
615 | Version 1.0.5h [December 10, 1999] | |
616 | NOTE: regarding the note for version 1.0.5e, the following must also | |
617 | be included in your code: | |
618 | png_text[i].translated_key = NULL; | |
619 | Unknown chunk handling is now supported. | |
620 | Option to eliminate all floating point support was added. Some new | |
621 | fixed-point functions such as png_set_gAMA_fixed() were added. | |
622 | Expanded tabs and removed trailing blanks in source files. | |
623 | ||
624 | Version 1.0.5i [December 13, 1999] | |
625 | Added some type casts to silence compiler warnings. | |
626 | Renamed "png_free_spalette" to "png_free_spalettes" for consistency. | |
627 | Removed leading blanks from a #define in pngvcrd.c | |
628 | Added some parameters to the new png_set_keep_unknown_chunks() function. | |
629 | Added a test for up->location != 0 in the first instance of writing | |
630 | unknown chunks in pngwrite.c | |
631 | Changed "num" to "i" in png_free_spalettes() and png_free_unknowns() to | |
632 | prevent recursion. | |
633 | Added png_free_hIST() function. | |
634 | Various patches to fix bugs in the sCAL and integer cHRM processing, | |
635 | and to add some convenience macros for use with sCAL. | |
636 | ||
637 | Version 1.0.5j [December 21, 1999] | |
638 | Changed "unit" parameter of png_write_sCAL from png_byte to int, to work | |
639 | around buggy compilers. | |
640 | Added new type "png_fixed_point" for integers that hold float*100000 values | |
641 | Restored backward compatibility of tEXt/zTXt chunk processing: | |
642 | Restored the first four members of png_text to the same order as v.1.0.5d. | |
643 | Added members "lang_key" and "itxt_length" to png_text struct. Set | |
644 | text_length=0 when "text" contains iTXt data. Use the "compression" | |
645 | member to distinguish among tEXt/zTXt/iTXt types. Added | |
646 | PNG_ITXT_COMPRESSION_NONE (1) and PNG_ITXT_COMPRESSION_zTXt(2) macros. | |
647 | The "Note" above, about backward incompatibility of libpng-1.0.5e, no | |
648 | longer applies. | |
649 | Fixed png_read|write_iTXt() to read|write parameters in the right order, | |
650 | and to write the iTXt chunk after IDAT if it appears in the end_ptr. | |
651 | Added pnggccrd.c, version of pngvcrd.c Intel assembler for gcc (Greg Roelofs) | |
652 | Reversed the order of trying to write floating-point and fixed-point gAMA. | |
653 | ||
654 | Version 1.0.5k [December 27, 1999] | |
655 | Added many parentheses, e.g., "if (a && b & c)" becomes "if (a && (b & c))" | |
656 | Added png_handle_as_unknown() function (Glenn) | |
657 | Added png_free_chunk_list() function and chunk_list and num_chunk_list members | |
658 | of png_ptr. | |
659 | Eliminated erroneous warnings about multiple sPLT chunks and sPLT-after-PLTE. | |
660 | Fixed a libpng-1.0.5h bug in pngrutil.c that was issuing erroneous warnings | |
661 | about ignoring incorrect gAMA with sRGB (gAMA was in fact not ignored) | |
662 | Added png_free_tRNS(); png_set_tRNS() now malloc's its own trans array (ESR). | |
663 | Define png_get_int_32 when oFFs chunk is supported as well as when pCAL is. | |
664 | Changed type of proflen from png_int_32 to png_uint_32 in png_get_iCCP(). | |
665 | ||
666 | Version 1.0.5l [January 1, 2000] | |
667 | Added functions png_set_read_user_chunk_fn() and png_get_user_chunk_ptr() | |
668 | for setting a callback function to handle unknown chunks and for | |
669 | retrieving the associated user pointer (Glenn). | |
670 | ||
671 | Version 1.0.5m [January 7, 2000] | |
672 | Added high-level functions png_read_png(), png_write_png(), png_free_pixels(). | |
673 | ||
674 | Version 1.0.5n [January 9, 2000] | |
675 | Added png_free_PLTE() function, and modified png_set_PLTE() to malloc its | |
676 | own memory for info_ptr->palette. This makes it safe for the calling | |
677 | application to free its copy of the palette any time after it calls | |
678 | png_set_PLTE(). | |
679 | ||
680 | Version 1.0.5o [January 20, 2000] | |
681 | Cosmetic changes only (removed some trailing blanks and TABs) | |
682 | ||
683 | Version 1.0.5p [January 31, 2000] | |
684 | Renamed pngdll.mak to makefile.bd32 | |
685 | Cosmetic changes in pngtest.c | |
686 | ||
687 | Version 1.0.5q [February 5, 2000] | |
688 | Relocated the makefile.solaris warning about PATH problems. | |
689 | Fixed pngvcrd.c bug by pushing/popping registers in mmxsupport (Bruce Oberg) | |
690 | Revised makefile.gcmmx | |
691 | Added PNG_SETJMP_SUPPORTED, PNG_SETJMP_NOT_SUPPORTED, and PNG_ABORT() macros | |
692 | ||
693 | Version 1.0.5r [February 7, 2000] | |
694 | Removed superfluous prototype for png_get_itxt from png.h | |
695 | Fixed a bug in pngrtran.c that improperly expanded the background color. | |
696 | Return *num_text=0 from png_get_text() when appropriate, and fix documentation | |
697 | of png_get_text() in libpng.txt/libpng.3. | |
698 | ||
699 | Version 1.0.5s [February 18, 2000] | |
700 | Added "png_jmp_env()" macro to pngconf.h, to help people migrate to the | |
701 | new error handler that's planned for the next libpng release, and changed | |
702 | example.c, pngtest.c, and contrib programs to use this macro. | |
703 | Revised some of the DLL-export macros in pngconf.h (Greg Roelofs) | |
704 | Fixed a bug in png_read_png() that caused it to fail to expand some images | |
705 | that it should have expanded. | |
706 | Fixed some mistakes in the unused and undocumented INCH_CONVERSIONS functions | |
707 | in pngget.c | |
708 | Changed the allocation of palette, history, and trans arrays back to | |
709 | the version 1.0.5 method (linking instead of copying) which restores | |
710 | backward compatibility with version 1.0.5. Added some remarks about | |
711 | that in example.c. Added "free_me" member to info_ptr and png_ptr | |
712 | and added png_free_data() function. | |
713 | Updated makefile.linux and makefile.gccmmx to make directories conditionally. | |
714 | Made cosmetic changes to pngasmrd.h | |
715 | Added png_set_rows() and png_get_rows(), for use with png_read|write_png(). | |
716 | Modified png_read_png() to allocate info_ptr->row_pointers only if it | |
717 | hasn't already been allocated. | |
718 | ||
719 | Version 1.0.5t [March 4, 2000] | |
720 | Changed png_jmp_env() migration aiding macro to png_jmpbuf(). | |
721 | Fixed "interlace" typo (should be "interlaced") in contrib/gregbook/read2-x.c | |
722 | Fixed bug with use of PNG_BEFORE_IHDR bit in png_ptr->mode, introduced when | |
723 | PNG_FLAG_HAVE_CHUNK_HEADER was moved into png_ptr->mode in version 1.0.5b | |
724 | Files in contrib/gregbook were revised to use png_jmpbuf() and to select | |
725 | a 24-bit visual if one is available, and to allow abbreviated options. | |
726 | Files in contrib/pngminus were revised to use the png_jmpbuf() macro. | |
727 | Removed spaces in makefile.linux and makefile.gcmmx, introduced in 1.0.5s | |
728 | ||
729 | Version 1.0.5u [March 5, 2000] | |
730 | Simplified the code that detects old png.h in png.c and pngtest.c | |
731 | Renamed png_spalette (_p, _pp) to png_sPLT_t (_tp, _tpp) | |
732 | Increased precision of rgb_to_gray calculations from 8 to 15 bits and | |
733 | added png_set_rgb_to_gray_fixed() function. | |
734 | Added makefile.bc32 (32-bit Borland C++, C mode) | |
735 | ||
736 | Version 1.0.5v [March 11, 2000] | |
737 | Added some parentheses to the png_jmpbuf macro definition. | |
738 | Updated references to the zlib home page, which has moved to freesoftware.com. | |
739 | Corrected bugs in documentation regarding png_read_row() and png_write_row(). | |
740 | Updated documentation of png_rgb_to_gray calculations in libpng.3/libpng.txt. | |
741 | Renamed makefile.borland,turboc3 back to makefile.bor,tc3 as in version 1.0.3, | |
742 | revised borland makefiles; added makefile.ibmvac3 and makefile.gcc (Cosmin) | |
743 | ||
744 | Version 1.0.6 [March 20, 2000] | |
745 | Minor revisions of makefile.bor, libpng.txt, and gregbook/rpng2-win.c | |
746 | Added makefile.sggcc (SGI IRIX with gcc) | |
747 | ||
748 | Version 1.0.6d [April 7, 2000] | |
749 | Changed sprintf() to strcpy() in png_write_sCAL_s() to work without STDIO | |
750 | Added data_length parameter to png_decompress_chunk() function | |
751 | Revised documentation to remove reference to abandoned png_free_chnk functions | |
752 | Fixed an error in png_rgb_to_gray_fixed() | |
753 | Revised example.c, usage of png_destroy_write_struct(). | |
754 | Renamed makefile.ibmvac3 to makefile.ibmc, added libpng.icc IBM project file | |
755 | Added a check for info_ptr->free_me&PNG_FREE_TEXT when freeing text in png.c | |
756 | Simplify png_sig_bytes() function to remove use of non-ISO-C strdup(). | |
757 | ||
758 | Version 1.0.6e [April 9, 2000] | |
759 | Added png_data_freer() function. | |
760 | In the code that checks for over-length tRNS chunks, added check of | |
761 | info_ptr->num_trans as well as png_ptr->num_trans (Matthias Benckmann) | |
762 | Minor revisions of libpng.txt/libpng.3. | |
763 | Check for existing data and free it if the free_me flag is set, in png_set_*() | |
764 | and png_handle_*(). | |
765 | Only define PNG_WEIGHTED_FILTERS_SUPPORTED when PNG_FLOATING_POINT_SUPPORTED | |
766 | is defined. | |
767 | Changed several instances of PNG_NO_CONSOLE_ID to PNG_NO_STDIO in pngrutil.c | |
768 | and mentioned the purposes of the two macros in libpng.txt/libpng.3. | |
769 | ||
770 | Version 1.0.6f [April 14, 2000] | |
771 | Revised png_set_iCCP() and png_set_rows() to avoid prematurely freeing data. | |
772 | Add checks in png_set_text() for NULL members of the input text structure. | |
773 | Revised libpng.txt/libpng.3. | |
774 | Removed superfluous prototype for png_set_iTXt from png.h | |
775 | Removed "else" from pngread.c, after png_error(), and changed "0" to "length". | |
776 | Changed several png_errors about malformed ancillary chunks to png_warnings. | |
777 | ||
778 | Version 1.0.6g [April 24, 2000] | |
779 | Added png_pass-* arrays to pnggccrd.c when PNG_USE_LOCAL_ARRAYS is defined. | |
780 | Relocated paragraph about png_set_background() in libpng.3/libpng.txt | |
781 | and other revisions (Matthias Benckmann) | |
782 | Relocated info_ptr->free_me, png_ptr->free_me, and other info_ptr and | |
783 | png_ptr members to restore binary compatibility with libpng-1.0.5 | |
784 | (breaks compatibility with libpng-1.0.6). | |
785 | ||
786 | Version 1.0.6h [April 24, 2000] | |
787 | Changed shared library so-number pattern from 2.x.y.z to xy.z (this builds | |
788 | libpng.so.10 & libpng.so.10.6h instead of libpng.so.2 & libpng.so.2.1.0.6h) | |
789 | This is a temporary change for test purposes. | |
790 | ||
791 | Version 1.0.6i [May 2, 2000] | |
792 | Rearranged some members at the end of png_info and png_struct, to put | |
793 | unknown_chunks_num and free_me within the original size of the png_structs | |
794 | and free_me, png_read_user_fn, and png_free_fn within the original png_info, | |
795 | because some old applications allocate the structs directly instead of | |
796 | using png_create_*(). | |
797 | Added documentation of user memory functions in libpng.txt/libpng.3 | |
798 | Modified png_read_png so that it will use user_allocated row_pointers | |
799 | if present, unless free_me directs that it be freed, and added description | |
800 | of the use of png_set_rows() and png_get_rows() in libpng.txt/libpng.3. | |
801 | Added PNG_LEGACY_SUPPORTED macro, and #ifdef out all new (since version | |
802 | 1.00) members of png_struct and png_info, to regain binary compatibility | |
803 | when you define this macro. Capabilities lost in this event | |
804 | are user transforms (new in version 1.0.0),the user transform pointer | |
805 | (new in version 1.0.2), rgb_to_gray (new in 1.0.5), iCCP, sCAL, sPLT, | |
806 | the high-level interface, and unknown chunks support (all new in 1.0.6). | |
807 | This was necessary because of old applications that allocate the structs | |
808 | directly as authors were instructed to do in libpng-0.88 and earlier, | |
809 | instead of using png_create_*(). | |
810 | Added modes PNG_CREATED_READ_STRUCT and PNG_CREATED_WRITE_STRUCT which | |
811 | can be used to detect codes that directly allocate the structs, and | |
812 | code to check these modes in png_read_init() and png_write_init() and | |
813 | generate a libpng error if the modes aren't set and PNG_LEGACY_SUPPORTED | |
814 | was not defined. | |
815 | Added makefile.intel and updated makefile.watcom (Pawel Mrochen) | |
816 | ||
817 | Version 1.0.6j [May 3, 2000] | |
818 | Overloaded png_read_init() and png_write_init() with macros that convert | |
819 | calls to png_read_init_2() or png_write_init_2() that check the version | |
820 | and structure sizes. | |
821 | ||
822 | Version 1.0.7beta11 [May 7, 2000] | |
823 | Removed the new PNG_CREATED_READ_STRUCT and PNG_CREATED_WRITE_STRUCT modes | |
824 | which are no longer used. | |
825 | Eliminated the three new members of png_text when PNG_LEGACY_SUPPORTED is | |
826 | defined or when neither PNG_READ_iTXt_SUPPORTED nor PNG_WRITE_iTXT_SUPPORTED | |
827 | is defined. | |
828 | Made PNG_NO_READ|WRITE_iTXt the default setting, to avoid memory | |
829 | overrun when old applications fill the info_ptr->text structure directly. | |
830 | Added PNGAPI macro, and added it to the definitions of all exported functions. | |
831 | Relocated version macro definitions ahead of the includes of zlib.h and | |
832 | pngconf.h in png.h. | |
833 | ||
834 | Version 1.0.7beta12 [May 12, 2000] | |
835 | Revised pngset.c to avoid a problem with expanding the png_debug macro. | |
836 | Deleted some extraneous defines from pngconf.h | |
837 | Made PNG_NO_CONSOLE_IO the default condition when PNG_BUILD_DLL is defined. | |
838 | Use MSC _RPTn debugging instead of fprintf if _MSC_VER is defined. | |
839 | Added png_access_version_number() function. | |
840 | Check for mask&PNG_FREE_CHNK (for TEXT, SCAL, PCAL) in png_free_data(). | |
841 | Expanded libpng.3/libpng.txt information about png_data_freer(). | |
842 | ||
843 | Version 1.0.7beta14 [May 17, 2000] (beta13 was not published) | |
844 | Changed pnggccrd.c and pngvcrd.c to handle bad adaptive filter types as | |
845 | warnings instead of errors, as pngrutil.c does. | |
846 | Set the PNG_INFO_IDAT valid flag in png_set_rows() so png_write_png() | |
847 | will actually write IDATs. | |
848 | Made the default PNG_USE_LOCAL_ARRAYS depend on PNG_DLL instead of WIN32. | |
849 | Make png_free_data() ignore its final parameter except when freeing data | |
850 | that can have multiple instances (text, sPLT, unknowns). | |
851 | Fixed a new bug in png_set_rows(). | |
852 | Removed info_ptr->valid tests from png_free_data(), as in version 1.0.5. | |
853 | Added png_set_invalid() function. | |
854 | Fixed incorrect illustrations of png_destroy_write_struct() in example.c. | |
855 | ||
856 | Version 1.0.7beta15 [May 30, 2000] | |
857 | Revised the deliberately erroneous Linux setjmp code in pngconf.h to produce | |
858 | fewer error messages. | |
859 | Rearranged checks for Z_OK to check the most likely path first in pngpread.c | |
860 | and pngwutil.c. | |
861 | Added checks in pngtest.c for png_create_*() returning NULL, and mentioned | |
862 | in libpng.txt/libpng.3 the need for applications to check this. | |
863 | Changed names of png_default_*() functions in pngtest to pngtest_*(). | |
864 | Changed return type of png_get_x|y_offset_*() from png_uint_32 to png_int_32. | |
865 | Fixed some bugs in the unused PNG_INCH_CONVERSIONS functions in pngget.c | |
866 | Set each pointer to NULL after freeing it in png_free_data(). | |
867 | Worked around a problem in pngconf.h; AIX's strings.h defines an "index" | |
868 | macro that conflicts with libpng's png_color_16.index. (Dimitri | |
869 | Papadapoulos) | |
870 | Added "msvc" directory with MSVC++ project files (Simon-Pierre Cadieux). | |
871 | ||
872 | Version 1.0.7beta16 [June 4, 2000] | |
873 | Revised the workaround of AIX string.h "index" bug. | |
874 | Added a check for overlength PLTE chunk in pngrutil.c. | |
875 | Added PNG_NO_POINTER_INDEXING macro to use array-indexing instead of pointer | |
876 | indexing in pngrutil.c and pngwutil.c to accommodate a buggy compiler. | |
877 | Added a warning in png_decompress_chunk() when it runs out of data, e.g. | |
878 | when it tries to read an erroneous PhotoShop iCCP chunk. | |
879 | Added PNG_USE_DLL macro. | |
880 | Revised the copyright/disclaimer/license notice. | |
881 | Added contrib/msvctest directory | |
882 | ||
883 | Version 1.0.7rc1 [June 9, 2000] | |
884 | Corrected the definition of PNG_TRANSFORM_INVERT_ALPHA (0x0400 not 0x0200) | |
885 | Added contrib/visupng directory (Willem van Schaik) | |
886 | ||
887 | Version 1.0.7beta18 [June 23, 2000] | |
888 | Revised PNGAPI definition, and pngvcrd.c to work with __GCC__ | |
889 | and do not redefine PNGAPI if it is passed in via a compiler directive. | |
890 | Revised visupng/PngFile.c to remove returns from within the Try block. | |
891 | Removed leading underscores from "_PNG_H" and "_PNG_SAVE_BSD_SOURCE" macros. | |
892 | Updated contrib/visupng/cexcept.h to version 1.0.0. | |
893 | Fixed bugs in pngwrite.c and pngwutil.c that prevented writing iCCP chunks. | |
894 | ||
895 | Version 1.0.7rc2 [June 28, 2000] | |
896 | Updated license to include disclaimers required by UCITA. | |
897 | Fixed "DJBPP" typo in pnggccrd.c introduced in beta18. | |
898 | ||
899 | Version 1.0.7 [July 1, 2000] | |
900 | Revised the definition of "trans_values" in libpng.3/libpng.txt | |
901 | ||
902 | Version 1.0.8beta1 [July 8, 2000] | |
903 | Added png_free(png_ptr, key) two places in pngpread.c to stop memory leaks. | |
904 | Changed PNG_NO_STDIO to PNG_NO_CONSOLE_IO, several places in pngrutil.c and | |
905 | pngwutil.c. | |
906 | Changed PNG_EXPORT_VAR to use PNG_IMPEXP, in pngconf.h. | |
907 | Removed unused "#include <assert.h>" from png.c | |
908 | Added WindowsCE support. | |
909 | Revised pnggccrd.c to work with gcc-2.95.2 and in the Cygwin environment. | |
910 | ||
911 | Version 1.0.8beta2 [July 10, 2000] | |
912 | Added project files to the wince directory and made further revisions | |
913 | of pngtest.c, pngrio.c, and pngwio.c in support of WindowsCE. | |
914 | ||
915 | Version 1.0.8beta3 [July 11, 2000] | |
916 | Only set the PNG_FLAG_FREE_TRNS or PNG_FREE_TRNS flag in png_handle_tRNS() | |
917 | for indexed-color input files to avoid potential double-freeing trans array | |
918 | under some unusual conditions; problem was introduced in version 1.0.6f. | |
919 | Further revisions to pngtest.c and files in the wince subdirectory. | |
920 | ||
921 | Version 1.0.8beta4 [July 14, 2000] | |
922 | Added the files pngbar.png and pngbar.jpg to the distribution. | |
923 | Added makefile.cygwin, and cygwin support in pngconf.h | |
924 | Added PNG_NO_ZALLOC_ZERO macro (makes png_zalloc skip zeroing memory) | |
925 | ||
926 | Version 1.0.8rc1 [July 16, 2000] | |
927 | Revised png_debug() macros and statements to eliminate compiler warnings. | |
928 | ||
929 | Version 1.0.8 [July 24, 2000] | |
930 | Added png_flush() in pngwrite.c, after png_write_IEND(). | |
931 | Updated makefile.hpux to build a shared library. | |
932 | ||
933 | Version 1.0.9beta1 [November 10, 2000] | |
934 | Fixed typo in scripts/makefile.hpux | |
935 | Updated makevms.com in scripts and contrib/* and contrib/* (Martin Zinser) | |
936 | Fixed seqence-point bug in contrib/pngminus/png2pnm (Martin Zinser) | |
937 | Changed "cdrom.com" in documentation to "libpng.org" | |
938 | Revised pnggccrd.c to get it all working, and updated makefile.gcmmx (Greg). | |
939 | Changed type of "params" from voidp to png_voidp in png_read|write_png(). | |
940 | Make sure PNGAPI and PNG_IMPEXP are defined in pngconf.h. | |
941 | Revised the 3 instances of WRITEFILE in pngtest.c. | |
942 | Relocated "msvc" and "wince" project subdirectories into "dll" subdirectory. | |
943 | Updated png.rc in dll/msvc project | |
944 | Revised makefile.dec to define and use LIBPATH and INCPATH | |
945 | Increased size of global png_libpng_ver[] array from 12 to 18 chars. | |
946 | Made global png_libpng_ver[], png_sig[] and png_pass_*[] arrays const. | |
947 | Removed duplicate png_crc_finish() from png_handle_bKGD() function. | |
948 | Added a warning when application calls png_read_update_info() multiple times. | |
949 | Revised makefile.cygwin | |
950 | Fixed bugs in iCCP support in pngrutil.c and pngwutil.c. | |
951 | Replaced png_set_empty_plte_permitted() with png_permit_mng_features(). | |
952 | ||
953 | Version 1.0.9beta2 [November 19, 2000] | |
954 | Renamed the "dll" subdirectory "projects". | |
955 | Added borland project files to "projects" subdirectory. | |
956 | Set VS_FF_PRERELEASE and VS_FF_PATCHED flags in msvc/png.rc when appropriate. | |
957 | Add error message in png_set_compression_buffer_size() when malloc fails. | |
958 | ||
959 | Version 1.0.9beta3 [November 23, 2000] | |
960 | Revised PNG_LIBPNG_BUILD_TYPE macro in png.h, used in the msvc project. | |
961 | Removed the png_flush() in pngwrite.c that crashes some applications | |
962 | that don't set png_output_flush_fn. | |
963 | Added makefile.macosx and makefile.aix to scripts directory. | |
964 | ||
965 | Version 1.0.9beta4 [December 1, 2000] | |
966 | Change png_chunk_warning to png_warning in png_check_keyword(). | |
967 | Increased the first part of msg buffer from 16 to 18 in png_chunk_error(). | |
968 | ||
969 | Version 1.0.9beta5 [December 15, 2000] | |
970 | Added support for filter method 64 (for PNG datastreams embedded in MNG). | |
971 | ||
972 | Version 1.0.9beta6 [December 18, 2000] | |
973 | Revised png_set_filter() to accept filter method 64 when appropriate. | |
974 | Added new PNG_HAVE_PNG_SIGNATURE bit to png_ptr->mode and use it to | |
975 | help prevent applications from using MNG features in PNG datastreams. | |
976 | Added png_permit_mng_features() function. | |
977 | Revised libpng.3/libpng.txt. Changed "filter type" to "filter method". | |
978 | ||
979 | Version 1.0.9rc1 [December 23, 2000] | |
980 | Revised test for PNG_HAVE_PNG_SIGNATURE in pngrutil.c | |
981 | Fixed error handling of unknown compression type in png_decompress_chunk(). | |
982 | In pngconf.h, define __cdecl when _MSC_VER is defined. | |
983 | ||
984 | Version 1.0.9beta7 [December 28, 2000] | |
985 | Changed PNG_TEXT_COMPRESSION_zTXt to PNG_COMPRESSION_TYPE_BASE several places. | |
986 | Revised memory management in png_set_hIST and png_handle_hIST in a backward | |
987 | compatible manner. PLTE and tRNS were revised similarly. | |
988 | Revised the iCCP chunk reader to ignore trailing garbage. | |
989 | ||
990 | Version 1.0.9beta8 [January 12, 2001] | |
991 | Moved pngasmrd.h into pngconf.h. | |
992 | Improved handling of out-of-spec garbage iCCP chunks generated by PhotoShop. | |
993 | ||
994 | Version 1.0.9beta9 [January 15, 2001] | |
995 | Added png_set_invalid, png_permit_mng_features, and png_mmx_supported to | |
996 | wince and msvc project module definition files. | |
997 | Minor revision of makefile.cygwin. | |
998 | Fixed bug with progressive reading of narrow interlaced images in pngpread.c | |
999 | ||
1000 | Version 1.0.9beta10 [January 16, 2001] | |
1001 | Do not typedef png_FILE_p in pngconf.h when PNG_NO_STDIO is defined. | |
1002 | Fixed "png_mmx_supported" typo in project definition files. | |
1003 | ||
1004 | Version 1.0.9beta11 [January 19, 2001] | |
1005 | Updated makefile.sgi to make shared library. | |
1006 | Removed png_mmx_support() function and disabled PNG_MNG_FEATURES_SUPPORTED | |
1007 | by default, for the benefit of DLL forward compatibility. These will | |
1008 | be re-enabled in version 1.2.0. | |
1009 | ||
1010 | Version 1.0.9rc2 [January 22, 2001] | |
1011 | Revised cygwin support. | |
1012 | ||
1013 | Version 1.0.9 [January 31, 2001] | |
1014 | Added check of cygwin's ALL_STATIC in pngconf.h | |
1015 | Added "-nommx" parameter to contrib/gregbook/rpng2-win and rpng2-x demos. | |
1016 | ||
1017 | Version 1.0.10beta1 [March 14, 2001] | |
1018 | Revised makefile.dec, makefile.sgi, and makefile.sggcc; added makefile.hpgcc. | |
1019 | Reformatted libpng.3 to eliminate bad line breaks. | |
1020 | Added checks for _mmx_supported in the read_filter_row function of pnggccrd.c | |
1021 | Added prototype for png_mmx_support() near the top of pnggccrd.c | |
1022 | Moved some error checking from png_handle_IHDR to png_set_IHDR. | |
1023 | Added PNG_NO_READ_SUPPORTED and PNG_NO_WRITE_SUPPORTED macros. | |
1024 | Revised png_mmx_support() function in pnggccrd.c | |
1025 | Restored version 1.0.8 PNG_WRITE_EMPTY_PLTE_SUPPORTED behavior in pngwutil.c | |
1026 | Fixed memory leak in contrib/visupng/PngFile.c | |
1027 | Fixed bugs in png_combine_row() in pnggccrd.c and pngvcrd.c (C version) | |
1028 | Added warnings when retrieving or setting gamma=0. | |
1029 | Increased the first part of msg buffer from 16 to 18 in png_chunk_warning(). | |
1030 | ||
1031 | Version 1.0.10rc1 [March 23, 2001] | |
1032 | Changed all instances of memcpy, strcpy, and strlen to png_memcpy, png_strcpy, | |
1033 | and png_strlen. | |
1034 | Revised png_mmx_supported() function in pnggccrd.c to return proper value. | |
1035 | Fixed bug in progressive reading (pngpread.c) with small images (height < 8). | |
1036 | ||
1037 | Version 1.0.10 [March 30, 2001] | |
1038 | Deleted extraneous space (introduced in 1.0.9) from line 42 of makefile.cygwin | |
1039 | Added beos project files (Chris Herborth) | |
1040 | ||
1041 | Version 1.0.11beta1 [April 3, 2001] | |
1042 | Added type casts on several png_malloc() calls (Dimitri Papadapoulos). | |
1043 | Removed a no-longer needed AIX work-around from pngconf.h | |
1044 | Changed several "//" single-line comments to C-style in pnggccrd.c | |
1045 | ||
1046 | Version 1.0.11beta2 [April 11, 2001] | |
1047 | Removed PNGAPI from several functions whose prototypes did not have PNGAPI. | |
1048 | Updated scripts/pngos2.def | |
1049 | ||
1050 | Version 1.0.11beta3 [April 14, 2001] | |
1051 | Added checking the results of many instances of png_malloc() for NULL | |
1052 | ||
1053 | Version 1.0.11beta4 [April 20, 2001] | |
1054 | Undid the changes from version 1.0.11beta3. Added a check for NULL return | |
1055 | from user's malloc_fn(). | |
1056 | Removed some useless type casts of the NULL pointer. | |
1057 | Added makefile.netbsd | |
1058 | ||
1059 | Version 1.0.11 [April 27, 2001] | |
1060 | Revised makefile.netbsd | |
1061 | ||
1062 | Version 1.0.12beta1 [May 14, 2001] | |
1063 | Test for Windows platform in pngconf.h when including malloc.h (Emmanuel Blot) | |
1064 | Updated makefile.cygwin and handling of Cygwin's ALL_STATIC in pngconf.h | |
1065 | Added some never-to-be-executed code in pnggccrd.c to quiet compiler warnings. | |
1066 | Eliminated the png_error about apps using png_read|write_init(). Instead, | |
1067 | libpng will reallocate the png_struct and info_struct if they are too small. | |
1068 | This retains future binary compatibility for old applications written for | |
1069 | libpng-0.88 and earlier. | |
1070 | ||
1071 | Version 1.2.0beta1 [May 6, 2001] | |
1072 | Bumped DLLNUM to 2. | |
1073 | Re-enabled PNG_MNG_FEATURES_SUPPORTED and enabled PNG_ASSEMBLER_CODE_SUPPORTED | |
1074 | by default. | |
1075 | Added runtime selection of MMX features. | |
1076 | Added png_set_strip_error_numbers function and related macros. | |
1077 | ||
1078 | Version 1.2.0beta2 [May 7, 2001] | |
1079 | Finished merging 1.2.0beta1 with version 1.0.11 | |
1080 | Added a check for attempts to read or write PLTE in grayscale PNG datastreams. | |
1081 | ||
1082 | Version 1.2.0beta3 [May 17, 2001] | |
1083 | Enabled user memory function by default. | |
1084 | Modified png_create_struct so it passes user mem_ptr to user memory allocator. | |
1085 | Increased png_mng_features flag from png_byte to png_uint_32. | |
1086 | Bumped shared-library (so-number) and dll-number to 3. | |
1087 | ||
1088 | Version 1.2.0beta4 [June 23, 2001] | |
1089 | Check for missing profile length field in iCCP chunk and free chunk_data | |
1090 | in case of truncated iCCP chunk. | |
1091 | Bumped shared-library number to 3 in makefile.sgi and makefile.sggcc | |
1092 | Bumped dll-number from 2 to 3 in makefile.cygwin | |
1093 | Revised contrib/gregbook/rpng*-x.c to avoid a memory leak and to exit cleanly | |
1094 | if user attempts to run it on an 8-bit display. | |
1095 | Updated contrib/gregbook | |
1096 | Use png_malloc instead of png_zalloc to allocate palette in pngset.c | |
1097 | Updated makefile.ibmc | |
1098 | Added some typecasts to eliminate gcc 3.0 warnings. Changed prototypes | |
1099 | of png_write_oFFS width and height from png_uint_32 to png_int_32. | |
1100 | Updated example.c | |
1101 | Revised prototypes for png_debug_malloc and png_debug_free in pngtest.c | |
1102 | ||
1103 | Version 1.2.0beta5 [August 8, 2001] | |
1104 | Revised contrib/gregbook | |
1105 | Revised makefile.gcmmx | |
1106 | Revised pnggccrd.c to conditionally compile some thread-unsafe code only | |
1107 | when PNG_THREAD_UNSAFE_OK is defined. | |
1108 | Added tests to prevent pngwutil.c from writing a bKGD or tRNS chunk with | |
1109 | value exceeding 2^bit_depth-1 | |
1110 | Revised makefile.sgi and makefile.sggcc | |
1111 | Replaced calls to fprintf(stderr,...) with png_warning() in pnggccrd.c | |
1112 | Removed restriction that do_invert_mono only operate on 1-bit opaque files | |
1113 | ||
1114 | Version 1.2.0 [September 1, 2001] | |
1115 | Changed a png_warning() to png_debug() in pnggccrd.c | |
1116 | Fixed contrib/gregbook/rpng-x.c, rpng2-x.c to avoid crash with XFreeGC(). | |
1117 | ||
1118 | Version 1.2.1beta1 [October 19, 2001] | |
1119 | Revised makefile.std in contrib/pngminus | |
1120 | Include background_1 in png_struct regardless of gamma support. | |
1121 | Revised makefile.netbsd and makefile.macosx, added makefile.darwin. | |
1122 | Revised example.c to provide more details about using row_callback(). | |
1123 | ||
1124 | Version 1.2.1beta2 [October 25, 2001] | |
1125 | Added type cast to each NULL appearing in a function call, except for | |
1126 | WINCE functions. | |
1127 | Added makefile.so9. | |
1128 | ||
1129 | Version 1.2.1beta3 [October 27, 2001] | |
1130 | Removed type casts from all NULLs. | |
1131 | Simplified png_create_struct_2(). | |
1132 | ||
1133 | Version 1.2.1beta4 [November 7, 2001] | |
1134 | Revised png_create_info_struct() and png_creat_struct_2(). | |
1135 | Added error message if png_write_info() was omitted. | |
1136 | Type cast NULLs appearing in function calls when _NO_PROTO or | |
1137 | PNG_TYPECAST_NULL is defined. | |
1138 | ||
1139 | Version 1.2.1rc1 [November 24, 2001] | |
1140 | Type cast NULLs appearing in function calls except when PNG_NO_TYPECAST_NULL | |
1141 | is defined. | |
1142 | Changed typecast of "size" argument to png_size_t in pngmem.c calls to | |
1143 | the user malloc_fn, to agree with the prototype in png.h | |
1144 | Added a pop/push operation to pnggccrd.c, to preserve Eflag (Maxim Sobolev) | |
1145 | Updated makefile.sgi to recognize LIBPATH and INCPATH. | |
1146 | Updated various makefiles so "make clean" does not remove previous major | |
1147 | version of the shared library. | |
1148 | ||
1149 | Version 1.2.1rc2 [December 4, 2001] | |
1150 | Always allocate 256-entry internal palette, hist, and trans arrays, to | |
1151 | avoid out-of-bounds memory reference caused by invalid PNG datastreams. | |
1152 | Added a check for prefix_length > data_length in iCCP chunk handler. | |
1153 | ||
1154 | Version 1.2.1 [December 7, 2001] | |
1155 | None. | |
1156 | ||
1157 | Version 1.2.2beta1 [February 22, 2002] | |
1158 | Fixed a bug with reading the length of iCCP profiles (Larry Reeves). | |
1159 | Revised makefile.linux, makefile.gcmmx, and makefile.sgi to generate | |
1160 | libpng.a, libpng12.so (not libpng.so.3), and libpng12/png.h | |
1161 | Revised makefile.darwin to remove "-undefined suppress" option. | |
1162 | Added checks for gamma and chromaticity values over 21474.83, which exceed | |
1163 | the limit for PNG unsigned 32-bit integers when encoded. | |
1164 | Revised calls to png_create_read_struct() and png_create_write_struct() | |
1165 | for simpler debugging. | |
1166 | Revised png_zalloc() so zlib handles errors (uses PNG_FLAG_MALLOC_NULL_MEM_OK) | |
1167 | ||
1168 | Version 1.2.2beta2 [February 23, 2002] | |
1169 | Check chunk_length and idat_size for invalid (over PNG_MAX_UINT) lengths. | |
1170 | Check for invalid image dimensions in png_get_IHDR. | |
1171 | Added missing "fi;" in the install target of the SGI makefiles. | |
1172 | Added install-static to all makefiles that make shared libraries. | |
1173 | Always do gamma compensation when image is partially transparent. | |
1174 | ||
1175 | Version 1.2.2beta3 [March 7, 2002] | |
1176 | Compute background.gray and background_1.gray even when color_type is RGB | |
1177 | in case image gets reduced to gray later. | |
1178 | Modified shared-library makefiles to install pkgconfig/libpngNN.pc. | |
1179 | Export (with PNGAPI) png_zalloc, png_zfree, and png_handle_as_unknown | |
1180 | Removed unused png_write_destroy_info prototype from png.h | |
1181 | Eliminated incorrect use of width_mmx from pnggccrd.c in pixel_bytes == 8 case | |
1182 | Added install-shared target to all makefiles that make shared libraries. | |
1183 | Stopped a double free of palette, hist, and trans when not using free_me. | |
1184 | Added makefile.32sunu for Sun Ultra 32 and makefile.64sunu for Sun Ultra 64. | |
1185 | ||
1186 | Version 1.2.2beta4 [March 8, 2002] | |
1187 | Compute background.gray and background_1.gray even when color_type is RGB | |
1188 | in case image gets reduced to gray later (Jason Summers). | |
1189 | Relocated a misplaced /bin/rm in the "install-shared" makefile targets | |
1190 | Added PNG_1_0_X macro which can be used to build a 1.0.x-compatible library. | |
1191 | ||
1192 | Version 1.2.2beta5 [March 26, 2002] | |
1193 | Added missing PNGAPI to several function definitions. | |
1194 | Check for invalid bit_depth or color_type in png_get_IHDR(), and | |
1195 | check for missing PLTE or IHDR in png_push_read_chunk() (Matthias Clasen). | |
1196 | Revised iTXt support to accept NULL for lang and lang_key. | |
1197 | Compute gamma for color components of background even when color_type is gray. | |
1198 | Changed "()" to "{}" in scripts/libpng.pc.in. | |
1199 | Revised makefiles to put png.h and pngconf.h only in $prefix/include/libpngNN | |
1200 | Revised makefiles to make symlink to libpng.so.NN in addition to libpngNN.so | |
1201 | ||
1202 | Version 1.2.2beta6 [March 31, 2002] | |
1203 | ||
1204 | Version 1.0.13beta1 [March 31, 2002] | |
1205 | Prevent png_zalloc() from trying to memset memory that it failed to acquire. | |
1206 | Add typecasts of PNG_MAX_UINT in pngset_cHRM_fixed() (Matt Holgate). | |
1207 | Ensure that the right function (user or default) is used to free the | |
1208 | png_struct after an error in png_create_read_struct_2(). | |
1209 | ||
1210 | Version 1.2.2rc1 [April 7, 2002] | |
1211 | ||
1212 | Version 1.0.13rc1 [April 7, 2002] | |
1213 | Save the ebx register in pnggccrd.c (Sami Farin) | |
1214 | Add "mem_ptr = png_ptr->mem_ptr" in png_destroy_write_struct() (Paul Gardner). | |
1215 | Updated makefiles to put headers in include/libpng and remove old include/*.h. | |
1216 | ||
1217 | Version 1.2.2 [April 15, 2002] | |
1218 | ||
1219 | Version 1.0.13 [April 15, 2002] | |
1220 | Revised description of png_set_filter() in libpng.3/libpng.txt. | |
1221 | Revised makefile.netbsd and added makefile.neNNbsd and makefile.freebsd | |
1222 | ||
1223 | Version 1.0.13patch01 [April 17, 2002] | |
1224 | ||
1225 | Version 1.2.2patch01 [April 17, 2002] | |
1226 | Changed ${PNGMAJ}.${PNGVER} bug to ${PNGVER} in makefile.sgi and | |
1227 | makefile.sggcc | |
1228 | Fixed VER -> PNGVER typo in makefile.macosx and added install-static to | |
1229 | install | |
1230 | Added install: target to makefile.32sunu and makefile.64sunu | |
1231 | ||
1232 | Version 1.0.13patch03 [April 18, 2002] | |
1233 | ||
1234 | Version 1.2.2patch03 [April 18, 2002] | |
1235 | Revised 15 makefiles to link libpng.a to libpngNN.a and the include libpng | |
1236 | subdirectory to libpngNN subdirectory without the full pathname. | |
1237 | Moved generation of libpng.pc from "install" to "all" in 15 makefiles. | |
1238 | ||
1239 | Version 1.2.3rc1 [April 28, 2002] | |
1240 | Added install-man target to 15 makefiles (Dimitri Papadopolous-Orfanos). | |
1241 | Added $(DESTDIR) feature to 24 makefiles (Tim Mooney) | |
1242 | Fixed bug with $prefix, should be $(prefix) in makefile.hpux. | |
1243 | Updated cygwin-specific portion of pngconf.h and revised makefile.cygwin | |
1244 | Added a link from libpngNN.pc to libpng.pc in 15 makefiles. | |
1245 | Added links from include/libpngNN/*.h to include/*.h in 24 makefiles. | |
1246 | Revised makefile.darwin to make relative links without full pathname. | |
1247 | Added setjmp() at the end of png_create_*_struct_2() in case user forgets | |
1248 | to put one in their application. | |
1249 | Restored png_zalloc() and png_zfree() prototypes to version 1.2.1 and | |
1250 | removed them from module definition files. | |
1251 | ||
1252 | Version 1.2.3rc2 [May 1, 2002] | |
1253 | Fixed bug in reporting number of channels in pngget.c and pngset.c, | |
1254 | that was introduced in version 1.2.2beta5. | |
1255 | Exported png_zalloc(), png_zfree(), png_default_read(), png_default_write(), | |
1256 | png_default_flush(), and png_push_fill_buffer() and included them in | |
1257 | module definition files. | |
1258 | Added "libpng.pc" dependency to the "install-shared" target in 15 makefiles. | |
1259 | ||
1260 | Version 1.2.3rc3 [May 1, 2002] | |
1261 | Revised prototype for png_default_flush() | |
1262 | Remove old libpng.pc and libpngNN.pc before installing new ones. | |
1263 | ||
1264 | Version 1.2.3rc4 [May 2, 2002] | |
1265 | Typos in *.def files (png_default_read|write -> png_default_read|write_data) | |
1266 | In makefiles, changed rm libpng.NN.pc to rm libpngNN.pc | |
1267 | Added libpng-config and libpngNN-config and modified makefiles to install | |
1268 | them. | |
1269 | Changed $(MANPATH) to $(DESTDIR)$(MANPATH) in makefiles | |
1270 | Added "Win32 DLL VB" configuration to projects/msvc/libpng.dsp | |
1271 | ||
1272 | Version 1.2.3rc5 [May 11, 2002] | |
1273 | Changed "error" and "message" in prototypes to "error_message" and | |
1274 | "warning_message" to avoid namespace conflict. | |
1275 | Revised 15 makefiles to build libpng-config from libpng-config-*.in | |
1276 | Once more restored png_zalloc and png_zfree to regular nonexported form. | |
1277 | Restored png_default_read|write_data, png_default_flush, png_read_fill_buffer | |
1278 | to nonexported form, but with PNGAPI, and removed them from module def | |
1279 | files. | |
1280 | ||
1281 | Version 1.2.3rc6 [May 14, 2002] | |
1282 | Removed "PNGAPI" from png_zalloc() and png_zfree() in png.c | |
1283 | Changed "Gz" to "Gd" in projects/msvc/libpng.dsp and zlib.dsp. | |
1284 | Removed leftover libpng-config "sed" script from four makefiles. | |
1285 | Revised libpng-config creating script in 16 makefiles. | |
1286 | ||
1287 | Version 1.2.3 [May 22, 2002] | |
1288 | Revised libpng-config target in makefile.cygwin. | |
1289 | Removed description of png_set_mem_fn() from documentation. | |
1290 | Revised makefile.freebsd. | |
1291 | Minor cosmetic changes to 15 makefiles, e.g., $(DI) = $(DESTDIR)/$(INCDIR). | |
1292 | Revised projects/msvc/README.txt | |
1293 | Changed -lpng to -lpngNN in LDFLAGS in several makefiles. | |
1294 | ||
1295 | Version 1.2.4beta1 [May 24, 2002] | |
1296 | Added libpng.pc and libpng-config to "all:" target in 16 makefiles. | |
1297 | Fixed bug in 16 makefiles: $(DESTDIR)/$(LIBPATH) to $(DESTDIR)$(LIBPATH) | |
1298 | Added missing "\" before closing double quote in makefile.gcmmx. | |
1299 | Plugged various memory leaks; added png_malloc_warn() and png_set_text_2() | |
1300 | functions. | |
1301 | ||
1302 | Version 1.2.4beta2 [June 25, 2002] | |
1303 | Plugged memory leak of png_ptr->current_text (Matt Holgate). | |
1304 | Check for buffer overflow before reading CRC in pngpread.c (Warwick Allison) | |
1305 | Added -soname to the loader flags in makefile.dec, makefile.sgi, and | |
1306 | makefile.sggcc. | |
1307 | Added "test-installed" target to makefile.linux, makefile.gcmmx, | |
1308 | makefile.sgi, and makefile.sggcc. | |
1309 | ||
1310 | Version 1.2.4beta3 [June 28, 2002] | |
1311 | Plugged memory leak of row_buf in pngtest.c when there is a png_error(). | |
1312 | Detect buffer overflow in pngpread.c when IDAT is corrupted with extra data. | |
1313 | Added "test-installed" target to makefile.32sunu, makefile.64sunu, | |
1314 | makefile.beos, makefile.darwin, makefile.dec, makefile.macosx, | |
1315 | makefile.solaris, makefile.hpux, makefile.hpgcc, and makefile.so9. | |
1316 | ||
1317 | Version 1.2.4rc1 and 1.0.14rc1 [July 2, 2002] | |
1318 | Added "test-installed" target to makefile.cygwin and makefile.sco. | |
1319 | Revised pnggccrd.c to be able to back out version 1.0.x via PNG_1_0_X macro. | |
1320 | ||
1321 | Version 1.2.4 and 1.0.14 [July 8, 2002] | |
1322 | Changed png_warning() to png_error() when width is too large to process. | |
1323 | ||
1324 | Version 1.2.4patch01 [July 20, 2002] | |
1325 | Revised makefile.cygwin to use DLL number 12 instead of 13. | |
1326 | ||
1327 | Version 1.2.5beta1 [August 6, 2002] | |
1328 | Added code to contrib/gregbook/readpng2.c to ignore unused chunks. | |
1329 | Replaced toucan.png in contrib/gregbook (it has been corrupt since 1.0.11) | |
1330 | Removed some stray *.o files from contrib/gregbook. | |
1331 | Changed png_error() to png_warning() about "Too much data" in pngpread.c | |
1332 | and about "Extra compressed data" in pngrutil.c. | |
1333 | Prevent png_ptr->pass from exceeding 7 in png_push_finish_row(). | |
1334 | Updated makefile.hpgcc | |
1335 | Updated png.c and pnggccrd.c handling of return from png_mmx_support() | |
1336 | ||
1337 | Version 1.2.5beta2 [August 15, 2002] | |
1338 | Only issue png_warning() about "Too much data" in pngpread.c when avail_in | |
1339 | is nonzero. | |
1340 | Updated makefiles to install a separate libpng.so.3 with its own rpath. | |
1341 | ||
1342 | Version 1.2.5rc1 and 1.0.15rc1 [August 24, 2002] | |
1343 | Revised makefiles to not remove previous minor versions of shared libraries. | |
1344 | ||
1345 | Version 1.2.5rc2 and 1.0.15rc2 [September 16, 2002] | |
1346 | Revised 13 makefiles to remove "-lz" and "-L$(ZLIBLIB)", etc., from shared | |
1347 | library loader directive. | |
1348 | Added missing "$OBJSDLL" line to makefile.gcmmx. | |
1349 | Added missing "; fi" to makefile.32sunu. | |
1350 | ||
1351 | Version 1.2.5rc3 and 1.0.15rc3 [September 18, 2002] | |
1352 | Revised libpng-config script. | |
1353 | ||
1354 | Version 1.2.5 and 1.0.15 [October 3, 2002] | |
1355 | Revised makefile.macosx, makefile.darwin, makefile.hpgcc, and makefile.hpux, | |
1356 | and makefile.aix. | |
1357 | Relocated two misplaced PNGAPI lines in pngtest.c | |
1358 | ||
1359 | Version 1.2.6beta1 [October 22, 2002] | |
1360 | Commented out warning about uninitialized mmx_support in pnggccrd.c. | |
1361 | Changed "IBMCPP__" flag to "__IBMCPP__" in pngconf.h. | |
1362 | Relocated two more misplaced PNGAPI lines in pngtest.c | |
1363 | Fixed memory overrun bug in png_do_read_filler() with 16-bit datastreams, | |
1364 | introduced in version 1.0.2. | |
1365 | Revised makefile.macosx, makefile.dec, makefile.aix, and makefile.32sunu. | |
1366 | ||
1367 | Version 1.2.6beta2 [November 1, 2002] | |
1368 | Added libpng-config "--ldopts" output. | |
1369 | Added "AR=ar" and "ARFLAGS=rc" and changed "ar rc" to "$(AR) $(ARFLAGS)" | |
1370 | in makefiles. | |
1371 | ||
1372 | Version 1.2.6beta3 [July 18, 2004] | |
1373 | Reverted makefile changes from version 1.2.6beta2 and some of the changes | |
1374 | from version 1.2.6beta1; these will be postponed until version 1.2.7. | |
1375 | Version 1.2.6 is going to be a simple bugfix release. | |
1376 | Changed the one instance of "ln -sf" to "ln -f -s" in each Sun makefile. | |
1377 | Fixed potential overrun in pngerror.c by using strncpy instead of memcpy. | |
1378 | Added "#!/bin/sh" at the top of configure, for recognition of the | |
1379 | 'x' flag under Cygwin (Cosmin). | |
1380 | Optimized vacuous tests that silence compiler warnings, in png.c (Cosmin). | |
1381 | Added support for PNG_USER_CONFIG, in pngconf.h (Cosmin). | |
1382 | Fixed the special memory handler for Borland C under DOS, in pngmem.c | |
1383 | (Cosmin). | |
1384 | Removed some spurious assignments in pngrutil.c (Cosmin). | |
1385 | Replaced 65536 with 65536L, and 0xffff with 0xffffL, to silence warnings | |
1386 | on 16-bit platforms (Cosmin). | |
1387 | Enclosed shift op expressions in parentheses, to silence warnings (Cosmin). | |
1388 | Used proper type png_fixed_point, to avoid problems on 16-bit platforms, | |
1389 | in png_handle_sRGB() (Cosmin). | |
1390 | Added compression_type to png_struct, and optimized the window size | |
1391 | inside the deflate stream (Cosmin). | |
1392 | Fixed definition of isnonalpha(), in pngerror.c and pngrutil.c (Cosmin). | |
1393 | Fixed handling of unknown chunks that come after IDAT (Cosmin). | |
1394 | Allowed png_error() and png_warning() to work even if png_ptr == NULL | |
1395 | (Cosmin). | |
1396 | Replaced row_info->rowbytes with row_bytes in png_write_find_filter() | |
1397 | (Cosmin). | |
1398 | Fixed definition of PNG_LIBPNG_VER_DLLNUM (Simon-Pierre). | |
1399 | Used PNG_LIBPNG_VER and PNG_LIBPNG_VER_STRING instead of the hardcoded | |
1400 | values in png.c (Simon-Pierre, Cosmin). | |
1401 | Initialized png_libpng_ver[] with PNG_LIBPNG_VER_STRING (Simon-Pierre). | |
1402 | Replaced PNG_LIBPNG_VER_MAJOR with PNG_LIBPNG_VER_DLLNUM in png.rc | |
1403 | (Simon-Pierre). | |
1404 | Moved the definition of PNG_HEADER_VERSION_STRING near the definitions | |
1405 | of the other PNG_LIBPNG_VER_... symbols in png.h (Cosmin). | |
1406 | Relocated #ifndef PNGAPI guards in pngconf.h (Simon-Pierre, Cosmin). | |
1407 | Updated scripts/makefile.vc(a)win32 (Cosmin). | |
1408 | Updated the MSVC project (Simon-Pierre, Cosmin). | |
1409 | Updated the Borland C++ Builder project (Cosmin). | |
1410 | Avoided access to asm_flags in pngvcrd.c, if PNG_1_0_X is defined (Cosmin). | |
1411 | Commented out warning about uninitialized mmx_support in pngvcrd.c (Cosmin). | |
1412 | Removed scripts/makefile.bd32 and scripts/pngdef.pas (Cosmin). | |
1413 | Added extra guard around inclusion of Turbo C memory headers, in pngconf.h | |
1414 | (Cosmin). | |
1415 | Renamed projects/msvc/ to projects/visualc6/, and projects/borland/ to | |
1416 | projects/cbuilder5/ (Cosmin). | |
1417 | Moved projects/visualc6/png32ms.def to scripts/pngw32.def, | |
1418 | and projects/visualc6/png.rc to scripts/pngw32.rc (Cosmin). | |
1419 | Added projects/visualc6/pngtest.dsp; removed contrib/msvctest/ (Cosmin). | |
1420 | Changed line endings to DOS style in cbuilder5 and visualc6 files, even | |
1421 | in the tar.* distributions (Cosmin). | |
1422 | Updated contrib/visupng/VisualPng.dsp (Cosmin). | |
1423 | Updated contrib/visupng/cexcept.h to version 2.0.0 (Cosmin). | |
1424 | Added a separate distribution with "configure" and supporting files (Junichi). | |
1425 | ||
1426 | Version 1.2.6beta4 [July 28, 2004] | |
1427 | Added user ability to change png_size_t via a PNG_SIZE_T macro. | |
1428 | Added png_sizeof() and png_convert_size() functions. | |
1429 | Added PNG_SIZE_MAX (maximum value of a png_size_t variable. | |
1430 | Added check in png_malloc_default() for (size_t)size != (png_uint_32)size | |
1431 | which would indicate an overflow. | |
1432 | Changed sPLT failure action from png_error to png_warning and abandon chunk. | |
1433 | Changed sCAL and iCCP failures from png_error to png_warning and abandon. | |
1434 | Added png_get_uint_31(png_ptr, buf) function. | |
1435 | Added PNG_UINT_32_MAX macro. | |
1436 | Renamed PNG_MAX_UINT to PNG_UINT_31_MAX. | |
1437 | Made png_zalloc() issue a png_warning and return NULL on potential | |
1438 | overflow. | |
1439 | Turn on PNG_NO_ZALLOC_ZERO by default in version 1.2.x | |
1440 | Revised "clobber list" in pnggccrd.c so it will compile under gcc-3.4. | |
1441 | Revised Borland portion of png_malloc() to return NULL or issue | |
1442 | png_error() according to setting of PNG_FLAG_MALLOC_NULL_MEM_OK. | |
1443 | Added PNG_NO_SEQUENTIAL_READ_SUPPORTED macro to conditionally remove | |
1444 | sequential read support. | |
1445 | Added some "#if PNG_WRITE_SUPPORTED" blocks. | |
1446 | Added #ifdef to remove some redundancy in png_malloc_default(). | |
1447 | Use png_malloc instead of png_zalloc to allocate the pallete. | |
1448 | ||
1449 | Version 1.0.16rc1 and 1.2.6rc1 [August 4, 2004] | |
1450 | Fixed buffer overflow vulnerability in png_handle_tRNS() | |
1451 | Fixed integer arithmetic overflow vulnerability in png_read_png(). | |
1452 | Fixed some harmless bugs in png_handle_sBIT, etc, that would cause | |
1453 | duplicate chunk types to go undetected. | |
1454 | Fixed some timestamps in the -config version | |
1455 | Rearranged order of processing of color types in png_handle_tRNS(). | |
1456 | Added ROWBYTES macro to calculate rowbytes without integer overflow. | |
1457 | Updated makefile.darwin and removed makefile.macosx from scripts directory. | |
1458 | Imposed default one million column, one-million row limits on the image | |
1459 | dimensions, and added png_set_user_limits() function to override them. | |
1460 | Revised use of PNG_SET_USER_LIMITS_SUPPORTED macro. | |
1461 | Fixed wrong cast of returns from png_get_user_width|height_max(). | |
1462 | Changed some "keep the compiler happy" from empty statements to returns, | |
1463 | Revised libpng.txt to remove 1.2.x stuff from the 1.0.x distribution | |
1464 | ||
1465 | Version 1.0.16rc2 and 1.2.6rc2 [August 7, 2004] | |
1466 | Revised makefile.darwin and makefile.solaris. Removed makefile.macosx. | |
1467 | Revised pngtest's png_debug_malloc() to use png_malloc() instead of | |
1468 | png_malloc_default() which is not supposed to be exported. | |
1469 | Fixed off-by-one error in one of the conversions to PNG_ROWBYTES() in | |
1470 | pngpread.c. Bug was introduced in 1.2.6rc1. | |
1471 | Fixed bug in RGB to RGBX transformation introduced in 1.2.6rc1. | |
1472 | Fixed old bug in RGB to Gray transformation. | |
1473 | Fixed problem with 64-bit compilers by casting arguments to abs() | |
1474 | to png_int_32. | |
1475 | Changed "ln -sf" to "ln -f -s" in three makefiles (solaris, sco, so9). | |
1476 | Changed "HANDLE_CHUNK_*" to "PNG_HANDLE_CHUNK_*" (Cosmin) | |
1477 | Added "-@/bin/rm -f $(DL)/$(LIBNAME).so.$(PNGMAJ)" to 15 *NIX makefiles. | |
1478 | Added code to update the row_info->colortype in png_do_read_filler() (MSB). | |
1479 | ||
1480 | Version 1.0.16rc3 and 1.2.6rc3 [August 9, 2004] | |
1481 | Eliminated use of "abs()" in testing cHRM and gAMA values, to avoid | |
1482 | trouble with some 64-bit compilers. Created PNG_OUT_OF_RANGE() macro. | |
1483 | Revised documentation of png_set_keep_unknown_chunks(). | |
1484 | Check handle_as_unknown status in pngpread.c, as in pngread.c previously. | |
1485 | Moved "PNG_HANDLE_CHUNK_*" macros out of PNG_INTERNAL section of png.h | |
1486 | Added "rim" definitions for CONST4 and CONST6 in pnggccrd.c | |
1487 | ||
1488 | Version 1.0.16rc4 and 1.2.6rc4 [August 10, 2004] | |
1489 | Fixed mistake in pngtest.c introduced in 1.2.6rc2 (declaration of | |
1490 | "pinfo" was out of place). | |
1491 | ||
1492 | Version 1.0.16rc5 and 1.2.6rc5 [August 10, 2004] | |
1493 | Moved "PNG_HANDLE_CHUNK_*" macros out of PNG_ASSEMBLER_CODE_SUPPORTED | |
1494 | section of png.h where they were inadvertently placed in version rc3. | |
1495 | ||
1496 | Version 1.2.6 and 1.0.16 [August 15, 2004] | |
1497 | Revised pngtest so memory allocation testing is only done when PNG_DEBUG==1. | |
1498 | ||
1499 | Version 1.2.7beta1 [August 26, 2004] | |
1500 | Removed unused pngasmrd.h file. | |
1501 | Removed references to uu.net for archived files. Added references to | |
1502 | PNG Spec (second edition) and the PNG ISO/IEC Standard. | |
1503 | Added "test-dd" target in 15 makefiles, to run pngtest in DESTDIR. | |
1504 | Fixed bug with "optimized window size" in the IDAT datastream, that | |
1505 | causes libpng to write PNG files with incorrect zlib header bytes. | |
1506 | ||
1507 | Version 1.2.7beta2 [August 28, 2004] | |
1508 | Fixed bug with sCAL chunk and big-endian machines (David Munro). | |
1509 | Undid new code added in 1.2.6rc2 to update the color_type in | |
1510 | png_set_filler(). | |
1511 | Added png_set_add_alpha() that updates color type. | |
1512 | ||
1513 | Version 1.0.17rc1 and 1.2.7rc1 [September 4, 2004] | |
1514 | Revised png_set_strip_filler() to not remove alpha if color_type has alpha. | |
1515 | ||
1516 | Version 1.2.7 and 1.0.17 [September 12, 2004] | |
1517 | Added makefile.hp64 | |
1518 | Changed projects/msvc/png32ms.def to scripts/png32ms.def in makefile.cygwin | |
1519 | ||
1520 | Version 1.2.8beta1 [November 1, 2004] | |
1521 | Fixed bug in png_text_compress() that would fail to complete a large block. | |
1522 | Fixed bug, introduced in libpng-1.2.7, that overruns a buffer during | |
1523 | strip alpha operation in png_do_strip_filler(). | |
1524 | Added PNG_1_2_X definition in pngconf.h | |
1525 | Use #ifdef to comment out png_info_init in png.c and png_read_init in | |
1526 | pngread.c (as of 1.3.0) | |
1527 | ||
1528 | Version 1.2.8beta2 [November 2, 2004] | |
1529 | Reduce color_type to a nonalpha type after strip alpha operation in | |
1530 | png_do_strip_filler(). | |
1531 | ||
1532 | Version 1.2.8beta3 [November 3, 2004] | |
1533 | Revised definitions of PNG_MAX_UINT_32, PNG_MAX_SIZE, and PNG_MAXSUM | |
1534 | ||
1535 | Version 1.2.8beta4 [November 12, 2004] | |
1536 | Fixed (again) definition of PNG_LIBPNG_VER_DLLNUM in png.h (Cosmin). | |
1537 | Added PNG_LIBPNG_BUILD_PRIVATE in png.h (Cosmin). | |
1538 | Set png_ptr->zstream.data_type to Z_BINARY, to avoid unnecessary detection | |
1539 | of data type in deflate (Cosmin). | |
1540 | Deprecated but continue to support SPECIALBUILD and PRIVATEBUILD in favor of | |
1541 | PNG_LIBPNG_BUILD_SPECIAL_STRING and PNG_LIBPNG_BUILD_PRIVATE_STRING. | |
1542 | ||
1543 | Version 1.2.8beta5 [November 20, 2004] | |
1544 | Use png_ptr->flags instead of png_ptr->transformations to pass | |
1545 | PNG_STRIP_ALPHA info to png_do_strip_filler(), to preserve ABI | |
1546 | compatibility. | |
1547 | Revised handling of SPECIALBUILD, PRIVATEBUILD, | |
1548 | PNG_LIBPNG_BUILD_SPECIAL_STRING and PNG_LIBPNG_BUILD_PRIVATE_STRING. | |
1549 | ||
1550 | Version 1.2.8rc1 [November 24, 2004] | |
1551 | Moved handling of BUILD macros from pngconf.h to png.h | |
1552 | Added definition of PNG_LIBPNG_BASE_TYPE in png.h, inadvertently | |
1553 | omitted from beta5. | |
1554 | Revised scripts/pngw32.rc | |
1555 | Despammed mailing addresses by masking "@" with "at". | |
1556 | Inadvertently installed a supposedly faster test version of pngrutil.c | |
1557 | ||
1558 | Version 1.2.8rc2 [November 26, 2004] | |
1559 | Added two missing "\" in png.h | |
1560 | Change tests in pngread.c and pngpread.c to | |
1561 | if (png_ptr->transformations || (png_ptr->flags&PNG_FLAG_STRIP_ALPHA)) | |
1562 | png_do_read_transformations(png_ptr); | |
1563 | ||
1564 | Version 1.2.8rc3 [November 28, 2004] | |
1565 | Reverted pngrutil.c to version libpng-1.2.8beta5. | |
1566 | Added scripts/makefile.elf with supporting code in pngconf.h for symbol | |
1567 | versioning (John Bowler). | |
1568 | ||
1569 | Version 1.2.8rc4 [November 29, 2004] | |
1570 | Added projects/visualc7 (Simon-pierre). | |
1571 | ||
1572 | Version 1.2.8rc5 [November 29, 2004] | |
1573 | Fixed new typo in scripts/pngw32.rc | |
1574 | ||
1575 | Version 1.2.8 [December 3, 2004] | |
1576 | Removed projects/visualc7, added projects/visualc71. | |
1577 | ||
1578 | Version 1.2.9beta1 [February 21, 2006] | |
1579 | Initialized some structure members in pngwutil.c to avoid gcc-4.0.0 complaints | |
1580 | Revised man page and libpng.txt to make it clear that one should not call | |
1581 | png_read_end or png_write_end after png_read_png or png_write_png. | |
1582 | Updated references to png-mng-implement mailing list. | |
1583 | Fixed an incorrect typecast in pngrutil.c | |
1584 | Added PNG_NO_READ_SUPPORTED conditional for making a write-only library. | |
1585 | Added PNG_NO_WRITE_INTERLACING_SUPPORTED conditional. | |
1586 | Optimized alpha-inversion loops in pngwtran.c | |
1587 | Moved test for nonzero gamma outside of png_build_gamma_table() in pngrtran.c | |
1588 | Make sure num_trans is <= 256 before copying data in png_set_tRNS(). | |
1589 | Make sure num_palette is <= 256 before copying data in png_set_PLTE(). | |
1590 | Interchanged order of write_swap_alpha and write_invert_alpha transforms. | |
1591 | Added parentheses in the definition of PNG_LIBPNG_BUILD_TYPE (Cosmin). | |
1592 | Optimized zlib window flag (CINFO) in contrib/pngsuite/*.png (Cosmin). | |
1593 | Updated scripts/makefile.bc32 for Borland C++ 5.6 (Cosmin). | |
1594 | Exported png_get_uint_32, png_save_uint_32, png_get_uint_16, png_save_uint_16, | |
1595 | png_get_int_32, png_save_int_32, png_get_uint_31 (Cosmin). | |
1596 | Added type cast (png_byte) in png_write_sCAL() (Cosmin). | |
1597 | Fixed scripts/makefile.cygwin (Christian Biesinger, Cosmin). | |
1598 | Default iTXt support was inadvertently enabled. | |
1599 | ||
1600 | Version 1.2.9beta2 [February 21, 2006] | |
1601 | Check for png_rgb_to_gray and png_gray_to_rgb read transformations before | |
1602 | checking for png_read_dither in pngrtran.c | |
1603 | Revised checking of chromaticity limits to accommodate extended RGB | |
1604 | colorspace (John Denker). | |
1605 | Changed line endings in some of the project files to CRLF, even in the | |
1606 | "Unix" tar distributions (Cosmin). | |
1607 | Made png_get_int_32 and png_save_int_32 always available (Cosmin). | |
1608 | Updated scripts/pngos2.def, scripts/pngw32.def and projects/wince/png32ce.def | |
1609 | with the newly exported functions. | |
1610 | Eliminated distributions without the "configure" script. | |
1611 | Updated INSTALL instructions. | |
1612 | ||
1613 | Version 1.2.9beta3 [February 24, 2006] | |
1614 | Fixed CRCRLF line endings in contrib/visupng/VisualPng.dsp | |
1615 | Made libpng.pc respect EXEC_PREFIX (D. P. Kreil, J. Bowler) | |
1616 | Removed reference to pngasmrd.h from Makefile.am | |
1617 | Renamed CHANGES to ChangeLog. | |
1618 | Renamed LICENSE to COPYING. | |
1619 | Renamed ANNOUNCE to NEWS. | |
1620 | Created AUTHORS file. | |
1621 | ||
1622 | Version 1.2.9beta4 [March 3, 2006] | |
1623 | Changed definition of PKGCONFIG from $prefix/lib to $libdir in configure.ac | |
1624 | Reverted to filenames LICENSE and ANNOUNCE; removed AUTHORS and COPYING. | |
1625 | Removed newline from the end of some error and warning messages. | |
1626 | Removed test for sqrt() from configure.ac and configure. | |
1627 | Made swap tables in pngtrans.c PNG_CONST (Carlo Bramix). | |
1628 | Disabled default iTXt support that was inadvertently enabled in | |
1629 | libpng-1.2.9beta1. | |
1630 | Added "OS2" to list of systems that don't need underscores, in pnggccrd.c | |
1631 | Removed libpng version and date from *.c files. | |
1632 | ||
1633 | Version 1.2.9beta5 [March 4, 2006] | |
1634 | Removed trailing blanks from source files. | |
1635 | Put version and date of latest change in each source file, and changed | |
1636 | copyright year accordingly. | |
1637 | More cleanup of configure.ac, Makefile.am, and associated scripts. | |
1638 | Restored scripts/makefile.elf which was inadvertently deleted. | |
1639 | ||
1640 | Version 1.2.9beta6 [March 6, 2006] | |
1641 | Fixed typo (RELEASE) in configuration files. | |
1642 | ||
1643 | Version 1.2.9beta7 [March 7, 2006] | |
1644 | Removed libpng.vers and libpng.sym from libpng12_la_SOURCES in Makefile.am | |
1645 | Fixed inconsistent #ifdef's around png_sig_bytes() and png_set_sCAL_s() | |
1646 | in png.h. | |
1647 | Updated makefile.elf as suggested by debian. | |
1648 | Made cosmetic changes to some makefiles, adding LN_SF and other macros. | |
1649 | Made some makefiles accept "exec_prefix". | |
1650 | ||
1651 | Version 1.2.9beta8 [March 9, 2006] | |
1652 | Fixed some "#if defined (..." which should be "#if defined(..." | |
1653 | Bug introduced in libpng-1.2.8. | |
1654 | Fixed inconsistency in definition of png_default_read_data() | |
1655 | Restored blank that was lost from makefile.sggcc "clean" target in beta7. | |
1656 | Revised calculation of "current" and "major" for irix in ltmain.sh | |
1657 | Changed "mkdir" to "MKDIR_P" in some makefiles. | |
1658 | Separated PNG_EXPAND and PNG_EXPAND_tRNS. | |
1659 | Added png_set_expand_gray_1_2_4_to_8() and deprecated | |
1660 | png_set_gray_1_2_4_to_8() which also expands tRNS to alpha. | |
1661 | ||
1662 | Version 1.2.9beta9 [March 10, 2006] | |
1663 | Include "config.h" in pngconf.h when available. | |
1664 | Added some checks for NULL png_ptr or NULL info_ptr (timeless) | |
1665 | ||
1666 | Version 1.2.9beta10 [March 20, 2006] | |
1667 | Removed extra CR from contrib/visualpng/VisualPng.dsw (Cosmin) | |
1668 | Made pnggccrd.c PIC-compliant (Christian Aichinger). | |
1669 | Added makefile.mingw (Wolfgang Glas). | |
1670 | Revised pngconf.h MMX checking. | |
1671 | ||
1672 | Version 1.2.9beta11 [March 22, 2006] | |
1673 | Fixed out-of-order declaration in pngwrite.c that was introduced in beta9 | |
1674 | Simplified some makefiles by using LIBSO, LIBSOMAJ, and LIBSOVER macros. | |
1675 | ||
1676 | Version 1.2.9rc1 [March 31, 2006] | |
1677 | Defined PNG_USER_PRIVATEBUILD when including "pngusr.h" (Cosmin). | |
1678 | Removed nonsensical assertion check from pngtest.c (Cosmin). | |
1679 | ||
1680 | Version 1.2.9 [April 14, 2006] | |
1681 | Revised makefile.beos and added "none" selector in ltmain.sh | |
1682 | ||
1683 | Version 1.2.10beta1 [April 15, 2006] | |
1684 | Renamed "config.h" to "png_conf.h" and revised Makefile.am to add | |
1685 | -DPNG_BUILDING_LIBPNG to compile directive, and modified pngconf.h | |
1686 | to include png_conf.h only when PNG_BUILDING_LIBPNG is defined. | |
1687 | ||
1688 | Version 1.2.10beta2 [April 15, 2006] | |
1689 | Manually updated Makefile.in and configure. Changed png_conf.h.in | |
1690 | back to config.h. | |
1691 | ||
1692 | Version 1.2.10beta3 [April 15, 2006] | |
1693 | Change png_conf.h back to config.h in pngconf.h. | |
1694 | ||
1695 | Version 1.2.10beta4 [April 16, 2006] | |
1696 | Change PNG_BUILDING_LIBPNG to PNG_CONFIGURE_LIBPNG in config/Makefile*. | |
1697 | ||
1698 | Version 1.2.10beta5 [April 16, 2006] | |
1699 | Added a configure check for compiling assembler code in pnggccrd.c | |
1700 | ||
1701 | Version 1.2.10beta6 [April 17, 2006] | |
1702 | Revised the configure check for pnggccrd.c | |
1703 | Moved -DPNG_CONFIGURE_LIBPNG into @LIBPNG_DEFINES@ | |
1704 | Added @LIBPNG_DEFINES@ to arguments when building libpng.sym | |
1705 | ||
1706 | Version 1.2.10beta7 [April 18, 2006] | |
1707 | Change "exec_prefix=$prefix" to "exec_prefix=$(prefix)" in makefiles. | |
1708 | ||
1709 | Version 1.2.10rc1 [April 19, 2006] | |
1710 | Ensure pngconf.h doesn't define both PNG_USE_PNGGCCRD and PNG_USE_PNGVCRD | |
1711 | Fixed "LN_FS" typo in makefile.sco and makefile.solaris. | |
1712 | ||
1713 | Version 1.2.10rc2 [April 20, 2006] | |
1714 | Added a backslash between -DPNG_CONFIGURE_LIBPNG and -DPNG_NO_ASSEMBLER_CODE | |
1715 | in configure.ac and configure | |
1716 | Made the configure warning about versioned symbols less arrogant. | |
1717 | ||
1718 | Version 1.2.10rc3 [April 21, 2006] | |
1719 | Added a note in libpng.txt that png_set_sig_bytes(8) can be used when | |
1720 | writing an embedded PNG without the 8-byte signature. | |
1721 | Revised makefiles and configure to avoid making links to libpng.so.* | |
1722 | ||
1723 | Version 1.2.10 [April 23, 2006] | |
1724 | Reverted configure to "rc2" state. | |
1725 | ||
1726 | Version 1.2.11beta1 [May 31, 2006] | |
1727 | scripts/libpng.pc.in contained "configure" style version info and would | |
1728 | not work with makefiles. | |
1729 | The shared-library makefiles were linking to libpng.so.0 instead of | |
1730 | libpng.so.3 compatibility as the library. | |
1731 | ||
1732 | Version 1.2.11beta2 [June 2, 2006] | |
1733 | Increased sprintf buffer from 50 to 52 chars in pngrutil.c to avoid | |
1734 | buffer overflow. | |
1735 | Fixed bug in example.c (png_set_palette_rgb -> png_set_palette_to_rgb) | |
1736 | ||
1737 | Version 1.2.11beta3 [June 5, 2006] | |
1738 | Prepended "#! /bin/sh" to ltmail.sh and contrib/pngminus/*.sh (Cosmin). | |
1739 | Removed the accidental leftover Makefile.in~ (Cosmin). | |
1740 | Avoided potential buffer overflow and optimized buffer in | |
1741 | png_write_sCAL(), png_write_sCAL_s() (Cosmin). | |
1742 | Removed the include directories and libraries from CFLAGS and LDFLAGS | |
1743 | in scripts/makefile.gcc (Nelson A. de Oliveira, Cosmin). | |
1744 | ||
1745 | Version 1.2.11beta4 [June 6, 2006] | |
1746 | Allow zero-length IDAT chunks after the entire zlib datastream, but not | |
1747 | after another intervening chunk type. | |
1748 | ||
1749 | Version 1.0.19rc1, 1.2.11rc1 [June 13, 2006] | |
1750 | Deleted extraneous square brackets from [config.h] in configure.ac | |
1751 | ||
1752 | Version 1.0.19rc2, 1.2.11rc2 [June 14, 2006] | |
1753 | Added prototypes for PNG_INCH_CONVERSIONS functions to png.h | |
1754 | Revised INSTALL and autogen.sh | |
1755 | Fixed typo in several makefiles (-W1 should be -Wl) | |
1756 | Added typedef for png_int_32 and png_uint_32 on 64-bit systems. | |
1757 | ||
1758 | Version 1.0.19rc3, 1.2.11rc3 [June 15, 2006] | |
1759 | Removed the new typedefs for 64-bit systems (delay until version 1.4.0) | |
1760 | Added one zero element to png_gamma_shift[] array in pngrtran.c to avoid | |
1761 | reading out of bounds. | |
1762 | ||
1763 | Version 1.0.19rc4, 1.2.11rc4 [June 15, 2006] | |
1764 | Really removed the new typedefs for 64-bit systems. | |
1765 | ||
1766 | Version 1.0.19rc5, 1.2.11rc5 [June 22, 2006] | |
1767 | Removed png_sig_bytes entry from scripts/pngw32.def | |
1768 | ||
1769 | Version 1.0.19, 1.2.11 [June 26, 2006] | |
1770 | None. | |
1771 | ||
1772 | Version 1.0.20, 1.2.12 [June 27, 2006] | |
1773 | Really increased sprintf buffer from 50 to 52 chars in pngrutil.c to avoid | |
1774 | buffer overflow. | |
1775 | ||
1776 | Version 1.2.13beta1 [October 2, 2006] | |
1777 | Removed AC_FUNC_MALLOC from configure.ac | |
1778 | Work around Intel-Mac compiler bug by setting PNG_NO_MMX_CODE in pngconf.h | |
1779 | Change "logical" to "bitwise" throughout documentation. | |
1780 | Detect and fix attempt to write wrong iCCP profile length (CVE-2006-7244) | |
1781 | ||
1782 | Version 1.0.21, 1.2.13 [November 14, 2006] | |
1783 | Fix potential buffer overflow in sPLT chunk handler. | |
1784 | Fix Makefile.am to not try to link to noexistent files. | |
1785 | Check all exported functions for NULL png_ptr. | |
1786 | ||
1787 | Version 1.2.14beta1 [November 17, 2006] | |
1788 | Relocated three misplaced tests for NULL png_ptr. | |
1789 | Built Makefile.in with automake-1.9.6 instead of 1.9.2. | |
1790 | Build configure with autoconf-2.60 instead of 2.59 | |
1791 | ||
1792 | Version 1.2.14beta2 [November 17, 2006] | |
1793 | Added some typecasts in png_zalloc(). | |
1794 | ||
1795 | Version 1.2.14rc1 [November 20, 2006] | |
1796 | Changed "strtod" to "png_strtod" in pngrutil.c | |
1797 | ||
1798 | Version 1.0.22, 1.2.14 [November 27, 2006] | |
1799 | Added missing "$(srcdir)" in Makefile.am and Makefile.in | |
1800 | ||
1801 | Version 1.2.15beta1 [December 3, 2006] | |
1802 | Generated configure with autoconf-2.61 instead of 2.60 | |
1803 | Revised configure.ac to update libpng.pc and libpng-config. | |
1804 | ||
1805 | Version 1.2.15beta2 [December 3, 2006] | |
1806 | Always export MMX asm functions, just stubs if not building pnggccrd.c | |
1807 | ||
1808 | Version 1.2.15beta3 [December 4, 2006] | |
1809 | Add "png_bytep" typecast to profile while calculating length in pngwutil.c | |
1810 | ||
1811 | Version 1.2.15beta4 [December 7, 2006] | |
1812 | Added scripts/CMakeLists.txt | |
1813 | Changed PNG_NO_ASSEMBLER_CODE to PNG_NO_MMX_CODE in scripts, like 1.4.0beta | |
1814 | ||
1815 | Version 1.2.15beta5 [December 7, 2006] | |
1816 | Changed some instances of PNG_ASSEMBLER_* to PNG_MMX_* in pnggccrd.c | |
1817 | Revised scripts/CMakeLists.txt | |
1818 | ||
1819 | Version 1.2.15beta6 [December 13, 2006] | |
1820 | Revised scripts/CMakeLists.txt and configure.ac | |
1821 | ||
1822 | Version 1.2.15rc1 [December 18, 2006] | |
1823 | Revised scripts/CMakeLists.txt | |
1824 | ||
1825 | Version 1.2.15rc2 [December 21, 2006] | |
1826 | Added conditional #undef jmpbuf in pngtest.c to undo #define in AIX headers. | |
1827 | Added scripts/makefile.nommx | |
1828 | ||
1829 | Version 1.2.15rc3 [December 25, 2006] | |
1830 | Fixed shared library numbering error that was introduced in 1.2.15beta6. | |
1831 | ||
1832 | Version 1.2.15rc4 [December 27, 2006] | |
1833 | Fixed handling of rgb_to_gray when png_ptr->color.gray isn't set. | |
1834 | ||
1835 | Version 1.2.15rc5 [December 31, 2006] | |
1836 | Revised handling of rgb_to_gray. | |
1837 | ||
1838 | Version 1.2.15 [January 5, 2007] | |
1839 | Added some (unsigned long) typecasts in pngtest.c to avoid printing errors. | |
1840 | ||
1841 | Version 1.2.16beta1 [January 6, 2007] | |
1842 | Fix bugs in makefile.nommx | |
1843 | ||
1844 | Version 1.2.16beta2 [January 16, 2007] | |
1845 | Revised scripts/CMakeLists.txt | |
1846 | ||
1847 | Version 1.2.16 [January 31, 2007] | |
1848 | No changes. | |
1849 | ||
1850 | Version 1.2.17beta1 [March 6, 2007] | |
1851 | Revised scripts/CMakeLists.txt to install both shared and static libraries. | |
1852 | Deleted a redundant line from pngset.c. | |
1853 | ||
1854 | Version 1.2.17beta2 [April 26, 2007] | |
1855 | Relocated misplaced test for png_ptr == NULL in pngpread.c | |
1856 | Change "==" to "&" for testing PNG_RGB_TO_GRAY_ERR & PNG_RGB_TO_GRAY_WARN | |
1857 | flags. | |
1858 | Changed remaining instances of PNG_ASSEMBLER_* to PNG_MMX_* | |
1859 | Added pngerror() when write_IHDR fails in deflateInit2(). | |
1860 | Added "const" to some array declarations. | |
1861 | Mention examples of libpng usage in the libpng*.txt and libpng.3 documents. | |
1862 | ||
1863 | Version 1.2.17rc1 [May 4, 2007] | |
1864 | No changes. | |
1865 | ||
1866 | Version 1.2.17rc2 [May 8, 2007] | |
1867 | Moved several PNG_HAVE_* macros out of PNG_INTERNAL because applications | |
1868 | calling set_unknown_chunk_location() need them. | |
1869 | Changed transformation flag from PNG_EXPAND_tRNS to PNG_EXPAND in | |
1870 | png_set_expand_gray_1_2_4_to_8(). | |
1871 | Added png_ptr->unknown_chunk to hold working unknown chunk data, so it | |
1872 | can be free'ed in case of error. Revised unknown chunk handling in | |
1873 | pngrutil.c and pngpread.c to use this structure. | |
1874 | ||
1875 | Version 1.2.17rc3 [May 8, 2007] | |
1876 | Revised symbol-handling in configure script. | |
1877 | ||
1878 | Version 1.2.17rc4 [May 10, 2007] | |
1879 | Revised unknown chunk handling to avoid storing unknown critical chunks. | |
1880 | ||
1881 | Version 1.0.25 [May 15, 2007] | |
1882 | Version 1.2.17 [May 15, 2007] | |
1883 | Added "png_ptr->num_trans=0" before error return in png_handle_tRNS, | |
1884 | to eliminate a vulnerability (CVE-2007-2445, CERT VU#684664) | |
1885 | ||
1886 | Version 1.0.26 [May 15, 2007] | |
1887 | Version 1.2.18 [May 15, 2007] | |
1888 | Reverted the libpng-1.2.17rc3 change to symbol-handling in configure script | |
1889 | ||
1890 | Version 1.2.19beta1 [May 18, 2007] | |
1891 | Changed "const static" to "static PNG_CONST" everywhere, mostly undoing | |
1892 | change of libpng-1.2.17beta2. Changed other "const" to "PNG_CONST" | |
1893 | Changed some handling of unused parameters, to avoid compiler warnings. | |
1894 | "if (unused == NULL) return;" becomes "unused = unused". | |
1895 | ||
1896 | Version 1.2.19beta2 [May 18, 2007] | |
1897 | Only use the valid bits of tRNS value in png_do_expand() (Brian Cartier) | |
1898 | ||
1899 | Version 1.2.19beta3 [May 19, 2007] | |
1900 | Add some "png_byte" typecasts in png_check_keyword() and write new_key | |
1901 | instead of key in zTXt chunk (Kevin Ryde). | |
1902 | ||
1903 | Version 1.2.19beta4 [May 21, 2007] | |
1904 | Add png_snprintf() function and use it in place of sprint() for improved | |
1905 | defense against buffer overflows. | |
1906 | ||
1907 | Version 1.2.19beta5 [May 21, 2007] | |
1908 | Fixed png_handle_tRNS() to only use the valid bits of tRNS value. | |
1909 | Changed handling of more unused parameters, to avoid compiler warnings. | |
1910 | Removed some PNG_CONST in pngwutil.c to avoid compiler warnings. | |
1911 | ||
1912 | Version 1.2.19beta6 [May 22, 2007] | |
1913 | Added some #ifdef PNG_MMX_CODE_SUPPORTED where needed in pngvcrd.c | |
1914 | Added a special "_MSC_VER" case that defines png_snprintf to _snprintf | |
1915 | ||
1916 | Version 1.2.19beta7 [May 22, 2007] | |
1917 | Squelched png_squelch_warnings() in pnggccrd.c and added | |
1918 | an #ifdef PNG_MMX_CODE_SUPPORTED block around the declarations that caused | |
1919 | the warnings that png_squelch_warnings was squelching. | |
1920 | ||
1921 | Version 1.2.19beta8 [May 22, 2007] | |
1922 | Removed __MMX__ from test in pngconf.h. | |
1923 | ||
1924 | Version 1.2.19beta9 [May 23, 2007] | |
1925 | Made png_squelch_warnings() available via PNG_SQUELCH_WARNINGS macro. | |
1926 | Revised png_squelch_warnings() so it might work. | |
1927 | Updated makefile.sgcc and makefile.solaris; added makefile.solaris-x86. | |
1928 | ||
1929 | Version 1.2.19beta10 [May 24, 2007] | |
1930 | Resquelched png_squelch_warnings(), use "__attribute__((used))" instead. | |
1931 | ||
1932 | Version 1.4.0beta1 [April 20, 2006] | |
1933 | Enabled iTXt support (changes png_struct, thus requires so-number change). | |
1934 | Cleaned up PNG_ASSEMBLER_CODE_SUPPORTED vs PNG_MMX_CODE_SUPPORTED | |
1935 | Eliminated PNG_1_0_X and PNG_1_2_X macros. | |
1936 | Removed deprecated functions png_read_init, png_write_init, png_info_init, | |
1937 | png_permit_empty_plte, png_set_gray_1_2_4_to_8, png_check_sig, and | |
1938 | removed the deprecated macro PNG_MAX_UINT. | |
1939 | Moved "PNG_INTERNAL" parts of png.h and pngconf.h into pngintrn.h | |
1940 | Removed many WIN32_WCE #ifdefs (Cosmin). | |
1941 | Reduced dependency on C-runtime library when on Windows (Simon-Pierre) | |
1942 | Replaced sprintf() with png_sprintf() (Simon-Pierre) | |
1943 | ||
1944 | Version 1.4.0beta2 [April 20, 2006] | |
1945 | Revised makefiles and configure to avoid making links to libpng.so.* | |
1946 | Moved some leftover MMX-related defines from pngconf.h to pngintrn.h | |
1947 | Updated scripts/pngos2.def, pngw32.def, and projects/wince/png32ce.def | |
1948 | ||
1949 | Version 1.4.0beta3 [May 10, 2006] | |
1950 | Updated scripts/pngw32.def to comment out MMX functions. | |
1951 | Added PNG_NO_GET_INT_32 and PNG_NO_SAVE_INT_32 macros. | |
1952 | Scripts/libpng.pc.in contained "configure" style version info and would | |
1953 | not work with makefiles. | |
1954 | Revised pngconf.h and added pngconf.h.in, so makefiles and configure can | |
1955 | pass defines to libpng and applications. | |
1956 | ||
1957 | Version 1.4.0beta4 [May 11, 2006] | |
1958 | Revised configure.ac, Makefile.am, and many of the makefiles to write | |
1959 | their defines in pngconf.h. | |
1960 | ||
1961 | Version 1.4.0beta5 [May 15, 2006] | |
1962 | Added a missing semicolon in Makefile.am and Makefile.in | |
1963 | Deleted extraneous square brackets from configure.ac | |
1964 | ||
1965 | Version 1.4.0beta6 [June 2, 2006] | |
1966 | Increased sprintf buffer from 50 to 52 chars in pngrutil.c to avoid | |
1967 | buffer overflow. | |
1968 | Changed sonum from 0 to 1. | |
1969 | Removed unused prototype for png_check_sig() from png.h | |
1970 | ||
1971 | Version 1.4.0beta7 [June 16, 2006] | |
1972 | Exported png_write_sig (Cosmin). | |
1973 | Optimized buffer in png_handle_cHRM() (Cosmin). | |
1974 | Set pHYs = 2835 x 2835 pixels per meter, and added | |
1975 | sCAL = 0.352778e-3 x 0.352778e-3 meters, in pngtest.png (Cosmin). | |
1976 | Added png_set_benign_errors(), png_benign_error(), png_chunk_benign_error(). | |
1977 | Added typedef for png_int_32 and png_uint_32 on 64-bit systems. | |
1978 | Added "(unsigned long)" typecast on png_uint_32 variables in printf lists. | |
1979 | ||
1980 | Version 1.4.0beta8 [June 22, 2006] | |
1981 | Added demonstration of user chunk support in pngtest.c, to support the | |
1982 | public sTER chunk and a private vpAg chunk. | |
1983 | ||
1984 | Version 1.4.0beta9 [July 3, 2006] | |
1985 | Removed ordinals from scripts/pngw32.def and removed png_info_int and | |
1986 | png_set_gray_1_2_4_to_8 entries. | |
1987 | Inline call of png_get_uint_32() in png_get_uint_31(). | |
1988 | Use png_get_uint_31() to get vpAg width and height in pngtest.c | |
1989 | Removed WINCE and Netware projects. | |
1990 | Removed standalone Y2KINFO file. | |
1991 | ||
1992 | Version 1.4.0beta10 [July 12, 2006] | |
1993 | Eliminated automatic copy of pngconf.h to pngconf.h.in from configure and | |
1994 | some makefiles, because it was not working reliably. Instead, distribute | |
1995 | pngconf.h.in along with pngconf.h and cause configure and some of the | |
1996 | makefiles to update pngconf.h from pngconf.h.in. | |
1997 | Added pngconf.h to DEPENDENCIES in Makefile.am | |
1998 | ||
1999 | Version 1.4.0beta11 [August 19, 2006] | |
2000 | Removed AC_FUNC_MALLOC from configure.ac. | |
2001 | Added a warning when writing iCCP profile with mismatched profile length. | |
2002 | Patched pnggccrd.c to assemble on x86_64 platforms. | |
2003 | Moved chunk header reading into a separate function png_read_chunk_header() | |
2004 | in pngrutil.c. The chunk header (len+sig) is now serialized in a single | |
2005 | operation (Cosmin). | |
2006 | Implemented support for I/O states. Added png_ptr member io_state, and | |
2007 | functions png_get_io_chunk_name() and png_get_io_state() in pngget.c | |
2008 | (Cosmin). | |
2009 | Added png_get_io_chunk_name and png_get_io_state to scripts/*.def (Cosmin). | |
2010 | Renamed scripts/pngw32.* to scripts/pngwin.* (Cosmin). | |
2011 | Removed the include directories and libraries from CFLAGS and LDFLAGS | |
2012 | in scripts/makefile.gcc (Cosmin). | |
2013 | Used png_save_uint_32() to set vpAg width and height in pngtest.c (Cosmin). | |
2014 | Cast to proper type when getting/setting vpAg units in pngtest.c (Cosmin). | |
2015 | Added pngintrn.h to the Visual C++ projects (Cosmin). | |
2016 | Removed scripts/list (Cosmin). | |
2017 | Updated copyright year in scripts/pngwin.def (Cosmin). | |
2018 | Removed PNG_TYPECAST_NULL and used standard NULL consistently (Cosmin). | |
2019 | Disallowed the user to redefine png_size_t, and enforced a consistent use | |
2020 | of png_size_t across libpng (Cosmin). | |
2021 | Changed the type of png_ptr->rowbytes, PNG_ROWBYTES() and friends | |
2022 | to png_size_t (Cosmin). | |
2023 | Removed png_convert_size() and replaced png_sizeof with sizeof (Cosmin). | |
2024 | Removed some unnecessary type casts (Cosmin). | |
2025 | Changed prototype of png_get_compression_buffer_size() and | |
2026 | png_set_compression_buffer_size() to work with png_size_t instead of | |
2027 | png_uint_32 (Cosmin). | |
2028 | Removed png_memcpy_check() and png_memset_check() (Cosmin). | |
2029 | Fixed a typo (png_byte --> png_bytep) in libpng.3 and libpng.txt (Cosmin). | |
2030 | Clarified that png_zalloc() does not clear the allocated memory, | |
2031 | and png_zalloc() and png_zfree() cannot be PNGAPI (Cosmin). | |
2032 | Renamed png_mem_size_t to png_alloc_size_t, fixed its definition in | |
2033 | pngconf.h, and used it in all memory allocation functions (Cosmin). | |
2034 | Renamed pngintrn.h to pngpriv.h, added a comment at the top of the file | |
2035 | mentioning that the symbols declared in that file are private, and | |
2036 | updated the scripts and the Visual C++ projects accordingly (Cosmin). | |
2037 | Removed circular references between pngconf.h and pngconf.h.in in | |
2038 | scripts/makefile.vc*win32 (Cosmin). | |
2039 | Removing trailing '.' from the warning and error messages (Cosmin). | |
2040 | Added pngdefs.h that is built by makefile or configure, instead of | |
2041 | pngconf.h.in (Glenn). | |
2042 | Detect and fix attempt to write wrong iCCP profile length. | |
2043 | ||
2044 | Version 1.4.0beta12 [October 19, 2006] | |
2045 | Changed "logical" to "bitwise" in the documentation. | |
2046 | Work around Intel-Mac compiler bug by setting PNG_NO_MMX_CODE in pngconf.h | |
2047 | Add a typecast to stifle compiler warning in pngrutil.c | |
2048 | ||
2049 | Version 1.4.0beta13 [November 10, 2006] | |
2050 | Fix potential buffer overflow in sPLT chunk handler. | |
2051 | Fix Makefile.am to not try to link to noexistent files. | |
2052 | ||
2053 | Version 1.4.0beta14 [November 15, 2006] | |
2054 | Check all exported functions for NULL png_ptr. | |
2055 | ||
2056 | Version 1.4.0beta15 [November 17, 2006] | |
2057 | Relocated two misplaced tests for NULL png_ptr. | |
2058 | Built Makefile.in with automake-1.9.6 instead of 1.9.2. | |
2059 | Build configure with autoconf-2.60 instead of 2.59 | |
2060 | Add "install: all" in Makefile.am so "configure; make install" will work. | |
2061 | ||
2062 | Version 1.4.0beta16 [November 17, 2006] | |
2063 | Added a typecast in png_zalloc(). | |
2064 | ||
2065 | Version 1.4.0beta17 [December 4, 2006] | |
2066 | Changed "new_key[79] = '\0';" to "(*new_key)[79] = '\0';" in pngwutil.c | |
2067 | Add "png_bytep" typecast to profile while calculating length in pngwutil.c | |
2068 | ||
2069 | Version 1.4.0beta18 [December 7, 2006] | |
2070 | Added scripts/CMakeLists.txt | |
2071 | ||
2072 | Version 1.4.0beta19 [May 16, 2007] | |
2073 | Revised scripts/CMakeLists.txt | |
2074 | Rebuilt configure and Makefile.in with newer tools. | |
2075 | Added conditional #undef jmpbuf in pngtest.c to undo #define in AIX headers. | |
2076 | Added scripts/makefile.nommx | |
2077 | ||
2078 | Version 1.4.0beta20 [July 9, 2008] | |
2079 | Moved several PNG_HAVE_* macros from pngpriv.h to png.h because applications | |
2080 | calling set_unknown_chunk_location() need them. | |
2081 | Moved several macro definitions from pngpriv.h to pngconf.h | |
2082 | Merge with changes to the 1.2.X branch, as of 1.2.30beta04. | |
2083 | Deleted all use of the MMX assembler code and Intel-licensed optimizations. | |
2084 | Revised makefile.mingw | |
2085 | ||
2086 | Version 1.4.0beta21 [July 21, 2008] | |
2087 | Moved local array "chunkdata" from pngrutil.c to the png_struct, so | |
2088 | it will be freed by png_read_destroy() in case of a read error (Kurt | |
2089 | Christensen). | |
2090 | ||
2091 | Version 1.4.0beta22 [July 21, 2008] | |
2092 | Change "purpose" and "buffer" to png_ptr->chunkdata to avoid memory leaking. | |
2093 | ||
2094 | Version 1.4.0beta23 [July 22, 2008] | |
2095 | Change "chunkdata = NULL" to "png_ptr->chunkdata = NULL" several places in | |
2096 | png_decompress_chunk(). | |
2097 | ||
2098 | Version 1.4.0beta24 [July 25, 2008] | |
2099 | Change all remaining "chunkdata" to "png_ptr->chunkdata" in | |
2100 | png_decompress_chunk(), and remove "chunkdata" from parameter list. | |
2101 | Put a call to png_check_chunk_name() in png_read_chunk_header(). | |
2102 | Revised png_check_chunk_name() to reject a name with a lowercase 3rd byte. | |
2103 | Removed two calls to png_check_chunk_name() occuring later in the process. | |
2104 | Define PNG_NO_ERROR_NUMBERS by default in pngconf.h | |
2105 | ||
2106 | Version 1.4.0beta25 [July 30, 2008] | |
2107 | Added a call to png_check_chunk_name() in pngpread.c | |
2108 | Reverted png_check_chunk_name() to accept a name with a lowercase 3rd byte. | |
2109 | Added png_push_have_buffer() function to pngpread.c | |
2110 | Eliminated PNG_BIG_ENDIAN_SUPPORTED and associated png_get_* macros. | |
2111 | Made inline expansion of png_get_*() optional with PNG_USE_READ_MACROS. | |
2112 | Eliminated all PNG_USELESS_TESTS and PNG_CORRECT_PALETTE_SUPPORTED code. | |
2113 | Synced contrib directory and configure files with libpng-1.2.30beta06. | |
2114 | Eliminated no-longer-used pngdefs.h (but it's still built in the makefiles) | |
2115 | Relocated a misplaced "#endif /* PNG_NO_WRITE_FILTER */" in pngwutil.c | |
2116 | ||
2117 | Version 1.4.0beta26 [August 4, 2008] | |
2118 | Removed png_push_have_buffer() function in pngpread.c. It increased the | |
2119 | compiled library size slightly. | |
2120 | Changed "-Wall" to "-W -Wall" in the CFLAGS in all makefiles (Cosmin Truta) | |
2121 | Declared png_ptr "volatile" in pngread.c and pngwrite.c to avoid warnings. | |
2122 | Updated contrib/visupng/cexcept.h to version 2.0.1 | |
2123 | Added PNG_LITERAL_CHARACTER macros for #, [, and ]. | |
2124 | ||
2125 | Version 1.4.0beta27 [August 5, 2008] | |
2126 | Revised usage of PNG_LITERAL_SHARP in pngerror.c. | |
2127 | Moved newline character from individual png_debug messages into the | |
2128 | png_debug macros. | |
2129 | Allow user to #define their own png_debug, png_debug1, and png_debug2. | |
2130 | ||
2131 | Version 1.4.0beta28 [August 5, 2008] | |
2132 | Revised usage of PNG_LITERAL_SHARP in pngerror.c. | |
2133 | Added PNG_STRING_NEWLINE macro | |
2134 | ||
2135 | Version 1.4.0beta29 [August 9, 2008] | |
2136 | Revised usage of PNG_STRING_NEWLINE to work on non-ISO compilers. | |
2137 | Added PNG_STRING_COPYRIGHT macro. | |
2138 | Added non-ISO versions of png_debug macros. | |
2139 | ||
2140 | Version 1.4.0beta30 [August 14, 2008] | |
2141 | Added premultiplied alpha feature (Volker Wiendl). | |
2142 | ||
2143 | Version 1.4.0beta31 [August 18, 2008] | |
2144 | Moved png_set_premultiply_alpha from pngtrans.c to pngrtran.c | |
2145 | Removed extra crc check at the end of png_handle_cHRM(). Bug introduced | |
2146 | in libpng-1.4.0beta20. | |
2147 | ||
2148 | Version 1.4.0beta32 [August 19, 2008] | |
2149 | Added PNG_WRITE_FLUSH_SUPPORTED block around new png_flush() call. | |
2150 | Revised PNG_NO_STDIO version of png_write_flush() | |
2151 | ||
2152 | Version 1.4.0beta33 [August 20, 2008] | |
2153 | Added png_get|set_chunk_cache_max() to limit the total number of sPLT, | |
2154 | text, and unknown chunks that can be stored. | |
2155 | ||
2156 | Version 1.4.0beta34 [September 6, 2008] | |
2157 | Shortened tIME_string to 29 bytes in pngtest.c | |
2158 | Fixed off-by-one error introduced in png_push_read_zTXt() function in | |
2159 | libpng-1.2.30beta04/pngpread.c (Harald van Dijk) | |
2160 | ||
2161 | Version 1.4.0beta35 [October 6, 2008] | |
2162 | Changed "trans_values" to "trans_color". | |
2163 | Changed so-number from 0 to 14. Some OS do not like 0. | |
2164 | Revised makefile.darwin to fix shared library numbering. | |
2165 | Change png_set_gray_1_2_4_to_8() to png_set_expand_gray_1_2_4_to_8() | |
2166 | in example.c (debian bug report) | |
2167 | ||
2168 | Version 1.4.0beta36 [October 25, 2008] | |
2169 | Sync with tEXt vulnerability fix in libpng-1.2.33rc02. | |
2170 | ||
2171 | Version 1.4.0beta37 [November 13, 2008] | |
2172 | Added png_check_cHRM in png.c and moved checking from pngget.c, pngrutil.c, | |
2173 | and pngwrite.c | |
2174 | ||
2175 | Version 1.4.0beta38 [November 22, 2008] | |
2176 | Added check for zero-area RGB cHRM triangle in png_check_cHRM() and | |
2177 | png_check_cHRM_fixed(). | |
2178 | ||
2179 | Version 1.4.0beta39 [November 23, 2008] | |
2180 | Revised png_warning() to write its message on standard output by default | |
2181 | when warning_fn is NULL. | |
2182 | ||
2183 | Version 1.4.0beta40 [November 24, 2008] | |
2184 | Eliminated png_check_cHRM(). Instead, always use png_check_cHRM_fixed(). | |
2185 | In png_check_cHRM_fixed(), ensure white_y is > 0, and removed redundant | |
2186 | check for all-zero coordinates that is detected by the triangle check. | |
2187 | ||
2188 | Version 1.4.0beta41 [November 26, 2008] | |
2189 | Fixed string vs pointer-to-string error in png_check_keyword(). | |
2190 | Rearranged test expressions in png_check_cHRM_fixed() to avoid internal | |
2191 | overflows. | |
2192 | Added PNG_NO_CHECK_cHRM conditional. | |
2193 | ||
2194 | Version 1.4.0beta42, 43 [December 1, 2008] | |
2195 | Merge png_debug with version 1.2.34beta04. | |
2196 | ||
2197 | Version 1.4.0beta44 [December 6, 2008] | |
2198 | Removed redundant check for key==NULL before calling png_check_keyword() | |
2199 | to ensure that new_key gets initialized and removed extra warning | |
2200 | (Merge with version 1.2.34beta05 -- Arvan Pritchard). | |
2201 | ||
2202 | Version 1.4.0beta45 [December 9, 2008] | |
2203 | In png_write_png(), respect the placement of the filler bytes in an earlier | |
2204 | call to png_set_filler() (Jim Barry). | |
2205 | ||
2206 | Version 1.4.0beta46 [December 10, 2008] | |
2207 | Undid previous change and added PNG_TRANSFORM_STRIP_FILLER_BEFORE and | |
2208 | PNG_TRANSFORM_STRIP_FILLER_AFTER conditionals and deprecated | |
2209 | PNG_TRANSFORM_STRIP_FILLER (Jim Barry). | |
2210 | ||
2211 | Version 1.4.0beta47 [December 15, 2008] | |
2212 | Support for dithering was disabled by default, because it has never | |
2213 | been well tested and doesn't work very well. The code has not | |
2214 | been removed, however, and can be enabled by building libpng with | |
2215 | PNG_READ_DITHER_SUPPORTED defined. | |
2216 | ||
2217 | Version 1.4.0beta48 [February 14, 2009] | |
2218 | Added new exported function png_calloc(). | |
2219 | Combined several instances of png_malloc(); png_memset() into png_calloc(). | |
2220 | Removed prototype for png_freeptr() that was added in libpng-1.4.0beta24 | |
2221 | but was never defined. | |
2222 | ||
2223 | Version 1.4.0beta49 [February 28, 2009] | |
2224 | Added png_fileno() macro to pngconf.h, used in pngwio.c | |
2225 | Corrected order of #ifdef's in png_debug definition in png.h | |
2226 | Fixed bug introduced in libpng-1.4.0beta48 with the memset arguments | |
2227 | for pcal_params. | |
2228 | Fixed order of #ifdef directives in the png_debug defines in png.h | |
2229 | (bug introduced in libpng-1.2.34/1.4.0beta29). | |
2230 | Revised comments in png_set_read_fn() and png_set_write_fn(). | |
2231 | ||
2232 | Version 1.4.0beta50 [March 18, 2009] | |
2233 | Use png_calloc() instead of png_malloc() to allocate big_row_buf when | |
2234 | reading an interlaced file, to avoid a possible UMR. | |
2235 | Undid revision of PNG_NO_STDIO version of png_write_flush(). Users | |
2236 | having trouble with fflush() can build with PNG_NO_WRITE_FLUSH defined | |
2237 | or supply their own flush_fn() replacement. | |
2238 | Revised libpng*.txt and png.h documentation about use of png_write_flush() | |
2239 | and png_set_write_fn(). | |
2240 | Removed fflush() from pngtest.c. | |
2241 | Added "#define PNG_NO_WRITE_FLUSH" to contrib/pngminim/encoder/pngusr.h | |
2242 | ||
2243 | Version 1.4.0beta51 [March 21, 2009] | |
2244 | Removed new png_fileno() macro from pngconf.h . | |
2245 | ||
2246 | Version 1.4.0beta52 [March 27, 2009] | |
2247 | Relocated png_do_chop() ahead of building gamma tables in pngrtran.c | |
2248 | This avoids building 16-bit gamma tables unnecessarily. | |
2249 | Removed fflush() from pngtest.c. | |
2250 | Added "#define PNG_NO_WRITE_FLUSH" to contrib/pngminim/encoder/pngusr.h | |
2251 | Added a section on differences between 1.0.x and 1.2.x to libpng.3/libpng.txt | |
2252 | ||
2253 | Version 1.4.0beta53 [April 1, 2009] | |
2254 | Removed some remaining MMX macros from pngpriv.h | |
2255 | Fixed potential memory leak of "new_name" in png_write_iCCP() (Ralph Giles) | |
2256 | ||
2257 | Version 1.4.0beta54 [April 13, 2009] | |
2258 | Added "ifndef PNG_SKIP_SETJMP_CHECK" block in pngconf.h to allow | |
2259 | application code writers to bypass the check for multiple inclusion | |
2260 | of setjmp.h when they know that it is safe to ignore the situation. | |
2261 | Eliminated internal use of setjmp() in pngread.c and pngwrite.c | |
2262 | Reordered ancillary chunks in pngtest.png to be the same as what | |
2263 | pngtest now produces, and made some cosmetic changes to pngtest output. | |
2264 | Eliminated deprecated png_read_init_3() and png_write_init_3() functions. | |
2265 | ||
2266 | Version 1.4.0beta55 [April 15, 2009] | |
2267 | Simplified error handling in pngread.c and pngwrite.c by putting | |
2268 | the new png_read_cleanup() and png_write_cleanup() functions inline. | |
2269 | ||
2270 | Version 1.4.0beta56 [April 25, 2009] | |
2271 | Renamed "user_chunk_data" to "my_user_chunk_data" in pngtest.c to suppress | |
2272 | "shadowed declaration" warning from gcc-4.3.3. | |
2273 | Renamed "gamma" to "png_gamma" in pngset.c to avoid "shadowed declaration" | |
2274 | warning about a global "gamma" variable in math.h on some platforms. | |
2275 | ||
2276 | Version 1.4.0beta57 [May 2, 2009] | |
2277 | Removed prototype for png_freeptr() that was added in libpng-1.4.0beta24 | |
2278 | but was never defined (again). | |
2279 | Rebuilt configure scripts with autoconf-2.63 instead of 2.62 | |
2280 | Removed pngprefs.h and MMX from makefiles | |
2281 | ||
2282 | Version 1.4.0beta58 [May 14, 2009] | |
2283 | Changed pngw32.def to pngwin.def in makefile.mingw (typo was introduced | |
2284 | in beta57). | |
2285 | Clarified usage of sig_bit versus sig_bit_p in example.c (Vincent Torri) | |
2286 | ||
2287 | Version 1.4.0beta59 [May 15, 2009] | |
2288 | Reformated sources in libpng style (3-space intentation, comment format) | |
2289 | Fixed typo in libpng docs (PNG_FILTER_AVE should be PNG_FILTER_AVG) | |
2290 | Added sections about the git repository and our coding style to the | |
2291 | documentation | |
2292 | Relocated misplaced #endif in pngwrite.c, sCAL chunk handler. | |
2293 | ||
2294 | Version 1.4.0beta60 [May 19, 2009] | |
2295 | Conditionally compile png_read_finish_row() which is not used by | |
2296 | progressive readers. | |
2297 | Added contrib/pngminim/preader to demonstrate building minimal progressive | |
2298 | decoder, based on contrib/gregbook with embedded libpng and zlib. | |
2299 | ||
2300 | Version 1.4.0beta61 [May 20, 2009] | |
2301 | In contrib/pngminim/*, renamed "makefile.std" to "makefile", since there | |
2302 | is only one makefile in those directories, and revised the README files | |
2303 | accordingly. | |
2304 | More reformatting of comments, mostly to capitalize sentences. | |
2305 | ||
2306 | Version 1.4.0beta62 [June 2, 2009] | |
2307 | Added "#define PNG_NO_WRITE_SWAP" to contrib/pngminim/encoder/pngusr.h | |
2308 | and "define PNG_NO_READ_SWAP" to decoder/pngusr.h and preader/pngusr.h | |
2309 | Reformatted several remaining "else statement" into two lines. | |
2310 | Added a section to the libpng documentation about using png_get_io_ptr() | |
2311 | in configure scripts to detect the presence of libpng. | |
2312 | ||
2313 | Version 1.4.0beta63 [June 15, 2009] | |
2314 | Revised libpng*.txt and libpng.3 to mention calling png_set_IHDR() | |
2315 | multiple times and to specify the sample order in the tRNS chunk, | |
2316 | because the ISO PNG specification has a typo in the tRNS table. | |
2317 | Changed several PNG_UNKNOWN_CHUNK_SUPPORTED to | |
2318 | PNG_HANDLE_AS_UNKNOWN_SUPPORTED, to make the png_set_keep mechanism | |
2319 | available for ignoring known chunks even when not saving unknown chunks. | |
2320 | Adopted preference for consistent use of "#ifdef" and "#ifndef" versus | |
2321 | "#if defined()" and "if !defined()" where possible. | |
2322 | ||
2323 | Version 1.4.0beta64 [June 24, 2009] | |
2324 | Eliminated PNG_LEGACY_SUPPORTED code. | |
2325 | Moved the various unknown chunk macro definitions outside of the | |
2326 | PNG_READ|WRITE_ANCILLARY_CHUNK_SUPPORTED blocks. | |
2327 | ||
2328 | Version 1.4.0beta65 [June 26, 2009] | |
2329 | Added a reference to the libpng license in each file. | |
2330 | ||
2331 | Version 1.4.0beta66 [June 27, 2009] | |
2332 | Refer to the libpng license instead of the libpng license in each file. | |
2333 | ||
2334 | Version 1.4.0beta67 [July 6, 2009] | |
2335 | Relocated INVERT_ALPHA within png_read_png() and png_write_png(). | |
2336 | Added high-level API transform PNG_TRANSFORM_GRAY_TO_RGB. | |
2337 | Added an "xcode" project to the projects directory (Alam Arias). | |
2338 | ||
2339 | Version 1.4.0beta68 [July 19, 2009] | |
2340 | Avoid some tests in filter selection in pngwutil.c | |
2341 | ||
2342 | Version 1.4.0beta69 [July 25, 2009] | |
2343 | Simplified the new filter-selection test. This runs faster in the | |
2344 | common "PNG_ALL_FILTERS" and PNG_FILTER_NONE cases. | |
2345 | Removed extraneous declaration from the new call to png_read_gray_to_rgb() | |
2346 | (bug introduced in libpng-1.4.0beta67). | |
2347 | Fixed up xcode project (Alam Arias) | |
2348 | Added a prototype for png_64bit_product() in png.c | |
2349 | ||
2350 | Version 1.4.0beta70 [July 27, 2009] | |
2351 | Avoid a possible NULL dereference in debug build, in png_set_text_2(). | |
2352 | (bug introduced in libpng-0.95, discovered by Evan Rouault) | |
2353 | ||
2354 | Version 1.4.0beta71 [July 29, 2009] | |
2355 | Rebuilt configure scripts with autoconf-2.64. | |
2356 | ||
2357 | Version 1.4.0beta72 [August 1, 2009] | |
2358 | Replaced *.tar.lzma with *.tar.xz in distribution. Get the xz codec | |
2359 | from <http://tukaani.org/xz>. | |
2360 | ||
2361 | Version 1.4.0beta73 [August 1, 2009] | |
2362 | Reject attempt to write iCCP chunk with negative embedded profile length | |
2363 | (JD Chen) (CVE-2009-5063). | |
2364 | ||
2365 | Version 1.4.0beta74 [August 8, 2009] | |
2366 | Changed png_ptr and info_ptr member "trans" to "trans_alpha". | |
2367 | ||
2368 | Version 1.4.0beta75 [August 21, 2009] | |
2369 | Removed an extra png_debug() recently added to png_write_find_filter(). | |
2370 | Fixed incorrect #ifdef in pngset.c regarding unknown chunk support. | |
2371 | ||
2372 | Version 1.4.0beta76 [August 22, 2009] | |
2373 | Moved an incorrectly located test in png_read_row() in pngread.c | |
2374 | ||
2375 | Version 1.4.0beta77 [August 27, 2009] | |
2376 | Removed lpXYZ.tar.bz2 (with CRLF), KNOWNBUG, libpng-x.y.z-KNOWNBUG.txt, | |
2377 | and the "noconfig" files from the distribution. | |
2378 | Moved CMakeLists.txt from scripts into the main libpng directory. | |
2379 | Various bugfixes and improvements to CMakeLists.txt (Philip Lowman) | |
2380 | ||
2381 | Version 1.4.0beta78 [August 31, 2009] | |
2382 | Converted all PNG_NO_* tests to PNG_*_SUPPORTED everywhere except pngconf.h | |
2383 | Eliminated PNG_NO_FREE_ME and PNG_FREE_ME_SUPPORTED macros. | |
2384 | Use png_malloc plus a loop instead of png_calloc() to initialize | |
2385 | row_pointers in png_read_png(). | |
2386 | ||
2387 | Version 1.4.0beta79 [September 1, 2009] | |
2388 | Eliminated PNG_GLOBAL_ARRAYS and PNG_LOCAL_ARRAYS; always use local arrays. | |
2389 | Eliminated PNG_CALLOC_SUPPORTED macro and always provide png_calloc(). | |
2390 | ||
2391 | Version 1.4.0beta80 [September 17, 2009] | |
2392 | Removed scripts/libpng.icc | |
2393 | Changed typecast of filler from png_byte to png_uint_16 in png_set_filler(). | |
2394 | (Dennis Gustafsson) | |
2395 | Fixed typo introduced in beta78 in pngtest.c ("#if def " should be "#ifdef ") | |
2396 | ||
2397 | Version 1.4.0beta81 [September 23, 2009] | |
2398 | Eliminated unused PNG_FLAG_FREE_* defines from pngpriv.h | |
2399 | Expanded TAB characters in pngrtran.c | |
2400 | Removed PNG_CONST from all "PNG_CONST PNG_CHNK" declarations to avoid | |
2401 | compiler complaints about doubly declaring things "const". | |
2402 | Changed all "#if [!]defined(X)" to "if[n]def X" where possible. | |
2403 | Eliminated unused png_ptr->row_buf_size | |
2404 | ||
2405 | Version 1.4.0beta82 [September 25, 2009] | |
2406 | Moved redundant IHDR checking into new png_check_IHDR() in png.c | |
2407 | and report all errors found in the IHDR data. | |
2408 | Eliminated useless call to png_check_cHRM() from pngset.c | |
2409 | ||
2410 | Version 1.4.0beta83 [September 25, 2009] | |
2411 | Revised png_check_IHDR() to eliminate bogus complaint about filter_type. | |
2412 | ||
2413 | Version 1.4.0beta84 [September 30, 2009] | |
2414 | Fixed some inconsistent indentation in pngconf.h | |
2415 | Revised png_check_IHDR() to add a test for width variable less than 32-bit. | |
2416 | ||
2417 | Version 1.4.0beta85 [October 1, 2009] | |
2418 | Revised png_check_IHDR() again, to check info_ptr members instead of | |
2419 | the contents of the returned parameters. | |
2420 | ||
2421 | Version 1.4.0beta86 [October 9, 2009] | |
2422 | Updated the "xcode" project (Alam Arias). | |
2423 | Eliminated a shadowed declaration of "pp" in png_handle_sPLT(). | |
2424 | ||
2425 | Version 1.4.0rc01 [October 19, 2009] | |
2426 | Trivial cosmetic changes. | |
2427 | ||
2428 | Version 1.4.0beta87 [October 30, 2009] | |
2429 | Moved version 1.4.0 back into beta. | |
2430 | ||
2431 | Version 1.4.0beta88 [October 30, 2009] | |
2432 | Revised libpng*.txt section about differences between 1.2.x and 1.4.0 | |
2433 | because most of the new features have now been ported back to 1.2.41 | |
2434 | ||
2435 | Version 1.4.0beta89 [November 1, 2009] | |
2436 | More bugfixes and improvements to CMakeLists.txt (Philip Lowman) | |
2437 | Removed a harmless extra png_set_invert_alpha() from pngwrite.c | |
2438 | Apply png_user_chunk_cache_max within png_decompress_chunk(). | |
2439 | Merged libpng-1.2.41.txt with libpng-1.4.0.txt where appropriate. | |
2440 | ||
2441 | Version 1.4.0beta90 [November 2, 2009] | |
2442 | Removed all remaining WIN32_WCE #ifdefs except those involving the | |
2443 | time.h "tm" structure | |
2444 | ||
2445 | Version 1.4.0beta91 [November 3, 2009] | |
2446 | Updated scripts/pngw32.def and projects/wince/png32ce.def | |
2447 | Copied projects/wince/png32ce.def to the scripts directory. | |
2448 | Added scripts/makefile.wce | |
2449 | Patched ltmain.sh for wince support. | |
2450 | Added PNG_CONVERT_tIME_SUPPORTED macro. | |
2451 | ||
2452 | Version 1.4.0beta92 [November 4, 2009] | |
2453 | Make inclusion of time.h in pngconf.h depend on PNG_CONVERT_tIME_SUPPORTED | |
2454 | Make #define PNG_CONVERT_tIME_SUPPORTED depend on PNG_WRITE_tIME_SUPPORTED | |
2455 | Revised libpng*.txt to describe differences from 1.2.40 to 1.4.0 (instead | |
2456 | of differences from 1.2.41 to 1.4.0) | |
2457 | ||
2458 | Version 1.4.0beta93 [November 7, 2009] | |
2459 | Added PNG_DEPSTRUCT, PNG_DEPRECATED, PNG_USE_RESULT, PNG_NORETURN, and | |
2460 | PNG_ALLOCATED macros to detect deprecated direct access to the | |
2461 | png_struct or info_struct members and other deprecated usage in | |
2462 | applications (John Bowler). | |
2463 | Updated scripts/makefile* to add "-DPNG_CONFIGURE_LIBPNG" to CFLAGS, | |
2464 | to prevent warnings about direct access to png structs by libpng | |
2465 | functions while building libpng. They need to be tested, especially | |
2466 | those using compilers other than gcc. | |
2467 | Updated projects/visualc6 and visualc71 with "/d PNG_CONFIGURE_LIBPNG". | |
2468 | They should work but still need to be updated to remove | |
2469 | references to pnggccrd.c or pngvcrd.c and ASM building. | |
2470 | Added README.txt to the beos, cbuilder5, netware, and xcode projects warning | |
2471 | that they need to be updated, to remove references to pnggccrd.c and | |
2472 | pngvcrd.c and to depend on pngpriv.h | |
2473 | Removed three direct references to read_info_ptr members in pngtest.c | |
2474 | that were detected by the new PNG_DEPSTRUCT macro. | |
2475 | Moved the png_debug macro definitions and the png_read_destroy(), | |
2476 | png_write_destroy() and png_far_to_near() prototypes from png.h | |
2477 | to pngpriv.h (John Bowler) | |
2478 | Moved the synopsis lines for png_read_destroy(), png_write_destroy() | |
2479 | png_debug(), png_debug1(), and png_debug2() from libpng.3 to libpngpf.3. | |
2480 | ||
2481 | Version 1.4.0beta94 [November 9, 2009] | |
2482 | Removed the obsolete, unused pnggccrd.c and pngvcrd.c files. | |
2483 | Updated CMakeLists.txt to add "-DPNG_CONFIGURE_LIBPNG" to the definitions. | |
2484 | Removed dependency of pngtest.o on pngpriv.h in the makefiles. | |
2485 | Only #define PNG_DEPSTRUCT, etc. in pngconf.h if not already defined. | |
2486 | ||
2487 | Version 1.4.0beta95 [November 10, 2009] | |
2488 | Changed png_check_sig() to !png_sig_cmp() in contrib programs. | |
2489 | Added -DPNG_CONFIGURE_LIBPNG to contrib/pngminm/*/makefile | |
2490 | Changed png_check_sig() to !png_sig_cmp() in contrib programs. | |
2491 | Corrected the png_get_IHDR() call in contrib/gregbook/readpng2.c | |
2492 | Changed pngminim/*/gather.sh to stop trying to remove pnggccrd.c and pngvcrd.c | |
2493 | Added dependency on pngpriv.h in contrib/pngminim/*/makefile | |
2494 | ||
2495 | Version 1.4.0beta96 [November 12, 2009] | |
2496 | Renamed scripts/makefile.wce to scripts/makefile.cegcc | |
2497 | Revised Makefile.am to use libpng.sys while building libpng.so | |
2498 | so that only PNG_EXPORT functions are exported. | |
2499 | Removed the deprecated png_check_sig() function/macro. | |
2500 | Removed recently removed function names from scripts/*.def | |
2501 | Revised pngtest.png to put chunks in the same order written by pngtest | |
2502 | (evidently the same change made in libpng-1.0beta54 was lost). | |
2503 | Added PNG_PRIVATE macro definition in pngconf.h for possible future use. | |
2504 | ||
2505 | Version 1.4.0beta97 [November 13, 2009] | |
2506 | Restored pngtest.png to the libpng-1.4.0beta7 version. | |
2507 | Removed projects/beos and netware.txt; no one seems to be supporting them. | |
2508 | Revised Makefile.in | |
2509 | ||
2510 | Version 1.4.0beta98 [November 13, 2009] | |
2511 | Added the "xcode" project to zip distributions, | |
2512 | Fixed a typo in scripts/pngwin.def introduced in beta97. | |
2513 | ||
2514 | Version 1.4.0beta99 [November 14, 2009] | |
2515 | Moved libpng-config.in and libpng.pc-configure.in out of the scripts | |
2516 | directory, to libpng-config.in and libpng-pc.in, respectively, and | |
2517 | modified Makefile.am and configure.ac accordingly. Now "configure" | |
2518 | needs nothing from the "scripts" directory. | |
2519 | Avoid redefining PNG_CONST in pngconf.h | |
2520 | ||
2521 | Version 1.4.0beta100 [November 14, 2009] | |
2522 | Removed ASM builds from projects/visualc6 and projects/visualc71 | |
2523 | Removed scripts/makefile.nommx and makefile.vcawin32 | |
2524 | Revised CMakeLists.txt to account for new location of libpng-config.in | |
2525 | and libpng-pc.in | |
2526 | Updated INSTALL to reflect removal and relocation of files. | |
2527 | ||
2528 | Version 1.4.0beta101 [November 14, 2009] | |
2529 | Restored the binary files (*.jpg, *.png, some project files) that were | |
2530 | accidentally deleted from the zip and 7z distributions when the xcode | |
2531 | project was added. | |
2532 | ||
2533 | Version 1.4.0beta102 [November 18, 2009] | |
2534 | Added libpng-config.in and libpng-pc.in to the zip and 7z distributions. | |
2535 | Fixed a typo in projects/visualc6/pngtest.dsp, introduced in beta100. | |
2536 | Moved descriptions of makefiles and other scripts out of INSTALL into | |
2537 | scripts/README.txt | |
2538 | Updated the copyright year in scripts/pngwin.rc from 2006 to 2009. | |
2539 | ||
2540 | Version 1.4.0beta103 [November 21, 2009] | |
2541 | Removed obsolete comments about ASM from projects/visualc71/README_zlib.txt | |
2542 | Align row_buf on 16-byte boundary in memory. | |
2543 | Restored the PNG_WRITE_FLUSH_AFTER_IEND_SUPPORTED guard around the call | |
2544 | to png_flush() after png_write_IEND(). See 1.4.0beta32, 1.4.0beta50 | |
2545 | changes above and 1.2.30, 1.2.30rc01 and rc03 in 1.2.41 CHANGES. Someone | |
2546 | needs this feature. | |
2547 | Make the 'png_jmpbuf' macro expand to a call that records the correct | |
2548 | longjmp function as well as returning a pointer to the setjmp | |
2549 | jmp_buf buffer, and marked direct access to jmpbuf 'deprecated'. | |
2550 | (John Bowler) | |
2551 | ||
2552 | Version 1.4.0beta104 [November 22, 2009] | |
2553 | Removed png_longjmp_ptr from scripts/*.def and libpng.3 | |
2554 | Rebuilt configure scripts with autoconf-2.65 | |
2555 | ||
2556 | Version 1.4.0beta105 [November 25, 2009] | |
2557 | Use fast integer PNG_DIVIDE_BY_255() or PNG_DIVIDE_BY_65535() | |
2558 | to accomplish alpha premultiplication when | |
2559 | PNG_READ_COMPOSITE_NODIV_SUPPORTED is defined. | |
2560 | Changed "/255" to "/255.0" in background calculations to make it clear | |
2561 | that the 255 is used as a double. | |
2562 | ||
2563 | Version 1.4.0beta106 [November 27, 2009] | |
2564 | Removed premultiplied alpha feature. | |
2565 | ||
2566 | Version 1.4.0beta107 [December 4, 2009] | |
2567 | Updated README | |
2568 | Added "#define PNG_NO_PEDANTIC_WARNINGS" in the libpng source files. | |
2569 | Removed "-DPNG_CONFIGURE_LIBPNG" from the makefiles and projects. | |
2570 | Revised scripts/makefile.netbsd, makefile.openbsd, and makefile.sco | |
2571 | to put png.h and pngconf.h in $prefix/include, like the other scripts, | |
2572 | instead of in $prefix/include/libpng. Also revised makefile.sco | |
2573 | to put them in $prefix/include/libpng15 instead of in | |
2574 | $prefix/include/libpng/libpng15. | |
2575 | ||
2576 | Version 1.4.0beta108 [December 11, 2009] | |
2577 | Removed leftover "-DPNG_CONFIGURE_LIBPNG" from contrib/pngminim/*/makefile | |
2578 | Relocated png_do_chop() to its original position in pngrtran.c; the | |
2579 | change in version 1.2.41beta08 caused transparency to be handled wrong | |
2580 | in some 16-bit datastreams (Yusaku Sugai). | |
2581 | ||
2582 | Version 1.4.0beta109 [December 13, 2009] | |
2583 | Added "bit_depth" parameter to the private png_build_gamma_table() function. | |
2584 | Pass bit_depth=8 to png_build_gamma_table() when bit_depth is 16 but the | |
2585 | PNG_16_TO_8 transform has been set, to avoid unnecessary build of 16-bit | |
2586 | tables. | |
2587 | ||
2588 | Version 1.4.0rc02 [December 20, 2009] | |
2589 | Declared png_cleanup_needed "volatile" in pngread.c and pngwrite.c | |
2590 | ||
2591 | Version 1.4.0rc03 [December 22, 2009] | |
2592 | Renamed libpng-pc.in back to libpng.pc.in and revised CMakeLists.txt | |
2593 | (revising the change in 1.4.0beta99) | |
2594 | ||
2595 | Version 1.4.0rc04 [December 25, 2009] | |
2596 | Swapped PNG_UNKNOWN_CHUNKS_SUPPORTED and PNG_HANDLE_AS_UNKNOWN_SUPPORTED | |
2597 | in pngset.c to be consistent with other changes in version 1.2.38. | |
2598 | ||
2599 | Version 1.4.0rc05 [December 25, 2009] | |
2600 | Changed "libpng-pc.in" to "libpng.pc.in" in configure.ac, configure, and | |
2601 | Makefile.in to be consistent with changes in libpng-1.4.0rc03 | |
2602 | ||
2603 | Version 1.4.0rc06 [December 29, 2009] | |
2604 | Reverted the gamma_table changes from libpng-1.4.0beta109. | |
2605 | Fixed some indentation errors. | |
2606 | ||
2607 | Version 1.4.0rc07 [January 1, 2010] | |
2608 | Revised libpng*.txt and libpng.3 about 1.2.x->1.4.x differences. | |
2609 | Use png_calloc() instead of png_malloc(); png_memset() in pngrutil.c | |
2610 | Update copyright year to 2010. | |
2611 | ||
2612 | Version 1.4.0rc08 [January 2, 2010] | |
2613 | Avoid deprecated references to png_ptr-io_ptr and png_ptr->error_ptr | |
2614 | in pngtest.c | |
2615 | ||
2616 | Version 1.4.0 [January 3, 2010] | |
2617 | No changes. | |
2618 | ||
2619 | Version 1.4.1beta01 [January 8, 2010] | |
2620 | Updated CMakeLists.txt for consistent indentation and to avoid an | |
2621 | unclosed if-statement warning (Philip Lowman). | |
2622 | Revised Makefile.am and Makefile.in to remove references to Y2KINFO, | |
2623 | KNOWNBUG, and libpng.la (Robert Schwebel). | |
2624 | Revised the makefiles to install the same files and symbolic | |
2625 | links as configure, except for libpng.la and libpng14.la. | |
2626 | Make png_set|get_compression_buffer_size() available even when | |
2627 | PNG_WRITE_SUPPORTED is not enabled. | |
2628 | Revised Makefile.am and Makefile.in to simplify their maintenance. | |
2629 | Revised scripts/makefile.linux to install a link to libpng14.so.14.1 | |
2630 | ||
2631 | Version 1.4.1beta02 [January 9, 2010] | |
2632 | Revised the rest of the makefiles to install a link to libpng14.so.14.1 | |
2633 | ||
2634 | Version 1.4.1beta03 [January 10, 2010] | |
2635 | Removed png_set_premultiply_alpha() from scripts/*.def | |
2636 | ||
2637 | Version 1.4.1rc01 [January 16, 2010] | |
2638 | No changes. | |
2639 | ||
2640 | Version 1.4.1beta04 [January 23, 2010] | |
2641 | Revised png_decompress_chunk() to improve speed and memory usage when | |
2642 | decoding large chunks. | |
2643 | Added png_set|get_chunk_malloc_max() functions. | |
2644 | ||
2645 | Version 1.4.1beta05 [January 26, 2010] | |
2646 | Relocated "int k" declaration in pngtest.c to minimize its scope. | |
2647 | ||
2648 | Version 1.4.1beta06 [January 28, 2010] | |
2649 | Revised png_decompress_chunk() to use a two-pass method suggested by | |
2650 | John Bowler. | |
2651 | ||
2652 | Version 1.4.1beta07 [February 6, 2010] | |
2653 | Folded some long lines in the source files. | |
2654 | Added defineable PNG_USER_CHUNK_CACHE_MAX, PNG_USER_CHUNK_MALLOC_MAX, | |
2655 | and a PNG_USER_LIMITS_SUPPORTED flag. | |
2656 | Eliminated use of png_ptr->irowbytes and reused the slot in png_ptr as | |
2657 | png_ptr->png_user_chunk_malloc_max. | |
2658 | Revised png_push_save_buffer() to do fewer but larger png_malloc() calls. | |
2659 | ||
2660 | Version 1.4.1beta08 [February 6, 2010] | |
2661 | Minor cleanup and updating of dates and copyright year. | |
2662 | ||
2663 | Version 1.5.0beta01 [February 7, 2010] | |
2664 | Moved declaration of png_struct into private pngstruct.h and png_info | |
2665 | into pnginfo.h | |
2666 | ||
2667 | Version 1.4.1beta09 and 1.5.0beta02 [February 7, 2010] | |
2668 | Reverted to original png_push_save_buffer() code. | |
2669 | ||
2670 | Version 1.4.1beta10 and 1.5.0beta03 [February 8, 2010] | |
2671 | Return allocated "old_buffer" in png_push_save_buffer() before | |
2672 | calling png_error(), to avoid a potential memory leak. | |
2673 | Updated configure script to use SO number 15. | |
2674 | ||
2675 | Version 1.5.0beta04 [February 9, 2010] | |
2676 | Removed malformed "incomplete struct declaration" of png_info from png.h | |
2677 | ||
2678 | Version 1.5.0beta05 [February 12, 2010] | |
2679 | Removed PNG_DEPSTRUCT markup in pngstruct.h and pnginfo.h, and undid the | |
2680 | linewrapping that it entailed. | |
2681 | Revised comments in pngstruct.h and pnginfo.h and added pointers to | |
2682 | the libpng license. | |
2683 | Changed PNG_INTERNAL to PNG_EXPOSE_INTERNAL_STRUCTURES | |
2684 | Removed the cbuilder5 project, which has not been updated to 1.4.0. | |
2685 | ||
2686 | Version 1.4.1beta12 and 1.5.0beta06 [February 14, 2010] | |
2687 | Fixed type declaration of png_get_chunk_malloc_max() in pngget.c (Daisuke | |
2688 | Nishikawa) | |
2689 | ||
2690 | Version 1.5.0beta07 [omitted] | |
2691 | ||
2692 | Version 1.5.0beta08 [February 19, 2010] | |
2693 | Changed #ifdef PNG_NO_STDIO_SUPPORTED to #ifdef PNG_NO_CONSOLE_IO_SUPPORTED | |
2694 | wherever png_snprintf() is used to construct error and warning messages. | |
2695 | Noted in scripts/makefile.mingw that it expects to be run under MSYS. | |
2696 | Removed obsolete unused MMX-querying support from contrib/gregbook | |
2697 | Added exported png_longjmp() function. | |
2698 | Removed the AIX redefinition of jmpbuf in png.h | |
2699 | Added -D_ALLSOURCE in configure.ac, makefile.aix, and CMakeLists.txt | |
2700 | when building on AIX. | |
2701 | ||
2702 | Version 1.5.0beta09 [February 19, 2010] | |
2703 | Removed -D_ALLSOURCE from configure.ac, makefile.aix, and CMakeLists.txt. | |
2704 | Changed the name of png_ptr->jmpbuf to png_ptr->png_jmpbuf in pngstruct.h | |
2705 | ||
2706 | Version 1.5.0beta10 [February 25, 2010] | |
2707 | Removed unused gzio.c from contrib/pngminim gather and makefile scripts | |
2708 | Removed replacement error handlers from contrib/gregbook. Because of | |
2709 | the new png_longjmp() function they are no longer needed. | |
2710 | ||
2711 | Version 1.5.0beta11 [March 6, 2010] | |
2712 | Removed checking for already-included setjmp.h from pngconf.h | |
2713 | Fixed inconsistent indentations and made numerous cosmetic changes. | |
2714 | Revised the "SEE ALSO" style of libpng.3, libpngpf.3, and png.5 | |
2715 | ||
2716 | Version 1.5.0beta12 [March 9, 2010] | |
2717 | Moved "#include png.h" inside pngpriv.h and removed "#include png.h" from | |
2718 | the source files, along with "#define PNG_EXPOSE_INTERNAL_STRUCTURES" | |
2719 | and "#define PNG_NO_PEDANTIC_WARNINGS" (John Bowler). | |
2720 | Created new pngdebug.h and moved debug definitions there. | |
2721 | ||
2722 | Version 1.5.0beta13 [March 10, 2010] | |
2723 | Protect pngstruct.h, pnginfo.h, and pngdebug.h from being included twice. | |
2724 | Revise the "#ifdef" blocks in png_inflate() so it will compile when neither | |
2725 | PNG_USER_CHUNK_MALLOC_MAX nor PNG_SET_CHUNK_MALLOC_LIMIT_SUPPORTED | |
2726 | is defined. | |
2727 | Removed unused png_measure_compressed_chunk() from pngpriv.h and libpngpf.3 | |
2728 | Moved the 'config.h' support from pngconf.h to pngpriv.h | |
2729 | Removed PNGAPI from the png_longjmp_ptr typedef. | |
2730 | Eliminated dependence of pngtest.c on the private pngdebug.h file. | |
2731 | Make all png_debug macros into *unterminated* statements or | |
2732 | expressions (i.e. a trailing ';' must always be added) and correct | |
2733 | the format statements in various png_debug messages. | |
2734 | ||
2735 | Version 1.5.0beta14 [March 14, 2010] | |
2736 | Removed direct access to png_ptr->io_ptr from the Windows code in pngtest.c | |
2737 | Revised Makefile.am to account for recent additions and replacements. | |
2738 | Corrected CE and OS/2 DEF files (scripts/png*def) for symbols removed and | |
2739 | added ordinal numbers to the Windows DEF file and corrected the duplicated | |
2740 | ordinal numbers on CE symbols that are commented out. | |
2741 | Added back in export symbols that can be present in the Windows build but | |
2742 | are disabled by default. | |
2743 | PNG_EXPORT changed to include an 'ordinal' field for DEF file generation. | |
2744 | PNG_CALLBACK added to make callback definitions uniform. PNGAPI split | |
2745 | into PNGCAPI (base C form), PNGAPI (exports) and PNGCBAPI (callbacks), | |
2746 | and appropriate changes made to all files. Cygwin builds re-hinged to | |
2747 | allow procedure call standard changes and to remove the need for the DEF | |
2748 | file (fixes build on Cygwin). | |
2749 | Enabled 'attribute' warnings that are relevant to library APIs and callbacks. | |
2750 | Changed rules for generation of the various symbol files and added a new | |
2751 | rule for a DEF file (which is also added to the distribution). | |
2752 | Updated the symbol file generation to stop it adding spurious spaces | |
2753 | to EOL (coming from preprocessor macro expansion). Added a facility | |
2754 | to join tokens in the output and rewrite *.dfn to use this. | |
2755 | Eliminated scripts/*.def in favor of libpng.def; updated projects/visualc71 | |
2756 | and removed scripts/makefile.cygwin. | |
2757 | Made PNG_BUILD_DLL safe: it can be set whenever a DLL is being built. | |
2758 | Removed the include of sys/types.h - apparently unnecessary now on the | |
2759 | platforms on which it happened (all but Mac OS and RISC OS). | |
2760 | Moved the Mac OS test into pngpriv.h (the only place it is used.) | |
2761 | ||
2762 | Version 1.5.0beta15 [March 17, 2010] | |
2763 | Added symbols.chk target to Makefile.am to validate the symbols in png.h | |
2764 | against the new DEF file scripts/symbols.def. | |
2765 | Changed the default DEF file back to pngwin.def. | |
2766 | Removed makefile.mingw. | |
2767 | Eliminated PNG_NO_EXTERN and PNG_ALL_EXTERN | |
2768 | ||
2769 | Version 1.5.0beta16 [April 1, 2010] | |
2770 | Make png_text_struct independent of PNG_iTXt_SUPPORTED, so that | |
2771 | fields are initialized in all configurations. The READ/WRITE | |
2772 | macros (PNG_(READ|WRITE)_iTXt_SUPPORTED) still function as | |
2773 | before to disable code to actually read or write iTXt chunks | |
2774 | and iTXt_SUPPORTED can be used to detect presence of either | |
2775 | read or write support (but it is probably better to check for | |
2776 | the one actually required - read or write.) | |
2777 | Combined multiple png_warning() calls for a single error. | |
2778 | Restored the macro definition of png_check_sig(). | |
2779 | ||
2780 | Version 1.5.0beta17 [April 17, 2010] | |
2781 | Added some "(long)" typecasts to printf calls in png_handle_cHRM(). | |
2782 | Documented the fact that png_set_dither() was disabled since libpng-1.4.0. | |
2783 | Reenabled png_set_dither() but renamed it to png_set_quantize() to reflect | |
2784 | more accurately what it actually does. At the same time, renamed | |
2785 | the PNG_DITHER_[RED,GREEN_BLUE]_BITS macros to | |
2786 | PNG_QUANTIZE_[RED,GREEN,BLUE]_BITS. | |
2787 | Added some "(long)" typecasts to printf calls in png_handle_cHRM(). | |
2788 | Freeze build-time only configuration in the build. | |
2789 | In all prior versions of libpng most configuration options | |
2790 | controlled by compiler #defines had to be repeated by the | |
2791 | application code that used libpng. This patch changes this | |
2792 | so that compilation options that can only be changed at build | |
2793 | time are frozen in the build. Options that are compiler | |
2794 | dependent (and those that are system dependent) are evaluated | |
2795 | each time - pngconf.h holds these. Options that can be changed | |
2796 | per-file in the application are in png.h. Frozen options are | |
2797 | in the new installed header file pnglibconf.h (John Bowler) | |
2798 | Removed the xcode project because it has not been updated to work | |
2799 | with libpng-1.5.0. | |
2800 | Removed the ability to include optional pngusr.h | |
2801 | ||
2802 | Version 1.5.0beta18 [April 17, 2010] | |
2803 | Restored the ability to include optional pngusr.h | |
2804 | Moved replacements for png_error() and png_warning() from the | |
2805 | contrib/pngminim project to pngerror.c, for use when warnings or | |
2806 | errors are disabled via PNG_NO_WARN or PNG_NO_ERROR_TEXT, to avoid | |
2807 | storing unneeded error/warning text. | |
2808 | Updated contrib/pngminim project to work with the new pnglibconf.h | |
2809 | Added some PNG_NO_* defines to contrib/pngminim/*/pngusr.h to save space. | |
2810 | ||
2811 | Version 1.5.0beta19 [April 24, 2010] | |
2812 | Added PNG_{READ,WRITE}_INT_FUNCTIONS_SUPPORTED. This allows the functions | |
2813 | to read and write ints to be disabled independently of PNG_USE_READ_MACROS, | |
2814 | which allows libpng to be built with the functions even though the default | |
2815 | is to use the macros - this allows applications to choose at app build | |
2816 | time whether or not to use macros (previously impossible because the | |
2817 | functions weren't in the default build.) | |
2818 | Changed Windows calling convention back to __cdecl for API functions. | |
2819 | For Windows/x86 platforms only: | |
2820 | __stdcall is no longer needed for Visual Basic, so libpng-1.5.0 uses | |
2821 | __cdecl throughout (both API functions and callbacks) on Windows/x86 | |
2822 | platforms. | |
2823 | Replaced visualc6 and visualc71 projects with new vstudio project | |
2824 | Relaxed the overly-restrictive permissions of some files. | |
2825 | ||
2826 | Version 1.5.0beta20 [April 24, 2010] | |
2827 | Relaxed more overly-restrictive permissions of some files. | |
2828 | ||
2829 | Version 1.5.0beta21 [April 27, 2010] | |
2830 | Removed some unwanted binary bytes and changed CRLF to NEWLINE in the new | |
2831 | vstudio project files, and some trivial editing of some files in the | |
2832 | scripts directory. | |
2833 | Set PNG_NO_READ_BGR, PNG_NO_IO_STATE, and PNG_NO_TIME_RFC1123 in | |
2834 | contrib/pngminim/decoder/pngusr.h to make a smaller decoder application. | |
2835 | ||
2836 | Version 1.5.0beta22 [April 28, 2010] | |
2837 | Fixed dependencies of GET_INT_32 - it does not require READ_INT_FUNCTIONS | |
2838 | because it has a macro equivalent. | |
2839 | Improved the options.awk script; added an "everything off" option. | |
2840 | Revised contrib/pngminim to use the "everything off" option in pngusr.dfa. | |
2841 | ||
2842 | Version 1.5.0beta23 [April 29, 2010] | |
2843 | Corrected PNG_REMOVED macro to take five arguments. | |
2844 | The macro was documented with two arguments (name,ordinal), however | |
2845 | the symbol checking .dfn files assumed five arguments. The five | |
2846 | argument form seems more useful so it is changed to that. | |
2847 | Corrected PNG_UNKNOWN_CHUNKS_SUPPORTED to PNG_HANDLE_AS_UNKNOWN_SUPPORTED | |
2848 | in gregbook/readpng2.c | |
2849 | Corrected protection of png_get_user_transform_ptr. The API declaration in | |
2850 | png.h is removed if both READ and WRITE USER_TRANSFORM are turned off | |
2851 | but was left defined in pngtrans.c | |
2852 | Added logunsupported=1 to cause pnglibconf.h to document disabled options. | |
2853 | This makes the installed pnglibconf.h more readable but causes no | |
2854 | other change. The intention is that users of libpng will find it | |
2855 | easier to understand if an API they need is missing. | |
2856 | Include png_reset_zstream() in png.c only when PNG_READ_SUPPORTED is defined. | |
2857 | Removed dummy_inflate.c from contrib/pngminim/encoder | |
2858 | Removed contrib/pngminim/*/gather.sh; gathering is now done in the makefile. | |
2859 | ||
2860 | Version 1.5.0beta24 [May 7, 2010] | |
2861 | Use bitwise "&" instead of arithmetic mod in pngrutil.c calculation of the | |
2862 | offset of the png_ptr->rowbuf pointer into png_ptr->big_row_buf. | |
2863 | Added more blank lines for readability. | |
2864 | ||
2865 | Version 1.5.0beta25 [June 18, 2010] | |
2866 | In pngpread.c: png_push_have_row() add check for new_row > height | |
2867 | Removed the now-redundant check for out-of-bounds new_row from example.c | |
2868 | ||
2869 | Version 1.5.0beta26 [June 18, 2010] | |
2870 | In pngpread.c: png_push_process_row() add check for too many rows. | |
2871 | ||
2872 | Version 1.5.0beta27 [June 18, 2010] | |
2873 | Removed the check added in beta25 as it is now redundant. | |
2874 | ||
2875 | Version 1.5.0beta28 [June 20, 2010] | |
2876 | Rewrote png_process_IDAT_data to consistently treat extra data as warnings | |
2877 | and handle end conditions more cleanly. | |
2878 | Removed the new (beta26) check in png_push_process_row(). | |
2879 | ||
2880 | Version 1.5.0beta29 [June 21, 2010] | |
2881 | Revised scripts/options.awk to work on Sunos (but still doesn't work) | |
2882 | Added comment to options.awk and contrib/pngminim/*/makefile to try nawk. | |
2883 | ||
2884 | Version 1.5.0beta30 [June 22, 2010] | |
2885 | Stop memory leak when reading a malformed sCAL chunk. | |
2886 | ||
2887 | Version 1.5.0beta31 [June 26, 2010] | |
2888 | Revised pngpread.c patch of beta28 to avoid an endless loop. | |
2889 | Removed some trailing blanks. | |
2890 | ||
2891 | Version 1.5.0beta32 [June 26, 2010] | |
2892 | Removed leftover scripts/options.patch and scripts/options.rej | |
2893 | ||
2894 | Version 1.5.0beta33 [July 6, 3010] | |
2895 | Made FIXED and FLOATING options consistent in the APIs they enable and | |
2896 | disable. Corrected scripts/options.awk to handle both command line | |
2897 | options and options specified in the .dfa files. | |
2898 | Changed char *msg to PNG_CONST char *msg in pngrutil.c | |
2899 | Make png_set_sRGB_gAMA_and_cHRM set values using either the fixed or | |
2900 | floating point APIs, but not both. | |
2901 | Reversed patch to remove error handler when the jmp_buf is stored in the | |
2902 | main program structure, not the png_struct. | |
2903 | The error handler is needed because the default handler in libpng will | |
2904 | always use the jmp_buf in the library control structure; this is never | |
2905 | set. The gregbook code is a useful example because, even though it | |
2906 | uses setjmp/longjmp, it shows how error handling can be implemented | |
2907 | using control mechanisms not directly supported by libpng. The | |
2908 | technique will work correctly with mechanisms such as Microsoft | |
2909 | Structure Exceptions or C++ exceptions (compiler willing - note that gcc | |
2910 | does not by default support interworking of C and C++ error handling.) | |
2911 | Reverted changes to call png_longjmp in contrib/gregbook where it is not | |
2912 | appropriate. If mainprog->jmpbuf is used by setjmp, then png_longjmp | |
2913 | cannot be used. | |
2914 | Changed "extern PNG_EXPORT" to "PNG_EXPORT" in png.h (Jan Nijtmans) | |
2915 | Changed "extern" to "PNG_EXTERN" in pngpriv.h (except for the 'extern "C" {') | |
2916 | ||
2917 | Version 1.5.0beta34 [July 12, 2010] | |
2918 | Put #ifndef PNG_EXTERN, #endif around the define PNG_EXTERN in pngpriv.h | |
2919 | ||
2920 | Version 1.5.0beta35 [July 24, 2010] | |
2921 | Removed some newly-added TAB characters. | |
2922 | Added -DNO_PNG_SNPRINTF to CFLAGS in scripts/makefile.dj2 | |
2923 | Moved the definition of png_snprintf() outside of the enclosing | |
2924 | #ifdef blocks in pngconf.h | |
2925 | ||
2926 | Version 1.5.0beta36 [July 29, 2010] | |
2927 | Patches by John Bowler: | |
2928 | Fixed point APIs are now supported throughout (no missing APIs). | |
2929 | Internal fixed point arithmetic support exists for all internal floating | |
2930 | point operations. | |
2931 | sCAL validates the floating point strings it is passed. | |
2932 | Safe, albeit rudimentary, Watcom support is provided by PNG_API_RULE==2 | |
2933 | Two new APIs exist to get the number of passes without turning on the | |
2934 | PNG_INTERLACE transform and to get the number of rows in the current | |
2935 | pass. | |
2936 | A new test program, pngvalid.c, validates the gamma code. | |
2937 | Errors in the 16-bit gamma correction (overflows) have been corrected. | |
2938 | cHRM chunk testing is done consistently (previously the floating point | |
2939 | API bypassed it, because the test really didn't work on FP, now the test | |
2940 | is performed on the actual values to be stored in the PNG file so it | |
2941 | works in the FP case too.) | |
2942 | Most floating point APIs now simply call the fixed point APIs after | |
2943 | converting the values to the fixed point form used in the PNG file. | |
2944 | The standard headers no longer include zlib.h, which is currently only | |
2945 | required for pngstruct.h and can therefore be internal. | |
2946 | Revised png_get_int_32 to undo the PNG two's complement representation of | |
2947 | negative numbers. | |
2948 | ||
2949 | Version 1.5.0beta37 [July 30, 2010] | |
2950 | Added a typecast in png_get_int_32() in png.h and pngrutil.h to avoid | |
2951 | a compiler warning. | |
2952 | Replaced oFFs 0,0 with oFFs -10,20 in pngtest.png | |
2953 | ||
2954 | Version 1.5.0beta38 [July 31, 2010] | |
2955 | Implemented remaining "_fixed" functions. | |
2956 | Corrected a number of recently introduced warnings mostly resulting from | |
2957 | safe but uncast assignments to shorter integers. Also added a zlib | |
2958 | VStudio release library project because the latest zlib Official Windows | |
2959 | build does not include such a thing. | |
2960 | Revised png_get_int_16() to be similar to png_get_int_32(). | |
2961 | Restored projects/visualc71. | |
2962 | ||
2963 | Version 1.5.0beta39 [August 2, 2010] | |
2964 | VisualC/GCC warning fixes, VisualC build fixes | |
2965 | The changes include support for function attributes in VC in addition to | |
2966 | those already present in GCC - necessary because without these some | |
2967 | warnings are unavoidable. Fixes include signed/unsigned fixes in | |
2968 | pngvalid and checks with gcc -Wall -Wextra -Wunused. | |
2969 | VC requires function attributes on function definitions as well as | |
2970 | declarations, PNG_FUNCTION has been added to enable this and the | |
2971 | relevant function definitions changed. | |
2972 | ||
2973 | Version 1.5.0beta40 [August 6, 2010] | |
2974 | Correct use of _WINDOWS_ in pngconf.h | |
2975 | Removed png_mem_ #defines; they are no longer used. | |
2976 | Added the sRGB chunk to pngtest.png | |
2977 | ||
2978 | Version 1.5.0beta41 [August 11, 2010] | |
2979 | Added the cHRM chunk to pngtest.png | |
2980 | Don't try to use version-script with cygwin/mingw. | |
2981 | Revised contrib/gregbook to work under cygwin/mingw. | |
2982 | ||
2983 | Version 1.5.0beta42 [August 18, 2010] | |
2984 | Add .dll.a to the list of extensions to be symlinked by Makefile.am (Yaakov) | |
2985 | Made all API functions that have const arguments and constant string | |
2986 | literal pointers declare them (John Bowler). | |
2987 | ||
2988 | Version 1.5.0beta43 [August 20, 2010] | |
2989 | Removed spurious tabs, shorten long lines (no source change) | |
2990 | Also added scripts/chkfmt to validate the format of all the files that can | |
2991 | reasonably be validated (it is suggested to run "make distclean" before | |
2992 | checking, because some machine generated files have long lines.) | |
2993 | Reformatted the CHANGES file to be more consistent throughout. | |
2994 | Made changes to address various issues identified by GCC, mostly | |
2995 | signed/unsigned and shortening problems on assignment but also a few | |
2996 | difficult to optimize (for GCC) loops. | |
2997 | Fixed non-GCC fixed point builds. In png.c a declaration was misplaced | |
2998 | in an earlier update. Fixed to declare the auto variables at the head. | |
2999 | Use cexcept.h in pngvalid.c. | |
3000 | ||
3001 | Version 1.5.0beta44 [August 24, 2010] | |
3002 | Updated CMakeLists.txt to use CMAKE_INSTALL_LIBDIR variable; useful for | |
3003 | installing libpng in /usr/lib64 (Funda Wang). | |
3004 | Revised CMakeLists.txt to put the man pages in share/man/man* not man/man* | |
3005 | Revised CMakeLists.txt to make symlinks instead of copies when installing. | |
3006 | Changed PNG_LIB_NAME from pngNN to libpngNN in CMakeLists.txt (Philip Lowman) | |
3007 | Implemented memory checks within pngvalid | |
3008 | Reformatted/rearranged pngvalid.c to assist use of progressive reader. | |
3009 | Check interlaced images in pngvalid | |
3010 | Clarified pngusr.h comments in pnglibconf.dfa | |
3011 | Simplified the pngvalid error-handling code now that cexcept.h is in place. | |
3012 | Implemented progressive reader in pngvalid.c for standard tests | |
3013 | Implemented progressive read in pngvalid.c gamma tests | |
3014 | Turn on progressive reader in pngvalid.c by default and tidy code. | |
3015 | ||
3016 | Version 1.5.0beta45 [August 26, 2010] | |
3017 | Added an explicit make step to projects/vstudio for pnglibconf.h | |
3018 | Also corrected zlib.vcxproj into which Visual Studio had introduced | |
3019 | what it calls an "authoring error". The change to make pnglibconf.h | |
3020 | simply copies the file; in the future it may actually generate the | |
3021 | file from scripts/pnglibconf.dfa as the other build systems do. | |
3022 | Changed pngvalid to work when floating point APIs are disabled | |
3023 | Renamed the prebuilt scripts/pnglibconf.h to scripts/pnglibconf.h.prebuilt | |
3024 | Supply default values for PNG_USER_PRIVATEBUILD and PNG_USER_DLLFNAME_POSTFIX | |
3025 | in pngpriv.h in case the user neglected to define them in their pngusr.h | |
3026 | ||
3027 | Version 1.5.0beta46 [August 28, 2010] | |
3028 | Added new private header files to libpng_sources in CMakeLists.txt | |
3029 | Added PNG_READ_16BIT, PNG_WRITE_16BIT, and PNG_16BIT options. | |
3030 | Added reference to scripts/pnglibconf.h.prebuilt in the visualc71 project. | |
3031 | ||
3032 | Version 1.5.0beta47 [September 11, 2010] | |
3033 | Fixed a number of problems with 64-bit compilation reported by Visual | |
3034 | Studio 2010 (John Bowler). | |
3035 | ||
3036 | Version 1.5.0beta48 [October 4, 2010] | |
3037 | Updated CMakeLists.txt (Philip Lowman). | |
3038 | Revised autogen.sh to recognize and use $AUTOCONF, $AUTOMAKE, $AUTOHEADER, | |
3039 | $AUTOPOINT, $ACLOCAL and $LIBTOOLIZE | |
3040 | Fixed problem with symbols creation in Makefile.am which was assuming that | |
3041 | all versions of ccp write to standard output by default (Martin Banky). The | |
3042 | bug was introduced in libpng-1.2.9beta5. | |
3043 | Removed unused mkinstalldirs. | |
3044 | ||
3045 | Version 1.5.0beta49 [October 8, 2010] | |
3046 | Undid Makefile.am revision of 1.5.0beta48. | |
3047 | ||
3048 | Version 1.5.0beta50 [October 14, 2010] | |
3049 | Revised Makefile.in to account for mkinstalldirs being removed. | |
3050 | Added some "(unsigned long)" typecasts in printf statements in pngvalid.c. | |
3051 | Suppressed a compiler warning in png_handle_sPLT(). | |
3052 | Check for out-of-range text compression mode in png_set_text(). | |
3053 | ||
3054 | Version 1.5.0beta51 [October 15, 2010] | |
3055 | Changed embedded dates to "(PENDING RELEASE) in beta releases (and future | |
3056 | rc releases) to minimize the difference between releases. | |
3057 | ||
3058 | Version 1.5.0beta52 [October 16, 2010] | |
3059 | Restored some of the embedded dates (in png.h, png.c, documentation, etc.) | |
3060 | ||
3061 | Version 1.5.0beta53 [October 18, 2010] | |
3062 | Updated INSTALL to mention using "make maintainer-clean" and to remove | |
3063 | obsolete statement about a custom ltmain.sh | |
3064 | Disabled "color-tests" by default in Makefile.am so it will work with | |
3065 | automake versions earlier than 1.11.1 | |
3066 | Use document name "libpng-manual.txt" instead of "libpng-<version>.txt" | |
3067 | to simplify version differences. | |
3068 | Removed obsolete remarks about setjmp handling from INSTALL. | |
3069 | Revised and renamed the typedef in png.h and png.c that was designed | |
3070 | to catch library and header mismatch. | |
3071 | ||
3072 | Version 1.5.0beta54 [November 10, 2010] | |
3073 | Require 48 bytes, not 64 bytes, for big_row_buf in overflow checks. | |
3074 | Used a consistent structure for the pngget.c functions. | |
3075 | ||
3076 | Version 1.5.0beta55 [November 21, 2010] | |
3077 | Revised png_get_uint_32, png_get_int_32, png_get_uint_16 (Cosmin) | |
3078 | Moved reading of file signature into png_read_sig (Cosmin) | |
3079 | Fixed atomicity of chunk header serialization (Cosmin) | |
3080 | Added test for io_state in pngtest.c (Cosmin) | |
3081 | Added "#!/bin/sh" at the top of contrib/pngminim/*/gather.sh scripts. | |
3082 | Changes to remove gcc warnings (John Bowler) | |
3083 | Certain optional gcc warning flags resulted in warnings in libpng code. | |
3084 | With these changes only -Wconversion and -Wcast-qual cannot be turned on. | |
3085 | Changes are trivial rearrangements of code. -Wconversion is not possible | |
3086 | for pngrutil.c (because of the widespread use of += et al on variables | |
3087 | smaller than (int) or (unsigned int)) and -Wcast-qual is not possible | |
3088 | with pngwio.c and pngwutil.c because the 'write' callback and zlib | |
3089 | compression both fail to declare their input buffers with 'const'. | |
3090 | ||
3091 | Version 1.5.0beta56 [December 7, 2010] | |
3092 | Added the private PNG_UNUSED() macro definition in pngpriv.h. | |
3093 | Added some commentary about PNG_EXPORT in png.h and pngconf.h | |
3094 | Revised PNG_EXPORT() macro and added PNG_EXPORTA() macro, with the | |
3095 | objective of simplifying and improving the cosmetic appearance of png.h. | |
3096 | Fixed some incorrect "=" macro names in pnglibconf.dfa | |
3097 | Included documentation of changes in 1.5.0 from 1.4.x in libpng-manual.txt | |
3098 | ||
3099 | Version 1.5.0beta57 [December 9, 2010] | |
3100 | Documented the pngvalid gamma error summary with additional comments and | |
3101 | print statements. | |
3102 | Improved missing symbol handling in checksym.awk; symbols missing in both | |
3103 | the old and new files can now be optionally ignored, treated as errors | |
3104 | or warnings. | |
3105 | Removed references to pngvcrd.c and pnggccrd.c from the vstudio project. | |
3106 | Updated "libpng14" to "libpng15" in the visualc71 project. | |
3107 | Enabled the strip16 tests in pngvalid.` | |
3108 | Don't display test results (except PASS/FAIL) when running "make test". | |
3109 | Instead put them in pngtest-log.txt | |
3110 | Added "--with-zprefix=<string>" to configure.ac | |
3111 | Updated the prebuilt configuration files to autoconf version 2.68 | |
3112 | ||
3113 | Version 1.5.0beta58 [December 19, 2010] | |
3114 | Fixed interlace image handling and add test cases (John Bowler) | |
3115 | Fixed the clean rule in Makefile.am to remove pngtest-log.txt | |
3116 | Made minor changes to work around warnings in gcc 3.4 | |
3117 | ||
3118 | Version 1.5.0rc01 [December 27, 2010] | |
3119 | No changes. | |
3120 | ||
3121 | Version 1.5.0rc02 [December 27, 2010] | |
3122 | Eliminated references to the scripts/*.def files in project/visualc71. | |
3123 | ||
3124 | Version 1.5.0rc03 [December 28, 2010] | |
3125 | Eliminated scripts/*.def and revised Makefile.am accordingly | |
3126 | ||
3127 | Version 1.5.0rc04 [December 29, 2010] | |
3128 | Fixed bug in background transformation handling in pngrtran.c (it was | |
3129 | looking for the flag in png_ptr->transformations instead of in | |
3130 | png_ptr->flags) (David Raymond). | |
3131 | ||
3132 | Version 1.5.0rc05 [December 31, 2010] | |
3133 | Fixed typo in a comment in CMakeLists.txt (libpng14 => libpng15) (Cosmin) | |
3134 | ||
3135 | Version 1.5.0rc06 [January 4, 2011] | |
3136 | Changed the new configure option "zprefix=string" to "zlib-prefix=string" | |
3137 | ||
3138 | Version 1.5.0rc07 [January 4, 2011] | |
3139 | Updated copyright year. | |
3140 | ||
3141 | Version 1.5.0 [January 6, 2011] | |
3142 | No changes. | |
3143 | ||
3144 | version 1.5.1beta01 [January 8, 2011] | |
3145 | Added description of png_set_crc_action() to the manual. | |
3146 | Added a note in the manual that the type of the iCCP profile was changed | |
3147 | from png_charpp to png_bytepp in png_get_iCCP(). This change happened | |
3148 | in version 1.5.0beta36 but is not noted in the CHANGES. Similarly, | |
3149 | it was changed from png_charpp to png_const_bytepp in png_set_iCCP(). | |
3150 | Ensure that png_rgb_to_gray ignores palette mapped images, if libpng | |
3151 | internally happens to call it with one, and fixed a failure to handle | |
3152 | palette mapped images correctly. This fixes CVE-2690. | |
3153 | ||
3154 | Version 1.5.1beta02 [January 14, 2011] | |
3155 | Fixed a bug in handling of interlaced images (bero at arklinux.org). | |
3156 | Updated CMakeLists.txt (Clifford Yapp) | |
3157 | ||
3158 | Version 1.5.1beta03 [January 14, 2011] | |
3159 | Fixed typecasting of some png_debug() statements (Cosmin) | |
3160 | ||
3161 | Version 1.5.1beta04 [January 16, 2011] | |
3162 | Updated documentation of png_set|get_tRNS() (Thomas Klausner). | |
3163 | Mentioned in the documentation that applications must #include "zlib.h" | |
3164 | if they need access to anything in zlib.h, and that a number of | |
3165 | macros such as png_memset() are no longer accessible by applications. | |
3166 | Corrected pngvalid gamma test "sample" function to access all of the color | |
3167 | samples of each pixel, instead of sampling the red channel three times. | |
3168 | Prefixed variable names index, div, exp, gamma with "png_" to avoid "shadow" | |
3169 | warnings, and (mistakenly) changed png_exp() to exp(). | |
3170 | ||
3171 | Version 1.5.1beta05 [January 16, 2011] | |
3172 | Changed variable names png_index, png_div, png_exp, and png_gamma to | |
3173 | char_index, divisor, exp_b10, and gamma_val, respectively, and | |
3174 | changed exp() back to png_exp(). | |
3175 | ||
3176 | Version 1.5.1beta06 [January 20, 2011] | |
3177 | Prevent png_push_crc_skip() from hanging while reading an unknown chunk | |
3178 | or an over-large compressed zTXt chunk with the progressive reader. | |
3179 | Eliminated more GCC "shadow" warnings. | |
3180 | Revised png_fixed() in png.c to avoid compiler warning about reaching the | |
3181 | end without returning anything. | |
3182 | ||
3183 | Version 1.5.1beta07 [January 22, 2011] | |
3184 | In the manual, describe the png_get_IHDR() arguments in the correct order. | |
3185 | Added const_png_structp and const_png_infop types, and used them in | |
3186 | prototypes for most png_get_*() functions. | |
3187 | ||
3188 | Version 1.5.1beta08 [January 23, 2011] | |
3189 | Added png_get_io_chunk_type() and deprecated png_get_io_chunk_name() | |
3190 | Added synopses for the IO_STATE functions and other missing synopses | |
3191 | to the manual. Removed the synopses from libpngpf.3 because they | |
3192 | were out of date and no longer useful. Better information can be | |
3193 | obtained by reading the prototypes and comments in pngpriv.h | |
3194 | Attempted to fix cpp on Solaris with S. Studio 12 cc, fix build | |
3195 | Added a make macro DFNCPP that is a CPP that will accept the tokens in | |
3196 | a .dfn file and adds configure stuff to test for such a CPP. ./configure | |
3197 | should fail if one is not available. | |
3198 | Corrected const_png_ in png.h to png_const_ to avoid polluting the namespace. | |
3199 | Added png_get_current_row_number and png_get_current_pass_number for the | |
3200 | benefit of the user transform callback. | |
3201 | Added png_process_data_pause and png_process_data_skip for the benefit of | |
3202 | progressive readers that need to stop data processing or want to optimize | |
3203 | skipping of unread data (e.g., if the reader marks a chunk to be skipped.) | |
3204 | ||
3205 | Version 1.5.1beta09 [January 24, 2011] | |
3206 | Enhanced pngvalid, corrected an error in gray_to_rgb, corrected doc error. | |
3207 | pngvalid contains tests of transforms, which tests are currently disabled | |
3208 | because they are incompletely tested. gray_to_rgb was failing to expand | |
3209 | the bit depth for smaller bit depth images; this seems to be a long | |
3210 | standing error and resulted, apparently, in invalid output | |
3211 | (CVE-2011-0408, CERT VU#643140). The documentation did not accurately | |
3212 | describe what libpng really does when converting RGB to gray. | |
3213 | ||
3214 | Version 1.5.1beta10 [January 27, 2010] | |
3215 | Fixed incorrect examples of callback prototypes in the manual, that were | |
3216 | introduced in libpng-1.0.0. | |
3217 | In addition the order of the png_get_uint macros with respect to the | |
3218 | relevant function definitions has been reversed. This helps the | |
3219 | preprocessing of the symbol files be more robust. Furthermore, the | |
3220 | symbol file preprocessing now uses -DPNG_NO_USE_READ_MACROS even when | |
3221 | the library may actually be built with PNG_USE_READ_MACROS; this stops | |
3222 | the read macros interfering with the symbol file format. | |
3223 | Made the manual, synopses, and function prototypes use the function | |
3224 | argument names file_gamma, int_file_gamma, and srgb_intent consistently. | |
3225 | ||
3226 | Version 1.5.1beta11 [January 28, 2011] | |
3227 | Changed PNG_UNUSED from "param=param;" to "{if(param){}}". | |
3228 | Corrected local variable type in new API png_process_data_skip() | |
3229 | The type was self-evidently incorrect but only causes problems on 64-bit | |
3230 | architectures. | |
3231 | Added transform tests to pngvalid and simplified the arguments. | |
3232 | ||
3233 | Version 1.5.1rc01 [January 29, 2011] | |
3234 | No changes. | |
3235 | ||
3236 | Version 1.5.1rc02 [January 31, 2011] | |
3237 | Added a request in the manual that applications do not use "png_" or | |
3238 | "PNG_" to begin any of their own symbols. | |
3239 | Changed PNG_UNUSED to "(void)param;" and updated the commentary in pngpriv.h | |
3240 | ||
3241 | Version 1.5.1 [February 3, 2011] | |
3242 | No changes. | |
3243 | ||
3244 | Version 1.5.2beta01 [February 13, 2011] | |
3245 | More -Wshadow fixes for older gcc compilers. Older gcc versions apparently | |
3246 | check formal parameters names in function declarations (as well as | |
3247 | definitions) to see if they match a name in the global namespace. | |
3248 | Revised PNG_EXPORTA macro to not use an empty parameter, to accommodate the | |
3249 | old VisualC++ preprocessor. | |
3250 | Turned on interlace handling in png_read_png(). | |
3251 | Fixed gcc pendantic warnings. | |
3252 | Handle longjmp in Cygwin. | |
3253 | Fixed png_get_current_row_number() in the interlaced case. | |
3254 | Cleaned up ALPHA flags and transformations. | |
3255 | Implemented expansion to 16 bits. | |
3256 | ||
3257 | Version 1.5.2beta02 [February 19, 2011] | |
3258 | Fixed mistake in the descriptions of user read_transform and write_transform | |
3259 | function prototypes in the manual. The row_info struct is png_row_infop. | |
3260 | Reverted png_get_current_row_number() to previous (1.5.2beta01) behavior. | |
3261 | Corrected png_get_current_row_number documentation | |
3262 | Fixed the read/write row callback documentation. | |
3263 | This documents the current behavior, where the callback is called after | |
3264 | every row with information pertaining to the next row. | |
3265 | ||
3266 | Version 1.5.2beta03 [March 3, 2011] | |
3267 | Fixed scripts/makefile.vcwin32 | |
3268 | Updated contrib/pngsuite/README to add the word "modify". | |
3269 | Define PNG_ALLOCATED to blank when _MSC_VER<1300. | |
3270 | ||
3271 | Version 1.5.2rc01 [March 19, 2011] | |
3272 | Define remaining attributes to blank when MSC_VER<1300. | |
3273 | ifdef out mask arrays in pngread.c when interlacing is not supported. | |
3274 | ||
3275 | Version 1.5.2rc02 [March 22, 2011] | |
3276 | Added a hint to try CPP=/bin/cpp if "cpp -E" fails in scripts/pnglibconf.mak | |
3277 | and in contrib/pngminim/*/makefile, eg., on SunOS 5.10, and removed "strip" | |
3278 | from the makefiles. | |
3279 | Fixed a bug (present since libpng-1.0.7) that makes png_handle_sPLT() fail | |
3280 | to compile when PNG_NO_POINTER_INDEXING is defined (Chubanov Kirill) | |
3281 | ||
3282 | Version 1.5.2rc03 [March 24, 2011] | |
3283 | Don't include standard header files in png.h while building the symbol table, | |
3284 | to avoid cpp failure on SunOS (introduced PNG_BUILDING_SYMBOL_TABLE macro). | |
3285 | ||
3286 | Version 1.5.2 [March 31, 2011] | |
3287 | No changes. | |
3288 | ||
3289 | Version 1.5.3beta01 [April 1, 2011] | |
3290 | Re-initialize the zlib compressor before compressing non-IDAT chunks. | |
3291 | Added API functions (png_set_text_compression_level() and four others) to | |
3292 | set parameters for zlib compression of non-IDAT chunks. | |
3293 | ||
3294 | Version 1.5.3beta02 [April 3, 2011] | |
3295 | Updated scripts/symbols.def with new API functions. | |
3296 | Only compile the new zlib re-initializing code when text or iCCP is | |
3297 | supported, using PNG_WRITE_COMPRESSED_TEXT_SUPPORTED macro. | |
3298 | Improved the optimization of the zlib CMF byte (see libpng-1.2.6beta03). | |
3299 | Optimize the zlib CMF byte in non-IDAT compressed chunks | |
3300 | ||
3301 | Version 1.5.3beta03 [April 16, 2011] | |
3302 | Fixed gcc -ansi -pedantic compile. A strict ANSI system does not have | |
3303 | snprintf, and the "__STRICT_ANSI__" detects that condition more reliably | |
3304 | than __STDC__ (John Bowler). | |
3305 | Removed the PNG_PTR_NORETURN attribute because it too dangerous. It tells | |
3306 | the compiler that a user supplied callback (the error handler) does not | |
3307 | return, yet there is no guarantee in practice that the application code | |
3308 | will correctly implement the error handler because the compiler only | |
3309 | issues a warning if there is a mistake (John Bowler). | |
3310 | Removed the no-longer-used PNG_DEPSTRUCT macro. | |
3311 | Updated the zlib version to 1.2.5 in the VStudio project. | |
3312 | Fixed 64-bit builds where png_uint_32 is smaller than png_size_t in | |
3313 | pngwutil.c (John Bowler). | |
3314 | Fixed bug with stripping the filler or alpha channel when writing, that | |
3315 | was introduced in libpng-1.5.2beta01 (bug report by Andrew Church). | |
3316 | ||
3317 | Version 1.5.3beta04 [April 27, 2011] | |
3318 | Updated pngtest.png with the new zlib CMF optimization. | |
3319 | Cleaned up conditional compilation code and of background/gamma handling | |
3320 | Internal changes only except a new option to avoid compiling the | |
3321 | png_build_grayscale_palette API (which is not used at all internally.) | |
3322 | The main change is to move the transform tests (READ_TRANSFORMS, | |
3323 | WRITE_TRANSFORMS) up one level to the caller of the APIs. This avoids | |
3324 | calls to spurious functions if all transforms are disabled and slightly | |
3325 | simplifies those functions. Pngvalid modified to handle this. | |
3326 | A minor change is to stop the strip_16 and expand_16 interfaces from | |
3327 | disabling each other; this allows the future alpha premultiplication | |
3328 | code to use 16-bit intermediate values while still producing 8-bit output. | |
3329 | png_do_background and png_do_gamma have been simplified to take a single | |
3330 | pointer to the png_struct rather than pointers to every item required | |
3331 | from the png_struct. This makes no practical difference to the internal | |
3332 | code. | |
3333 | A serious bug in the pngvalid internal routine 'standard_display_init' has | |
3334 | been fixed - this failed to initialize the red channel and accidentally | |
3335 | initialized the alpha channel twice. | |
3336 | Changed png_struct jmp_buf member name from png_jmpbuf to tmp_jmpbuf to | |
3337 | avoid a possible clash with the png_jmpbuf macro on some platforms. | |
3338 | ||
3339 | Version 1.5.3beta05 [May 6, 2011] | |
3340 | Added the "_POSIX_SOURCE" feature test macro to ensure libpng sees the | |
3341 | correct API. _POSIX_SOURCE is defined in pngpriv.h, pngtest.c and | |
3342 | pngvalid.c to ensure that POSIX conformant systems disable non-POSIX APIs. | |
3343 | Removed png_snprintf and added formatted warning messages. This change adds | |
3344 | internal APIs to allow png_warning messages to have parameters without | |
3345 | requiring the host OS to implement snprintf. As a side effect the | |
3346 | dependency of the tIME-supporting RFC1132 code on stdio is removed and | |
3347 | PNG_NO_WARNINGS does actually work now. | |
3348 | Pass "" instead of '\0' to png_default_error() in png_err(). This mistake | |
3349 | was introduced in libpng-1.2.20beta01. This fixes CVE-2011-2691. | |
3350 | Added PNG_WRITE_OPTIMIZE_CMF_SUPPORTED macro to make the zlib "CMF" byte | |
3351 | optimization configureable. | |
3352 | IDAT compression failed if preceded by a compressed text chunk (bug | |
3353 | introduced in libpng-1.5.3beta01-02). This was because the attempt to | |
3354 | reset the zlib stream in png_write_IDAT happened after the first IDAT | |
3355 | chunk had been deflated - much too late. In this change internal | |
3356 | functions were added to claim/release the z_stream and, hopefully, make | |
3357 | the code more robust. Also deflateEnd checking is added - previously | |
3358 | libpng would ignore an error at the end of the stream. | |
3359 | ||
3360 | Version 1.5.3beta06 [May 8, 2011] | |
3361 | Removed the -D_ALL_SOURCE from definitions for AIX in CMakeLists.txt | |
3362 | Implemented premultiplied alpha support: png_set_alpha_mode API | |
3363 | ||
3364 | Version 1.5.3beta07 [May 11, 2011] | |
3365 | Added expand_16 support to the high level interface. | |
3366 | Added named value and 'flag' gamma support to png_set_gamma. Made a minor | |
3367 | change from the previous (unreleased) ABI/API to hide the exact value used | |
3368 | for Macs - it's not a good idea to embed this in the ABI! | |
3369 | Moved macro definitions for PNG_HAVE_IHDR, PNG_HAVE_PLTE, and PNG_AFTER_IDAT | |
3370 | from pngpriv.h to png.h because they must be visible to applications | |
3371 | that call png_set_unknown_chunks(). | |
3372 | Check for up->location !PNG_AFTER_IDAT when writing unknown chunks | |
3373 | before IDAT. | |
3374 | ||
3375 | Version 1.5.3beta08 [May 16, 2011] | |
3376 | Improved "pngvalid --speed" to exclude more of pngvalid from the time. | |
3377 | Documented png_set_alpha_mode(), other changes in libpng.3/libpng-manual.txt | |
3378 | The cHRM chunk now sets the defaults for png_set_rgb_to_gray() (when negative | |
3379 | parameters are supplied by the caller), while in the absence of cHRM | |
3380 | sRGB/Rec 709 values are still used. This introduced a divide-by-zero | |
3381 | bug in png_handle_cHRM(). | |
3382 | The bKGD chunk no longer overwrites the background value set by | |
3383 | png_set_background(), allowing the latter to be used before the file | |
3384 | header is read. It never performed any useful function to override | |
3385 | the default anyway. | |
3386 | Added memory overwrite and palette image checks to pngvalid.c | |
3387 | Previously palette image code was poorly checked. Since the transformation | |
3388 | code has a special palette path in most cases this was a severe weakness. | |
3389 | Minor cleanup and some extra checking in pngrutil.c and pngrtran.c. When | |
3390 | expanding an indexed image, always expand to RGBA if transparency is | |
3391 | present. | |
3392 | ||
3393 | Version 1.5.3beta09 [May 17, 2011] | |
3394 | Reversed earlier 1.5.3 change of transformation order; move png_expand_16 | |
3395 | back where it was. The change doesn't work because it requires 16-bit | |
3396 | gamma tables when the code only generates 8-bit ones. This fails | |
3397 | silently; the libpng code just doesn't do any gamma correction. Moving | |
3398 | the tests back leaves the old, inaccurate, 8-bit gamma calculations, but | |
3399 | these are clearly better than none! | |
3400 | ||
3401 | Version 1.5.3beta10 [May 20, 2011] | |
3402 | ||
3403 | png_set_background() and png_expand_16() did not work together correctly. | |
3404 | This problem is present in 1.5.2; if png_set_background is called with | |
3405 | need_expand false and the matching 16 bit color libpng erroneously just | |
3406 | treats it as an 8-bit color because of where png_do_expand_16 is in the | |
3407 | transform list. This simple fix reduces the supplied colour to 8-bits, | |
3408 | so it gets smashed, but this is better than the current behavior. | |
3409 | Added tests for expand16, more fixes for palette image tests to pngvalid. | |
3410 | Corrects the code for palette image tests and disables attempts to | |
3411 | validate palette colors. | |
3412 | ||
3413 | Version 1.5.3rc01 [June 3, 2011] | |
3414 | No changes. | |
3415 | ||
3416 | Version 1.5.3rc02 [June 8, 2011] | |
3417 | Fixed uninitialized memory read in png_format_buffer() (Bug report by | |
3418 | Frank Busse, CVE-2011-2501, related to CVE-2004-0421). | |
3419 | ||
3420 | Version 1.5.3beta11 [June 11, 2011] | |
3421 | Fixed png_handle_sCAL which is broken in 1.5. This fixes CVE 2011-2692. | |
3422 | Added sCAL to pngtest.png | |
3423 | Revised documentation about png_set_user_limits() to say that it also affects | |
3424 | png writing. | |
3425 | Revised handling of png_set_user_limits() so that it can increase the | |
3426 | limit beyond the PNG_USER_WIDTH|HEIGHT_MAX; previously it could only | |
3427 | reduce it. | |
3428 | Make the 16-to-8 scaling accurate. Dividing by 256 with no rounding is | |
3429 | wrong (high by one) 25% of the time. Dividing by 257 with rounding is | |
3430 | wrong in 128 out of 65536 cases. Getting the right answer all the time | |
3431 | without division is easy. | |
3432 | Added "_SUPPORTED" to the PNG_WRITE_CUSTOMIZE_ZTXT_COMPRESSION macro. | |
3433 | Added projects/owatcom, an IDE project for OpenWatcom to replace | |
3434 | scripts/makefile.watcom. This project works with OpenWatcom 1.9. The | |
3435 | IDE autogenerates appropriate makefiles (libpng.mk) for batch processing. | |
3436 | The project is configurable, unlike the Visual Studio project, so long | |
3437 | as the developer has an awk. | |
3438 | Changed png_set_gAMA to limit the gamma value range so that the inverse | |
3439 | of the stored value cannot overflow the fixed point representation, | |
3440 | and changed other things OpenWatcom warns about. | |
3441 | Revised pngvalid.c to test PNG_ALPHA_MODE_SUPPORTED correctly. This allows | |
3442 | pngvalid to build when ALPHA_MODE is not supported, which is required if | |
3443 | it is to build on libpng 1.4. | |
3444 | Removed string/memory macros that are no longer used and are not | |
3445 | necessarily fully supportable, particularly png_strncpy and png_snprintf. | |
3446 | Added log option to pngvalid.c and attempted to improve gamma messages. | |
3447 | ||
3448 | Version 1.5.3 [omitted] | |
3449 | People found the presence of a beta release following an rc release | |
3450 | to be confusing; therefore we bump the version to libpng-1.5.4beta01 | |
3451 | and there will be no libpng-1.5.3 release. | |
3452 | ||
3453 | Version 1.5.4beta01 [June 14, 2011] | |
3454 | Made it possible to undefine PNG_READ_16_TO_8_ACCURATE_SCALE_SUPPORTED | |
3455 | to get the same (inaccurate) output as libpng-1.5.2 and earlier. | |
3456 | Moved definitions of PNG_HAVE_IHDR, PNG_AFTER_IDAT, and PNG_HAVE_PLTE | |
3457 | outside of an unknown-chunk block in png.h because they are also | |
3458 | needed for other uses. | |
3459 | ||
3460 | Version 1.5.4beta02 [June 14, 2011] | |
3461 | Fixed and clarified LEGACY 16-to-8 scaling code. | |
3462 | Added png_set_chop_16() API, to match inaccurate results from previous | |
3463 | libpng versions. | |
3464 | Removed the ACCURATE and LEGACY options (they are no longer useable) | |
3465 | Use the old scaling method for background if png_set_chop_16() was | |
3466 | called. | |
3467 | Made png_set_chop_16() API removeable by disabling PNG_CHOP_16_TO_8_SUPPORTED | |
3468 | ||
3469 | Version 1.5.4beta03 [June 15, 2011] | |
3470 | Fixed a problem in png_do_expand_palette() exposed by optimization in | |
3471 | 1.5.3beta06 | |
3472 | Also removed a spurious and confusing "trans" member ("trans") from png_info. | |
3473 | The palette expand optimization prevented expansion to an intermediate RGBA | |
3474 | form if tRNS was present but alpha was marked to be stripped; this exposed | |
3475 | a check for tRNS in png_do_expand_palette() which is inconsistent with the | |
3476 | code elsewhere in libpng. | |
3477 | Correction to the expand_16 code; removed extra instance of | |
3478 | png_set_scale_16_to_8 from pngpriv.h | |
3479 | ||
3480 | Version 1.5.4beta04 [June 16, 2011] | |
3481 | Added a missing "#ifdef PNG_READ_BACKGROUND_SUPPORTED/#endif" in pngrtran.c | |
3482 | Added PNG_TRANSFORM_CHOP_16 to the high-level read transforms. | |
3483 | Made PNG_READ_16_TO_8_ACCURATE_SCALE configurable again. If this is | |
3484 | not enabled, png_set_strip_16() and png_do_scale_16_to_8() aren't built. | |
3485 | Revised contrib/visupng, gregbook, and pngminim to demonstrate chop_16_to_8 | |
3486 | ||
3487 | Version 1.5.4beta05 [June 16, 2011] | |
3488 | Renamed png_set_strip_16() to png_set_scale_16() and renamed | |
3489 | png_set_chop_16() to png_set_strip(16) in an attempt to minimize the | |
3490 | behavior changes between libpng14 and libpng15. | |
3491 | ||
3492 | Version 1.5.4beta06 [June 18, 2011] | |
3493 | Fixed new bug that was causing both strip_16 and scale_16 to be applied. | |
3494 | ||
3495 | Version 1.5.4beta07 [June 19, 2011] | |
3496 | Fixed pngvalid, simplified macros, added checking for 0 in sCAL. | |
3497 | The ACCURATE scale macro is no longer defined in 1.5 - call the | |
3498 | png_scale_16_to_8 API. Made sure that PNG_READ_16_TO_8 is still defined | |
3499 | if the png_strip_16_to_8 API is present. png_check_fp_number now | |
3500 | maintains some state so that positive, negative and zero values are | |
3501 | identified. sCAL uses these to be strictly spec conformant. | |
3502 | ||
3503 | Version 1.5.4beta08 [June 23, 2011] | |
3504 | Fixed pngvalid if ACCURATE_SCALE is defined. | |
3505 | Updated scripts/pnglibconf.h.prebuilt. | |
3506 | ||
3507 | Version 1.5.4rc01 [June 30, 2011] | |
3508 | Define PNG_ALLOCATED to "restrict" only if MSC_VER >= 1400. | |
3509 | ||
3510 | Version 1.5.4 [July 7, 2011] | |
3511 | No changes. | |
3512 | ||
3513 | Version 1.5.5beta01 [July 13, 2011] | |
3514 | Fixed some typos and made other minor changes in the manual. | |
3515 | Updated contrib/pngminus/makefile.std (Samuli Souminen) | |
3516 | ||
3517 | Version 1.5.5beta02 [July 14, 2011] | |
3518 | Revised Makefile.am and Makefile.in to look in the right directory for | |
3519 | pnglibconf.h.prebuilt | |
3520 | ||
3521 | Version 1.5.5beta03 [July 27, 2011] | |
3522 | Enabled compilation with g++ compiler. This compiler does not recognize | |
3523 | the file extension, so it always compiles with C++ rules. Made minor | |
3524 | changes to pngrutil.c to cast results where C++ expects it but C does not. | |
3525 | Minor editing of libpng.3 and libpng-manual.txt. | |
3526 | ||
3527 | Version 1.5.5beta04 [July 29, 2011] | |
3528 | Revised CMakeLists.txt (Clifford Yapp) | |
3529 | Updated commentary about the png_rgb_to_gray() default coefficients | |
3530 | in the manual and in pngrtran.c | |
3531 | ||
3532 | Version 1.5.5beta05 [August 17, 2011] | |
3533 | Prevent unexpected API exports from non-libpng DLLs on Windows. The "_DLL" | |
3534 | is removed from the test of whether a DLL is being built (this erroneously | |
3535 | caused the libpng APIs to be marked as DLL exports in static builds under | |
3536 | Microsoft Visual Studio). Almost all of the libpng building configuration | |
3537 | is moved from pngconf.h to pngpriv.h, but PNG_DLL_EXPORT remains in | |
3538 | pngconf.h, though, so that it is colocated with the import definition (it | |
3539 | is no longer used anywhere in the installed headers). The VStudio project | |
3540 | definitions have been cleaned up: "_USRDLL" has been removed from the | |
3541 | static library builds (this was incorrect), and PNG_USE_DLL has been added | |
3542 | to pngvalid to test the functionality (pngtest does not supply it, | |
3543 | deliberately). The spurious "_EXPORTS" has been removed from the | |
3544 | libpng build (all these errors were a result of copy/paste between project | |
3545 | configurations.) | |
3546 | Added new types and internal functions for CIE RGB end point handling to | |
3547 | pngpriv.h (functions yet to be implemented). | |
3548 | ||
3549 | Version 1.5.5beta06 [August 26, 2011] | |
3550 | Ensure the CMAKE_LIBRARY_OUTPUT_DIRECTORY is set in CMakeLists.txt | |
3551 | (Clifford Yap) | |
3552 | Fixes to rgb_to_gray and cHRM XYZ APIs (John Bowler): | |
3553 | The rgb_to_gray code had errors when combined with gamma correction. | |
3554 | Some pixels were treated as true grey when they weren't and such pixels | |
3555 | and true grey ones were not gamma corrected (the original value of the | |
3556 | red component was used instead). APIs to get and set cHRM using color | |
3557 | space end points have been added and the rgb_to_gray code that defaults | |
3558 | based on cHRM, and the divide-by-zero bug in png_handle_cHRM (CERT | |
3559 | VU#477046, CVE-2011-3328, introduced in 1.5.4) have been corrected. | |
3560 | A considerable number of tests has been added to pngvalid for the | |
3561 | rgb_to_gray transform. | |
3562 | Arithmetic errors in rgb_to_gray whereby the calculated gray value was | |
3563 | truncated to the bit depth rather than rounded have been fixed except in | |
3564 | the 8-bit non-gamma-corrected case (where consistency seems more important | |
3565 | than correctness.) The code still has considerable inaccuracies in the | |
3566 | 8-bit case because 8-bit linear arithmetic is used. | |
3567 | ||
3568 | Version 1.5.5beta07 [September 7, 2011] | |
3569 | Added "$(ARCH)" option to makefile.darwin | |
3570 | Added SunOS support to configure.ac and Makefile.am | |
3571 | Changed png_chunk_benign_error() to png_warning() in png.c, in | |
3572 | png_XYZ_from_xy_checked(). | |
3573 | ||
3574 | Version 1.5.5beta08 [September 10, 2011] | |
3575 | Fixed 64-bit compilation errors (gcc). The errors fixed relate | |
3576 | to conditions where types that are 32 bits in the GCC 32-bit | |
3577 | world (uLong and png_size_t) become 64 bits in the 64-bit | |
3578 | world. This produces potential truncation errors which the | |
3579 | compiler correctly flags. | |
3580 | Relocated new HAVE_SOLARIS_LD definition in configure.ac | |
3581 | Constant changes for 64-bit compatibility (removal of L suffixes). The | |
3582 | 16-bit cases still use "L" as we don't have a 16-bit test system. | |
3583 | ||
3584 | Version 1.5.5rc01 [September 15, 2011] | |
3585 | Removed "L" suffixes in pngpriv.h | |
3586 | ||
3587 | Version 1.5.5 [September 22, 2011] | |
3588 | No changes. | |
3589 | ||
3590 | Version 1.5.6beta01 [September 22, 2011] | |
3591 | Fixed some 64-bit type conversion warnings in pngrtran.c | |
3592 | Moved row_info from png_struct to a local variable. | |
3593 | The various interlace mask arrays have been made into arrays of | |
3594 | bytes and made PNG_CONST and static (previously some arrays were | |
3595 | marked PNG_CONST and some weren't). | |
3596 | Additional checks have been added to the transform code to validate the | |
3597 | pixel depths after the transforms on both read and write. | |
3598 | Removed some redundant code from pngwrite.c, in png_destroy_write_struct(). | |
3599 | Changed chunk reading/writing code to use png_uint_32 instead of png_byte[4]. | |
3600 | This removes the need to allocate temporary strings for chunk names on | |
3601 | the stack in the read/write code. Unknown chunk handling still uses the | |
3602 | string form because this is exposed in the API. | |
3603 | ||
3604 | Version 1.5.6beta02 [September 26, 2011] | |
3605 | Added a note in the manual the png_read_update_info() must be called only | |
3606 | once with a particular info_ptr. | |
3607 | Fixed a typo in the definition of the new PNG_STRING_FROM_CHUNK(s,c) macro. | |
3608 | ||
3609 | Version 1.5.6beta03 [September 28, 2011] | |
3610 | Revised test-pngtest.sh to report FAIL when pngtest fails. | |
3611 | Added "--strict" option to pngtest, to report FAIL when the failure is | |
3612 | only because the resulting valid files are different. | |
3613 | Revised CMakeLists.txt to work with mingw and removed some material from | |
3614 | CMakeLists.txt that is no longer useful in libpng-1.5. | |
3615 | ||
3616 | Version 1.5.6beta04 [October 5, 2011] | |
3617 | Fixed typo in Makefile.in and Makefile.am ("-M Wl" should be "-M -Wl")." | |
3618 | ||
3619 | Version 1.5.6beta05 [October 12, 2011] | |
3620 | Speed up png_combine_row() for interlaced images. This reduces the generality | |
3621 | of the code, allowing it to be optimized for Adam7 interlace. The masks | |
3622 | passed to png_combine_row() are now generated internally, avoiding | |
3623 | some code duplication and localizing the interlace handling somewhat. | |
3624 | Align png_struct::row_buf - previously it was always unaligned, caused by | |
3625 | a bug in the code that attempted to align it; the code needs to subtract | |
3626 | one from the pointer to take account of the filter byte prepended to | |
3627 | each row. | |
3628 | Optimized png_combine_row() when rows are aligned. This gains a small | |
3629 | percentage for 16-bit and 32-bit pixels in the typical case where the | |
3630 | output row buffers are appropriately aligned. The optimization was not | |
3631 | previously possible because the png_struct buffer was always misaligned. | |
3632 | Fixed bug in png_write_chunk_header() debug print, introduced in 1.5.6beta01. | |
3633 | ||
3634 | Version 1.5.6beta06 [October 17, 2011] | |
3635 | Removed two redundant tests for unitialized row. | |
3636 | Fixed a relatively harmless memory overwrite in compressed text writing | |
3637 | with a 1 byte zlib buffer. | |
3638 | Add ability to call png_read_update_info multiple times to pngvalid.c. | |
3639 | Fixes for multiple calls to png_read_update_info. These fixes attend to | |
3640 | most of the errors revealed in pngvalid, however doing the gamma work | |
3641 | twice results in inaccuracies that can't be easily fixed. There is now | |
3642 | a warning in the code if this is going to happen. | |
3643 | Turned on multiple png_read_update_info in pngvalid transform tests. | |
3644 | Prevent libpng from overwriting unused bits at the end of the image when | |
3645 | it is not byte aligned, while reading. Prior to libpng-1.5.6 libpng would | |
3646 | overwrite the partial byte at the end of each row if the row width was not | |
3647 | an exact multiple of 8 bits and the image is not interlaced. | |
3648 | ||
3649 | Version 1.5.6beta07 [October 21, 2011] | |
3650 | Made png_ptr->prev_row an aligned pointer into png_ptr->big_prev_row | |
3651 | (Mans Rullgard). | |
3652 | ||
3653 | Version 1.5.6rc01 [October 26, 2011] | |
3654 | Changed misleading "Missing PLTE before cHRM" warning to "Out of place cHRM" | |
3655 | ||
3656 | Version 1.5.6rc02 [October 27, 2011] | |
3657 | Added LSR() macro to defend against buggy compilers that evaluate non-taken | |
3658 | code branches and complain about out-of-range shifts. | |
3659 | ||
3660 | Version 1.5.6rc03 [October 28, 2011] | |
3661 | Renamed the LSR() macro to PNG_LSR() and added PNG_LSL() macro. | |
3662 | Fixed compiler warnings with Intel and MSYS compilers. The logical shift | |
3663 | fix for Microsoft Visual C is required by other compilers, so this | |
3664 | enables that fix for all compilers when using compile-time constants. | |
3665 | Under MSYS 'byte' is a name declared in a system header file, so we | |
3666 | changed the name of a local variable to avoid the warnings that result. | |
3667 | Added #define PNG_ALIGN_TYPE PNG_ALIGN_NONE to contrib/pngminim/*/pngusr.h | |
3668 | ||
3669 | Version 1.5.6 [November 3, 2011] | |
3670 | No changes. | |
3671 | ||
3672 | Send comments/corrections/commendations to png-mng-implement at lists.sf.net | |
3673 | (subscription required; visit | |
3674 | https://lists.sourceforge.net/lists/listinfo/png-mng-implement | |
3675 | to subscribe) | |
3676 | or to glennrp at users.sourceforge.net | |
3677 | ||
3678 | Glenn R-P | |
3679 | #endif |