1
CHANGES - changes for libpng
4
added reader into png.h
5
fixed small problems in stub file
8
split up pngwrite.c to several files
11
cleaned up writer, adding a few new tranformations
12
fixed some bugs in writer
13
interfaced with zlib 0.5
15
added check for 64 KB blocks for 16 bit machines
17
cleaned up code and commented code
18
simplified time handling into png_time
19
created png_color_16 and png_color_8 to handle color needs
20
cleaned up color type defines
22
made various names more consistant
23
interfaced with zlib 0.71
24
cleaned up zTXt reader and writer (using zlib's Reset functions)
25
split transformations into pngrtran.c and pngwtran.c
27
interfaced with zlib 0.8
28
fixed many reading and writing bugs
29
saved using 3 spaces instead of tabs
31
added png_large_malloc() and png_large_free()
33
cleaned up some compiler warnings
34
added png_start_read_image()
36
cleaned up lots of bugs
37
finished dithering and other stuff
39
changed name from pnglib to libpng
40
version 0.71 [June, 1995]
41
changed pngtest.png for zlib 0.93
42
fixed error in libpng.txt and example.c
45
added png_set_filler()
46
split up pngstub.c into pngmem.c, pngio.c, and pngerror.c
47
added #define's to remove unwanted code
48
moved png_info_init() to png.c
49
added old_size into png_realloc()
50
added functions to manually set filtering and compression info
51
changed compression parameters based on image type
52
optimized filter selection code
54
changed external functions passing floats to doubles (k&r problems?)
55
put all the configurable stuff in pngconf.h
56
enabled png_set_shift to work with paletted images on read
57
added png_read_update_info() - updates info structure with
59
version 0.81 [August, 1995]
60
incorporated Tim Wegner's medium model code (thanks, Tim)
61
version 0.82 [September, 1995]
63
version 0.85 [December, 1995]
64
added more medium model code (almost everything's a far)
65
added i/o, error, and memory callback functions
66
fixed some bugs (16 bit, 4 bit interlaced, etc.)
67
added first run progressive reader (barely tested)
68
version 0.86 [January, 1996]
70
improved documentation
71
version 0.87 [January, 1996]
72
fixed medium model bugs
73
fixed other bugs introduced in 0.85 and 0.86
74
added some minor documentation
75
version 0.88 [January, 1996]
76
fixed progressive bugs
77
replaced tabs with spaces
78
cleaned up documentation
79
added callbacks for read/write and warning/error functions
80
version 0.89 [July, 1996]
81
added new initialization API to make libpng work better with shared libs
82
we now have png_create_read_struct(), png_create_write_struct(),
83
png_create_info_struct(), png_destroy_read_struct(), and
84
png_destroy_write_struct() instead of the separate calls to
85
malloc and png_read_init(), png_info_init(), and png_write_init()
86
changed warning/error callback functions to fix bug - this means you
87
should use the new initialization API if you were using the old
88
png_set_message_fn() calls, and that the old API no longer exists
89
so that people are aware that they need to change their code
90
changed filter selection API to allow selection of multiple filters
91
since it didn't work in previous versions of libpng anyways
92
optimized filter selection code
93
fixed png_set_background() to allow using an arbitrary RGB color for
95
fixed gamma and background correction for paletted images, so
96
png_correct_palette is not needed unless you are correcting an
97
external palette (you will need to #define PNG_CORRECT_PALETTE_SUPPORTED
98
in pngconf.h) - if nobody uses this, it may disappear in the future.
99
fixed bug with Borland 64K memory allocation (Alexander Lehmann)
100
fixed bug in interlace handling (Smarasderagd, I think)
101
added more error checking for writing and image to reduce invalid files
102
separated read and write functions so that they won't both be linked
103
into a binary when only reading or writing functionality is used
104
new pngtest image also has interlacing and zTXt
105
updated documentation to reflect new API
106
version 0.90 [January, 1997]
107
made CRC errors/warnings on critical and ancillary chunks configurable
108
libpng will use the zlib CRC routines by (compile-time) default
109
changed DOS small/medium model memory support - needs zlib 1.04 (Tim Wegner)
110
added external C++ wrapper statements to png.h (Gilles Dauphin)
111
allow PNG file to be read when some or all of file signature has already
112
been read from the beginning of the stream. ****This affects the size
113
of info_struct and invalidates all programs that use a shared libpng****
114
fixed png_filler() declarations
115
fixed? background color conversions
116
fixed order of error function pointers to match documentation
117
current chunk name is now available in png_struct to reduce the number
118
of nearly identical error messages (will simplify multi-lingual
119
support when available)
120
try to get ready for unknown-chunk callback functions:
121
- previously read critical chunks are flagged, so the chunk handling
122
routines can determine if the chunk is in the right place
123
- all chunk handling routines have the same prototypes, so we will
124
be able to handle all chunks via a callback mechanism
125
try to fix Linux "setjmp" buffer size problems
126
removed png_large_malloc, png_large_free, and png_realloc functions.
127
version 0.95 [March, 1997]
128
fixed bug in pngwutil.c allocating "up_row" twice and "avg_row" never
129
fixed bug in PNG file signature compares when start != 0
130
changed parameter type of png_set_filler(...filler...) from png_byte
132
added test for MACOS to ensure that both math.h and fp.h are not #included
133
added macros for libpng to be compiled as a Windows DLL (Andreas Kupries)
134
added "packswap" transformation, which changes the endianness of
135
packed-pixel bytes (Kevin Bracey)
136
added "strip_alpha" transformation, which removes the alpha channel of
137
input images without using it (not neccesarily a good idea)
138
added "swap_alpha" transformation, which puts the alpha channel in front
139
of the color bytes instead of after
140
removed all implicit variable tests which assume NULL == 0 (I think)
141
changed several variables to "png_size_t" to show 16/32-bit limitations
142
added new pCAL chunk read/write support
143
added experimental filter selection weighting (Greg Roelofs)
144
removed old png_set_rgbx() and png_set_xrgb() functions that have been
145
obsolete for about 2 years now (use png_set_filler() instead)
146
added macros to read 16- and 32-bit ints directly from buffer, to be
147
used only on those systems that support it (namely PowerPC and 680x0)
148
With some testing, this may become the default for MACOS/PPC systems.
149
only calculate CRC on data if we are going to use it
150
added macros for zTXt compression type PNG_zTXt_COMPRESSION_???
151
added macros for simple libpng debugging output selectable at compile time
152
removed PNG_READ_END_MODE in progressive reader (Smarasderagd)
153
more description of info_struct in libpng.txt and png.h
154
more instructions in example.c
155
more chunk types tested in pngtest.c
156
renamed pngrcb.c to pngset.c, and all png_read_<chunk> functions to be
157
png_set_<chunk>. We now have corresponding png_get_<chunk>
158
functions in pngget.c to get infomation in info_ptr. This isolates
159
the application from the internal organization of png_info_struct
160
(good for shared library implementations).
161
version 0.96 [May, 1997]
162
fixed serious bug with < 8bpp images introduced in 0.95
163
fixed 256-color transparency bug (Greg Roelofs)
164
fixed up documentation (Greg Roelofs, Laszlo Nyul)
165
fixed "error" in pngconf.h for Linux setjmp() behaviour
166
fixed DOS medium model support (Tim Wegner)
167
fixed png_check_keyword() for case with error in static string text
168
added read of CRC after IEND chunk for embedded PNGs (Laszlo Nyul)
169
added typecasts to quiet compiler errors
170
added more debugging info
171
version 0.97 [January, 1998]
172
removed PNG_USE_OWN_CRC capability
173
relocated png_set_crc_action from pngrutil.c to pngrtran.c
174
fixed typecasts of "new_key", etc. (Andreas Dilger)
175
added RFC 1152 [sic] date support
176
fixed bug in gamma handling of 4-bit grayscale
177
added 2-bit grayscale gamma handling (Glenn R-P)
178
added more typecasts. 65536L becomes (png_uint_32)65536L, etc. (Glenn R-P)
179
minor corrections in libpng.txt
180
added simple sRGB support (Glenn R-P)
181
easier conditional compiling, e.g. define PNG_READ/WRITE_NOT_FULLY_SUPPORTED;
182
all configurable options can be selected from command-line instead
183
of having to edit pngconf.h (Glenn R-P)
184
fixed memory leak in pngwrite.c (free info_ptr->text) (Glenn R-P)
185
added more conditions for png_do_background, to avoid changing
186
black pixels to background when a background is supplied and
187
no pixels are transparent
188
repaired PNG_NO_STDIO behaviour
189
tested NODIV support and made it default behaviour (Greg Roelofs)
190
added "-m" option and PNGTEST_DEBUG_MEMORY to pngtest (John Bowler)
191
regularized version numbering scheme and bumped shared-library major
192
version number to 2 to avoid problems with libpng 0.89 apps (Greg Roelofs)
193
version 0.98 [January, 1998]
194
cleaned up some typos in libpng.txt and in code documentation
195
fixed memory leaks in pCAL chunk processing (Glenn R-P and John Bowler)
196
cosmetic change "display_gamma" to "screen_gamma" in pngrtran.c
197
changed recommendation about file_gamma for PC images to .51 from .45,
198
in example.c and libpng.txt, added comments to distinguish between
199
screen_gamma, viewing_gamma, and display_gamma.
200
changed all references to RFC1152 to read RFC1123 and changed the
201
PNG_TIME_RFC1152_SUPPORTED macro to PNG_TIME_RFC1123_SUPPORTED
202
added png_invert_alpha capability (Glenn R-P -- suggestion by Jon Vincent)
203
changed srgb_intent from png_byte to int to avoid compiler bugs
204
version 0.99 [January 30, 1998]
205
free info_ptr->text instead of end_info_ptr->text in pngread.c (John Bowler)
206
fixed a longstanding "packswap" bug in pngtrans.c
207
fixed some inconsistencies in pngconf.h that prevented compiling with
208
PNG_READ_GAMMA_SUPPORTED and PNG_READ_hIST_SUPPORTED undefined
209
fixed some typos and made other minor rearrangement of libpng.txt (Andreas)
210
changed recommendation about file_gamma for PC images to .50 from .51 in
211
example.c and libpng.txt, and changed file_gamma for sRGB images to .45
212
added a number of functions to access information from the png structure
213
png_get_image_height(), etc. (Glenn R-P, suggestion by Brad Pettit)
214
added TARGET_MACOS similar to zlib-1.0.8
215
define PNG_ALWAYS_EXTERN when __MWERKS__ && WIN32 are defined
216
added type casting to all png_malloc() function calls
217
version 0.99a [January 31, 1998]
218
Added type casts and parentheses to all returns that return a value.(Tim W.)
219
version 0.99b [February 4, 1998]
220
Added type cast png_uint_32 on malloc function calls where needed.
221
Changed type of num_hist from png_uint_32 to int (same as num_palette).
222
Added checks for rowbytes overflow, in case png_size_t is less than 32 bits.
223
Renamed makefile.elf to makefile.lnx.
224
version 0.99c [February 7, 1998]
225
More type casting. Removed erroneous overflow test in pngmem.c.
226
Added png_buffered_memcpy() and png_buffered_memset(), apply them to rowbytes.
227
Added UNIX manual pages libpng.3 (incorporating libpng.txt) and png.5.
228
version 0.99d [February 11, 1998]
229
Renamed "far_to_near()" "png_far_to_near()"
231
Version 99c "buffered" operations didn't work as intended. Replaced them
232
with png_memcpy_check() and png_memset_check().
233
Added many "if (png_ptr == NULL) return" to quell compiler warnings about
234
unused png_ptr, mostly in pngget.c and pngset.c.
235
Check for overlength tRNS chunk present when indexed-color PLTE is read.
236
Cleaned up spelling errors in libpng.3/libpng.txt
237
Corrected a problem with png_get_tRNS() which returned undefined trans array
238
version 0.99e [February 28, 1998]
239
Corrected png_get_tRNS() again.
240
Add parentheses for easier reading of pngget.c, fixed "||" should be "&&".
241
Touched up example.c to make more of it compileable, although the entire
242
file still can't be compiled (Willem van Schaik)
243
Fixed a bug in png_do_shift() (Bryan Tsai)
244
Added a space in png.h prototype for png_write_chunk_start()
245
Replaced pngtest.png with one created with zlib 1.1.1
246
Changed pngtest to report PASS even when file size is different (Jean-loup G.)
247
Corrected some logic errors in png_do_invert_alpha() (Chris Patterson)
248
version 0.99f [March 5, 1998]
249
Corrected a bug in pngpread() introduced in version 99c (Kevin Bracey)
250
Moved makefiles into a "scripts" directory, and added INSTALL instruction file
251
Added makefile.os2 and pngos2.def (A. Zabolotny) and makefile.s2x (W. Sebok)
252
Added pointers to "note on libpng versions" in makefile.lnx and README
253
Added row callback feature when reading and writing nonprogressive rows
254
and added a test of this feature in pngtest.c
255
Added user transform callbacks, with test of the feature in pngtest.c
256
version 0.99g [March 6, 1998, morning]
257
Minor changes to pngtest.c to suppress compiler warnings.
258
Removed "beta" language from documentation.
259
version 0.99h [March 6, 1998, evening]
260
Minor changes to previous minor changes to pngtest.c
261
Changed PNG_READ_NOT_FULLY_SUPPORTED to PNG_READ_TRANSFORMS_NOT_SUPPORTED
262
and added PNG_PROGRESSIVE_READ_NOT_SUPPORTED macro
263
Added user transform capability
264
version 1.00 [March 7, 1998]
265
Changed several typedefs in pngrutil.c
266
Added makefile.wat (Pawel Mrochen), updated makefile.tc3 (Willem van Schaik)
267
replaced "while(1)" with "for(;;)"
268
added PNGARG() to prototypes in pngtest.c and removed some prototypes
269
updated some of the makefiles (Tom Lane)
270
changed some typedefs (s_start, etc.) in pngrutil.c
271
fixed dimensions of "short_months" array in pngwrite.c
272
Replaced ansi2knr.c with the one from jpeg-v6
273
version 1.0.0 [March 8, 1998]
274
Changed name from 1.00 to 1.0.0 (Adam Costello)
275
Added smakefile.ppc (with SCOPTIONS.ppc) for Amiga PPC (Andreas Kleinert)
276
version 1.0.0a [March 9, 1998]
277
Fixed three bugs in pngrtran.c to make gamma+background handling consistent
279
Changed format of the PNG_LIBPNG_VER integer to xyyzz instead of xyz
280
for major, minor, and bugfix releases. This is 10001. (Adam Costello,
282
Make months range from 1-12 in png_convert_to_rfc1123
283
version 1.0.0b [March 13, 1998]
284
Quieted compiler complaints about two empty "for" loops in pngrutil.c
285
Minor changes to makefile.s2x
286
Removed #ifdef/#endif around a png_free() in pngread.c
287
version 1.0.1 [March 14, 1998]
288
Changed makefile.s2x to reduce security risk of using a relative pathname
289
Fixed some typos in the documentation (Greg).
290
Fixed a problem with value of "channels" returned by png_read_update_info()
291
version 1.0.1a [April 21, 1998]
292
Optimized Paeth calculations by replacing abs() function calls with intrinsics
293
plus other loop optimizations. Improves avg decoding speed by about 20%.
294
Commented out i386istic "align" compiler flags in makefile.lnx.
295
Reduced the default warning level in some makefiles, to make them consistent.
296
Removed references to IJG and JPEG in the ansi2knr.c copyright statement.
297
Fixed a bug in png_do_strip_filler with XXRRGGBB => RRGGBB transformation.
298
Added grayscale and 16-bit capability to png_do_read_filler().
299
Fixed a bug in pngset.c, introduced in version 0.99c, that sets rowbytes
300
too large when writing an image with bit_depth < 8 (Bob Dellaca).
301
Corrected some bugs in the experimental weighted filtering heuristics.
302
Moved a misplaced pngrutil code block that truncates tRNS if it has more
303
than num_palette entries -- test was done before num_palette was defined.
304
Fixed a png_convert_to_rfc1123() bug that converts day 31 to 0 (Steve Eddins).
305
Changed compiler flags in makefile.wat for better optimization (Pawel Mrochen).
306
version 1.0.1b [May 2, 1998]
307
Relocated png_do_gray_to_rgb() within png_do_read_transformations() (Greg).
308
Relocated the png_composite macros from pngrtran.c to png.h (Greg).
309
Added makefile.sco (contributed by Mike Hopkirk).
310
Fixed two bugs (missing definitions of "istop") introduced in libpng-1.0.1a.
311
Fixed a bug in pngrtran.c that would set channels=5 under some circumstances.
312
More work on the Paeth-filtering, achieving imperceptible speedup (A Kleinert).
313
More work on loop optimization which may help when compiled with C++ compilers.
314
Added warnings when people try to use transforms they've defined out.
315
Collapsed 4 "i" and "c" loops into single "i" loops in pngrtran and pngwtran.
316
Revised paragraph about png_set_expand() in libpng.txt and libpng.3 (Greg)
317
version 1.0.1c [May 11, 1998]
318
Fixed a bug in pngrtran.c (introduced in libpng-1.0.1a) where the masks for
319
filler bytes should have been 0xff instead of 0xf.
320
Added max_pixel_depth=32 in pngrutil.c when using FILLER with palette images.
321
Moved PNG_WRITE_WEIGHTED_FILTER_SUPPORTED and PNG_WRITE_FLUSH_SUPPORTED
322
out of the PNG_WRITE_TRANSFORMS_NOT_SUPPORTED block of pngconf.h
323
Added "PNG_NO_WRITE_TRANSFORMS" etc., as alternatives for *_NOT_SUPPORTED,
324
for consistency, in pngconf.h
325
Added individual "ifndef PNG_NO_[CAPABILITY]" in pngconf.h to make it easier
326
to remove unwanted capabilities via the compile line
327
Made some corrections to grammar (which, it's) in documentation (Greg).
328
Corrected example.c, use of row_pointers in png_write_image().
329
version 1.0.1d [May 24, 1998]
330
Corrected several statements that used side effects illegally in pngrutil.c
331
and pngtrans.c, that were introduced in version 1.0.1b
332
Revised png_read_rows() to avoid repeated if-testing for NULL (A Kleinert)
333
More corrections to example.c, use of row_pointers in png_write_image()
335
Added pngdll.mak and pngdef.pas to scripts directory, contributed by
336
Bob Dellaca, to make a png32bd.dll with Borland C++ 4.5
337
Fixed error in example.c with png_set_text: num_text is 3, not 2 (Guido V.)
338
Changed several loops from count-down to count-up, for consistency.
339
version 1.0.1e [June 6, 1998]
340
Revised libpng.txt and libpng.3 description of png_set_read|write_fn(), and
341
added warnings when people try to set png_read_fn and png_write_fn in
343
Added a test such that png_do_gamma will be done when num_trans==0
344
for truecolor images that have defined a background. This corrects an
345
error that was introduced in libpng-0.90 that can cause gamma processing
347
Added tests in png.h to include "trans" and "trans_values" in structures
348
when PNG_READ_BACKGROUND_SUPPORTED or PNG_READ_EXPAND_SUPPORTED is defined.
349
Add png_free(png_ptr->time_buffer) in png_destroy_read_struct()
350
Moved png_convert_to_rfc_1123() from pngwrite.c to png.c
351
Added capability for user-provided malloc_fn() and free_fn() functions,
352
and revised pngtest.c to demonstrate their use, replacing the
353
PNGTEST_DEBUG_MEM feature.
354
Added makefile.w32, for Microsoft C++ 4.0 and later (Tim Wegner).
355
version 1.0.2 [June 14, 1998]
356
Fixed two bugs in makefile.bor .
357
version 1.0.2a [December 30, 1998]
358
Replaced and extended code that was removed from png_set_filler() in 1.0.1a.
359
Fixed a bug in png_do_filler() that made it fail to write filler bytes in
360
the left-most pixel of each row (Kevin Bracey).
361
Changed "static pngcharp tIME_string" to "static char tIME_string[30]"
362
in pngtest.c (Duncan Simpson).
363
Fixed a bug in pngtest.c that caused pngtest to try to write a tIME chunk
364
even when no tIME chunk was present in the source file.
365
Fixed a problem in pngrutil.c: gray_to_rgb didn't always work with 16-bit.
366
Fixed a problem in png_read_push_finish_row(), which would not skip some
367
passes that it should skip, for images that are less than 3 pixels high.
368
Interchanged the order of calls to png_do_swap() and png_do_shift()
369
in pngwtran.c (John Cromer).
370
Added #ifdef PNG_DEBUG/#endif surrounding use of PNG_DEBUG in png.h .
371
Changed "bad adaptive filter type" from error to warning in pngrutil.c .
372
Fixed a documentation error about default filtering with 8-bit indexed-color.
373
Separated the PNG_NO_STDIO macro into PNG_NO_STDIO and PNG_NO_CONSOLE_IO
375
Added png_set_rgb_to_gray() and png_get_rgb_to_gray_status() functions.
376
Added png_get_copyright() and png_get_header_version() functions.
377
Revised comments on png_set_progressive_read_fn() in libpng.txt and example.c
378
Added information about debugging in libpng.txt and libpng.3 .
379
Changed "ln -sf" to "ln -s -f" in makefile.s2x, makefile.lnx, and makefile.sco.
380
Removed lines after Dynamic Dependencies" in makefile.aco .
381
Revised makefile.dec to make a shared library (Jeremie Petit).
382
Removed trailing blanks from all files.
383
version 1.0.2a [January 6, 1999]
384
Removed misplaced #endif and #ifdef PNG_NO_EXTERN near the end of png.h
385
Added "if" tests to silence complaints about unused png_ptr in png.h and png.c
386
Changed "check_if_png" function in example.c to return true (nonzero) if PNG.
387
Changed libpng.txt to demonstrate png_sig_cmp() instead of png_check_sig()
389
version 1.0.3 [January 14, 1999]
390
Added makefile.hux, for Hewlett Packard HPUX 10.20 and 11.00 (Jim Rice)
391
Added a statement of Y2K compliance in png.h, libpng.3, and Y2KINFO.
392
version 1.0.3a [August 12, 1999]
393
Added check for PNG_READ_INTERLACE_SUPPORTED in pngread.c; issue a warning
394
if an attempt is made to read an interlaced image when it's not supported.
395
Added check if png_ptr->trans is defined before freeing it in pngread.c
396
Modified the Y2K statement to include versions back to version 0.71
397
Fixed a bug in the check for valid IHDR bit_depth/color_types in pngrutil.c
398
Modified makefile.wat (added -zp8 flag, ".symbolic", changed some comments)
399
Replaced leading blanks with tab characters in makefile.hux
400
Changed "dworkin.wustl.edu" to "ccrc.wustl.edu" in various documents.
401
Changed (float)red and (float)green to (double)red, (double)green
402
in png_set_rgb_to_gray() to avoid "promotion" problems in AIX.
403
Fixed a bug in pngconf.h that omitted <stdio.h> when PNG_DEBUG==0 (K Bracey).
404
Reformatted libpng.3 and libpngpf.3 with proper fonts (script by J. vanZandt).
405
Updated documentation to refer to the PNG-1.2 specification.
406
Removed ansi2knr.c and left pointers to the latest source for ansi2knr.c
407
in makefile.knr, INSTALL, and README (L. Peter Deutsch)
408
Fixed bugs in calculation of the length of rowbytes when adding alpha
409
channels to 16-bit images, in pngrtran.c (Chris Nokleberg)
410
Added function png_set_user_transform_info() to store user_transform_ptr,
411
user_depth, and user_channels into the png_struct, and a function
412
png_get_user_transform_ptr() to retrieve the pointer (Chris Nokleberg)
413
Added function png_set_empty_plte_permitted() to make libpng useable
415
Corrected the typedef for png_free_ptr in png.h (Jesse Jones).
416
Correct gamma with srgb is 45455 instead of 45000 in pngrutil.c, to be
417
consistent with PNG-1.2, and allow variance of 500 before complaining.
418
Added assembler code contributed by Intel in file pngvcrd.c and modified
419
makefile.w32 to use it (Nirav Chhatrapati, INTEL Corporation, Gilles Vollant)
420
Changed "ln -s -f" to "ln -f -s" in the makefiles to make Solaris happy.
421
Added some aliases for png_set_expand() in pngrtran.c, namely
422
png_set_expand_PLTE(), png_set_expand_depth(), and png_set_expand_tRNS()
423
(Greg Roelofs, in "PNG: The Definitive Guide").
424
Added makefile.beo for BEOS on X86, contributed by Sander Stok.
425
version 1.0.3b [August 26, 1999]
426
Replaced 2147483647L several places with PNG_MAX_UINT macro, defined in png.h
427
Changed leading blanks to tabs in all makefiles.
428
Define PNG_USE_PNGVCRD in makefile.w32, to get MMX assembler code.
429
Made alternate versions of png_set_expand() in pngrtran.c, namely
430
png_set_gray_1_2_4_to_8, png_set_palette_to_rgb, and png_set_tRNS_to_alpha
431
(Greg Roelofs, in "PNG: The Definitive Guide"). Deleted the 1.0.3a aliases.
432
Relocated start of 'extern "C"' block in png.h so it doesn't include pngconf.h
433
Revised calculation of num_blocks in pngmem.c to avoid a potentially
434
negative shift distance, whose results are undefined in the C language.
435
Added a check in pngset.c to prevent writing multiple tIME chunks.
436
Added a check in pngwrite.c to detect invalid small window_bits sizes.
437
version 1.0.3d [September 4, 1999]
438
Fixed type casting of igamma in pngrutil.c
439
Added new png_expand functions to scripts/pngdef.pas and pngos2.def
440
Added a demo read_user_transform_fn that examines the row filters in pngtest.c
441
version 1.0.4 [September 24, 1999]
442
Define PNG_ALWAYS_EXTERN in pngconf.h if __STDC__ is defined
443
Delete #define PNG_INTERNAL and include "png.h" from pngasmrd.h
444
Made several minor corrections to pngtest.c
445
Renamed the makefiles with longer but more user friendly extensions.
446
Copied the PNG copyright and license to a separate LICENSE file.
447
Revised documentation, png.h, and example.c to remove reference to
448
"viewing_gamma" which no longer appears in the PNG specification.
449
Revised pngvcrd.c to use MMX code for interlacing only on the final pass.
450
Updated pngvcrd.c to use the faster C filter algorithms from libpng-1.0.1a
451
Split makefile.win32vc into two versions, makefile.vcawin32 (uses MMX
452
assembler code) and makefile.vcwin32 (doesn't).
453
Added a CPU timing report to pngtest.c (enabled by defining PNGTEST_TIMING)
454
Added a copy of pngnow.png to the distribution.
455
version 1.0.4a [September 25, 1999]
456
Increase max_pixel_depth in pngrutil.c if a user transform needs it.
457
Changed several division operations to right-shifts in pngvcrd.c
458
version 1.0.4b [September 30, 1999]
459
Added parentheses in line 3732 of pngvcrd.c
460
Added a comment in makefile.linux warning about buggy -O3 in pgcc 2.95.1
461
version 1.0.4c [October 1, 1999]
462
Added a "png_check_version" function in png.c and pngtest.c that will generate
463
a helpful compiler error if an old png.h is found in the search path.
464
Changed type of png_user_transform_depth|channels from int to png_byte.
465
version 1.0.4d [October 6, 1999]
466
Changed 0.45 to 0.45455 in png_set_sRGB()
467
Removed unused PLTE entries from pngnow.png
468
Re-enabled some parts of pngvcrd.c (png_combine_row) that work properly.
469
version 1.0.4e [October 10, 1999]
470
Fixed sign error in pngvcrd.c (Greg Roelofs)
471
Replaced some instances of memcpy with simple assignments in pngvcrd (GR-P)
472
version 1.0.4f [October 15, 1999]
473
Surrounded example.c code with #if 0 .. #endif to prevent people from
474
inadvertently trying to compile it.
475
Changed png_get_header_version() from a function to a macro in png.h
476
Added type casting mostly in pngrtran.c and pngwtran.c
477
Removed some pointless "ptr = NULL" in pngmem.c
478
Added a "contrib" directory containing the source code from Greg's book.
479
version 1.0.5 [October 15, 1999]
480
Minor editing of the INSTALL and README files.
481
version 1.0.5a [October 23, 1999]
482
Added contrib/pngsuite and contrib/pngminus (Willem van Schaik)
483
Fixed a typo in the png_set_sRGB() function call in example.c (Jan Nijtmans)
484
Further optimization and bugfix of pngvcrd.c
485
Revised pngset.c so that it does not allocate or free memory in the user's
486
text_ptr structure. Instead, it makes its own copy.
487
Created separate write_end_info_struct in pngtest.c for a more severe test.
488
Added code in pngwrite.c to free info_ptr->text[i].key to stop a memory leak.
489
version 1.0.5b [November 23, 1999]
490
Moved PNG_FLAG_HAVE_CHUNK_HEADER, PNG_FLAG_BACKGROUND_IS_GRAY and
491
PNG_FLAG_WROTE_tIME from flags to mode.
492
Added png_write_info_before_PLTE() function.
493
Fixed some typecasting in contrib/gregbook/*.c
494
Updated scripts/makevms.com and added makevms.com to contrib/gregbook
495
and contrib/pngminus (Martin Zinser)
496
version 1.0.5c [November 26, 1999]
497
Moved png_get_header_version from png.h to png.c, to accomodate ansi2knr.
498
Removed all global arrays (according to PNG_NO_GLOBAL_ARRAYS macro), to
499
accomodate making DLL's: Moved usr_png_ver from global variable to function
500
png_get_header_ver() in png.c. Moved png_sig to png_sig_bytes in png.c and
501
eliminated use of png_sig in pngwutil.c. Moved the various png_CHNK arrays
502
into pngtypes.h. Eliminated use of global png_pass arrays. Declared the
503
png_CHNK and png_pass arrays to be "const". Made the global arrays
504
available to applications (although none are used in libpng itself) when
505
PNG_NO_GLOBAL_ARRAYS is not defined or when PNG_GLOBAL_ARRAYS is defined.
506
Removed some extraneous "-I" from contrib/pngminus/makefile.std
507
Changed the PNG_sRGB_INTENT macros in png.h to be consistent with PNG-1.2.
508
Change PNG_SRGB_INTENT to PNG_sRGB_INTENT in libpng.txt and libpng.3
509
version 1.0.5d [November 29, 1999]
510
Add type cast (png_const_charp) two places in png.c
511
Eliminated pngtypes.h; use macros instead to declare PNG_CHNK arrays.
512
Renamed "PNG_GLOBAL_ARRAYS" to "PNG_USE_GLOBAL_ARRAYS" and made available
513
to applications a macro "PNG_USE_LOCAL_ARRAYS".
514
#ifdef out all the new declarations when PNG_USE_GLOBAL_ARRAYS is defined.
515
Added PNG_EXPORT_VAR macro to accommodate making DLL's.
516
version 1.0.5e [November 30, 1999]
517
Added iCCP, iTXt, and sPLT support; added "lang" member to the png_text
518
structure; refactored the inflate/deflate support to make adding new chunks
519
with trailing compressed parts easier in the future, and added new functions
520
png_free_iCCP, png_free_pCAL, png_free_sPLT, png_free_text, png_get_iCCP,
521
png_get_spalettes, png_set_iCCP, png_set_spalettes (Eric S. Raymond).
522
NOTE: Applications that write text chunks MUST define png_text->lang
523
before calling png_set_text(). It must be set to NULL if you want to
524
write tEXt or zTXt chunks. If you want your application to be able to
525
run with older versions of libpng, use
527
#ifdef PNG_iTXt_SUPPORTED
528
png_text[i].lang = NULL;
531
Changed png_get_oFFs() and png_set_oFFs() to use signed rather than unsigned
532
offsets (Eric S. Raymond).
533
Combined PNG_READ_cHNK_SUPPORTED and PNG_WRITE_cHNK_SUPPORTED macros into
534
PNG_cHNK_SUPPORTED and combined the three types of PNG_text_SUPPORTED
535
macros, leaving the separate macros also available.
536
Removed comments on #endifs at the end of many short, non-nested #if-blocks.
537
version 1.0.5f [December 6, 1999]
538
Changed makefile.solaris to issue a warning about potential problems when
539
the ucb "ld" is in the path ahead of the ccs "ld".
540
Removed "- [date]" from the "synopsis" line in libpng.3 and libpngpf.3.
541
Added sCAL chunk support (Eric S. Raymond).
542
version 1.0.5g [December 7, 1999]
543
Fixed "png_free_spallettes" typo in png.h
544
Added code to handle new chunks in pngpread.c
545
Moved PNG_CHNK string macro definitions outside of PNG_NO_EXTERN block
546
Added "translated_key" to png_text structure and png_write_iTXt().
547
Added code in pngwrite.c to work around a newly discovered zlib bug.
548
version 1.0.5h [December 10, 1999]
549
NOTE: regarding the note for version 1.0.5e, the following must also
550
be included in your code:
551
png_text[i].translated_key = NULL;
552
Unknown chunk handling is now supported.
553
Option to eliminate all floating point support was added. Some new
554
fixed-point functions such as png_set_gAMA_fixed() were added.
555
Expanded tabs and removed trailing blanks in source files.
556
version 1.0.5i [December 13, 1999]
557
Added some type casts to silence compiler warnings.
558
Renamed "png_free_spalette" to "png_free_spalettes" for consistency.
559
Removed leading blanks from a #define in pngvcrd.c
560
Added some parameters to the new png_set_keep_unknown_chunks() function.
561
Added a test for up->location != 0 in the first instance of writing
562
unknown chunks in pngwrite.c
563
Changed "num" to "i" in png_free_spalettes() and png_free_unknowns() to
565
Added png_free_hIST() function.
566
Various patches to fix bugs in the sCAL and integer cHRM processing,
567
and to add some convenience macros for use with sCAL.
568
version 1.0.5j [December 21, 1999]
569
Changed "unit" parameter of png_write_sCAL from png_byte to int, to work
570
around buggy compilers.
571
Added new type "png_fixed_point" for integers that hold float*100000 values
572
Restored backward compatibility of tEXt/zTXt chunk processing:
573
Restored the first four members of png_text to the same order as v.1.0.5d.
574
Added members "lang_key" and "itxt_length" to png_text struct. Set
575
text_length=0 when "text" contains iTXt data. Use the "compression"
576
member to distinguish among tEXt/zTXt/iTXt types. Added
577
PNG_ITXT_COMPRESSION_NONE (1) and PNG_ITXT_COMPRESSION_zTXt(2) macros.
578
The "Note" above, about backward incompatibility of libpng-1.0.5e, no
580
Fixed png_read|write_iTXt() to read|write parameters in the right order,
581
and to write the iTXt chunk after IDAT if it appears in the end_ptr.
582
Added pnggccrd.c, version of pngvcrd.c Intel assembler for gcc (Greg Roelofs)
583
Reversed the order of trying to write floating-point and fixed-point gAMA.
584
version 1.0.5k [December 27, 1999]
585
Added many parentheses, e.g., "if (a && b & c)" becomes "if (a && (b & c))"
586
Added png_handle_as_unknown() function (Glenn)
587
Added png_free_chunk_list() function and chunk_list and num_chunk_list members
589
Eliminated erroneous warnings about multiple sPLT chunks and sPLT-after-PLTE.
590
Fixed a libpng-1.0.5h bug in pngrutil.c that was issuing erroneous warnings
591
about ignoring incorrect gAMA with sRGB (gAMA was in fact not ignored)
592
Added png_free_tRNS(); png_set_tRNS() now malloc's its own trans array (ESR).
593
Define png_get_int_32 when oFFs chunk is supported as well as when pCAL is.
594
Changed type of proflen from png_int_32 to png_uint_32 in png_get_iCCP().
595
version 1.0.5l [January 1, 2000]
596
Added functions png_set_read_user_chunk_fn() and png_get_user_chunk_ptr()
597
for setting a callback function to handle unknown chunks and for
598
retrieving the associated user pointer (Glenn).
599
version 1.0.5m [January 7, 2000]
600
Added high-level functions png_read_png(), png_write_png(), png_free_pixels().
601
version 1.0.5n [January 9, 2000]
602
Added png_free_PLTE() function, and modified png_set_PLTE() to malloc its
603
own memory for info_ptr->palette. This makes it safe for the calling
604
application to free its copy of the palette any time after it calls
606
version 1.0.5o [January 20, 2000]
607
Cosmetic changes only (removed some trailing blanks and TABs)
608
version 1.0.5p [January 31, 2000]
609
Renamed pngdll.mak to makefile.bd32
610
Cosmetic changes in pngtest.c
611
version 1.0.5q [February 5, 2000]
612
Relocated the makefile.solaris warning about PATH problems.
613
Fixed pngvcrd.c bug by pushing/popping registers in mmxsupport (Bruce Oberg)
614
Revised makefile.gcmmx
615
Added PNG_SETJMP_SUPPORTED, PNG_SETJMP_NOT_SUPPORTED, and PNG_ABORT() macros
616
version 1.0.5r [February 7, 2000]
617
Removed superfluous prototype for png_get_itxt from png.h
618
Fixed a bug in pngrtran.c that improperly expanded the background color.
619
Return *num_text=0 from png_get_text() when appropriate, and fix documentation
620
of png_get_text() in libpng.txt/libpng.3.
621
version 1.0.5s [February 18, 2000]
622
Added "png_jmp_env()" macro to pngconf.h, to help people migrate to the
623
new error handler that's planned for the next libpng release, and changed
624
example.c, pngtest.c, and contrib programs to use this macro.
625
Revised some of the DLL-export macros in pngconf.h (Greg Roelofs)
626
Fixed a bug in png_read_png() that caused it to fail to expand some images
627
that it should have expanded.
628
Fixed some mistakes in the unused and undocumented INCH_CONVERSIONS functions
630
Changed the allocation of palette, history, and trans arrays back to
631
the version 1.0.5 method (linking instead of copying) which restores
632
backward compatibility with version 1.0.5. Added some remarks about
633
that in example.c. Added "free_me" member to info_ptr and png_ptr
634
and added png_free_data() function.
635
Updated makefile.linux and makefile.gccmmx to make directories conditionally.
636
Made cosmetic changes to pngasmrd.h
637
Added png_set_rows() and png_get_rows(), for use with png_read|write_png().
638
Modified png_read_png() to allocate info_ptr->row_pointers only if it
639
hasn't already been allocated.
640
version 1.0.5t [March 4, 2000]
641
Changed png_jmp_env() migration aiding macro to png_jmpbuf().
642
Fixed "interlace" typo (should be "interlaced") in contrib/gregbook/read2-x.c
643
Fixed bug with use of PNG_BEFORE_IHDR bit in png_ptr->mode, introduced when
644
PNG_FLAG_HAVE_CHUNK_HEADER was moved into png_ptr->mode in version 1.0.5b
645
Files in contrib/gregbook were revised to use png_jmpbuf() and to select
646
a 24-bit visual if one is available, and to allow abbreviated options.
647
Files in contrib/pngminus were revised to use the png_jmpbuf() macro.
648
Removed spaces in makefile.linux and makefile.gcmmx, introduced in 1.0.5s
649
version 1.0.5u [March 5, 2000]
650
Simplified the code that detects old png.h in png.c and pngtest.c
651
Renamed png_spalette (_p, _pp) to png_sPLT_t (_tp, _tpp)
652
Increased precision of rgb_to_gray calculations from 8 to 15 bits and
653
added png_set_rgb_to_gray_fixed() function.
654
Added makefile.bc32 (32-bit Borland C++, C mode)
655
version 1.0.5v [March 11, 2000]
656
Added some parentheses to the png_jmpbuf macro definition.
657
Updated references to the zlib home page, which has moved to freesoftware.com.
658
Corrected bugs in documentation regarding png_read_row() and png_write_row().
659
Updated documentation of png_rgb_to_gray calculations in libpng.3/libpng.txt.
660
Renamed makefile.borland,turboc3 back to makefile.bor,tc3 as in version 1.0.3,
661
revised borland makefiles; added makefile.ibmvac3 and makefile.gcc (Cosmin)
662
version 1.0.6 [March 20, 2000]
663
Minor revisions of makefile.bor, libpng.txt, and gregbook/rpng2-win.c
664
Added makefile.sggcc (SGI IRIX with gcc)
665
version 1.0.6d [April 7, 2000]
666
Changed sprintf() to strcpy() in png_write_sCAL_s() to work without STDIO
667
Added data_length parameter to png_decompress_chunk() function
668
Revised documentation to remove reference to abandoned png_free_chnk functions
669
Fixed an error in png_rgb_to_gray_fixed()
670
Revised example.c, usage of png_destroy_write_struct().
671
Renamed makefile.ibmvac3 to makefile.ibmc, added libpng.icc IBM project file
672
Added a check for info_ptr->free_me&PNG_FREE_TEXT when freeing text in png.c
673
Simplify png_sig_bytes() function to remove use of non-ISO-C strdup().
674
version 1.0.6e [April 9, 2000]
675
Added png_data_freer() function.
676
In the code that checks for over-length tRNS chunks, added check of
677
info_ptr->num_trans as well as png_ptr->num_trans (Matthias Benckmann)
678
Minor revisions of libpng.txt/libpng.3.
679
Check for existing data and free it if the free_me flag is set, in png_set_*()
681
Only define PNG_WEIGHTED_FILTERS_SUPPORTED when PNG_FLOATING_POINT_SUPPORTED
683
Changed several instances of PNG_NO_CONSOLE_ID to PNG_NO_STDIO in pngrutil.c
684
and mentioned the purposes of the two macros in libpng.txt/libpng.3.
685
version 1.0.6f [April 14, 2000]
686
Revised png_set_iCCP() and png_set_rows() to avoid prematurely freeing data.
687
Add checks in png_set_text() for NULL members of the input text structure.
688
Revised libpng.txt/libpng.3.
689
Removed superfluous prototype for png_set_itxt from png.h
690
Removed "else" from pngread.c, after png_error(), and changed "0" to "length".
691
Changed several png_errors about malformed ancillary chunks to png_warnings.
692
version 1.0.6g [April 24, 2000]
693
Added png_pass-* arrays to pnggccrd.c when PNG_USE_LOCAL_ARRAYS is defined.
694
Relocated paragraph about png_set_background() in libpng.3/libpng.txt
695
and other revisions (Matthias Benckmann)
696
Relocated info_ptr->free_me, png_ptr->free_me, and other info_ptr and
697
png_ptr members to restore binary compatibility with libpng-1.0.5
698
(breaks compatibility with libpng-1.0.6).
699
version 1.0.6h [April 24, 2000]
700
Changed shared library so-number pattern from 2.x.y.z to xy.z (this builds
701
libpng.so.10 & libpng.so.10.6h instead of libpng.so.2 & libpng.so.2.1.0.6h)
702
This is a temporary change for test purposes.
703
version 1.0.6i [May 2, 2000]
704
Rearranged some members at the end of png_info and png_struct, to put
705
unknown_chunks_num and free_me within the original size of the png_structs
706
and free_me, png_read_user_fn, and png_free_fn within the original png_info,
707
because some old applications allocate the structs directly instead of
708
using png_create_*().
709
Added documentation of user memory functions in libpng.txt/libpng.3
710
Modified png_read_png so that it will use user_allocated row_pointers
711
if present, unless free_me directs that it be freed, and added description
712
of the use of png_set_rows() and png_get_rows() in libpng.txt/libpng.3.
713
Added PNG_LEGACY_SUPPORTED macro, and #ifdef out all new (since version
714
1.00) members of png_struct and png_info, to regain binary compatibility
715
when you define this macro. Capabilities lost in this event
716
are user transforms (new in version 1.0.0),the user transform pointer
717
(new in version 1.0.2), rgb_to_gray (new in 1.0.5), iCCP, sCAL, sPLT,
718
the high-level interface, and unknown chunks support (all new in 1.0.6).
719
This was necessary because of old applications that allocate the structs
720
directly as authors were instructed to do in libpng-0.88 and earlier,
721
instead of using png_create_*().
722
Added modes PNG_CREATED_READ_STRUCT and PNG_CREATED_WRITE_STRUCT which
723
can be used to detect codes that directly allocate the structs, and
724
code to check these modes in png_read_init() and png_write_init() and
725
generate a libpng error if the modes aren't set and PNG_LEGACY_SUPPORTED
727
Added makefile.intel and updated makefile.watcom (Pawel Mrochen)
728
version 1.0.6j [May 3, 2000]
729
Overloaded png_read_init() and png_write_init() with macros that convert
730
calls to png_read_init_2() or png_write_init_2() that check the version
732
version 1.0.7beta11 [May 7, 2000]
733
Removed the new PNG_CREATED_READ_STRUCT and PNG_CREATED_WRITE_STRUCT modes
734
which are no longer used.
735
Eliminated the three new members of png_text when PNG_NO_iTXt_SUPPORTED
736
or PNG_LEGACY_SUPPORTED is defined.
737
Made PNG_NO_ITXT_SUPPORTED the default setting, to avoid memory overrun
738
when old applications fill the info_ptr->text structure directly.
739
Added PNGAPI macro, and added it to the definitions of all exported functions.
740
Relocated version macro definitions ahead of the includes of zlib.h and
742
version 1.0.7beta12 [May 12, 2000]
743
Revised pngset.c to avoid a problem with expanding the png_debug macro.
744
Deleted some extraneous defines from pngconf.h
745
Made PNG_NO_CONSOLE_IO the default condition when PNG_BUILD_DLL is defined.
746
Use MSC _RPTn debugging instead of fprintf if _MSC_VER is defined.
747
Added png_access_version_number() function.
748
Check for mask&PNG_FREE_CHNK (for TEXT, SCAL, PCAL) in png_free_data().
749
Expanded libpng.3/libpng.txt information about png_data_freer().
750
version 1.0.7beta14 [May 17, 2000] (beta13 was not published)
751
Changed pnggccrd.c and pngvcrd.c to handle bad adaptive filter types as
752
warnings instead of errors, as pngrutil.c does.
753
Set the PNG_INFO_IDAT valid flag in png_set_rows() so png_write_png()
754
will actually write IDATs.
755
Made the default PNG_USE_LOCAL_ARRAYS depend on PNG_DLL instead of WIN32.
756
Make png_free_data() ignore its final parameter except when freeing data
757
that can have multiple instances (text, sPLT, unknowns).
758
Fixed a new bug in png_set_rows().
759
Removed info_ptr->valid tests from png_free_data(), as in version 1.0.5.
760
Added png_set_invalid() function.
761
Fixed incorrect illustrations of png_destroy_write_struct() in example.c.
762
version 1.0.7beta15 [May 30, 2000]
763
Revised the deliberately erroneous Linux setjmp code in pngconf.h to produce
764
fewer error messages.
765
Rearranged checks for Z_OK to check the most likely path first in pngpread.c
767
Added checks in pngtest.c for png_create_*() returning NULL, and mentioned
768
in libpng.txt/libpng.3 the need for applications to check this.
769
Changed names of png_default_*() functions in pngtest to pngtest_*().
770
Changed return type of png_get_x|y_offset_*() from png_uint_32 to png_int_32.
771
Fixed some bugs in the unused PNG_INCH_CONVERSIONS functions in pngget.c
772
Set each pointer to NULL after freeing it in png_free_data().
773
Worked around a problem in pngconf.h; AIX's strings.h defines an "index"
774
macro that conflicts with libpng's png_color_16.index. (Dimitri Papadapoulos)
775
Added "msvc" directory with MSVC++ project files (Simon-Pierre Cadieux).
776
version 1.0.7beta16 [June 4, 2000]
777
Revised the workaround of AIX string.h "index" bug.
778
Added a check for overlength PLTE chunk in pngrutil.c.
779
Added PNG_NO_POINTER_INDEXING macro to use array-indexing instead of pointer
780
indexing in pngrutil.c and pngwutil.c to accommodate a buggy compiler.
781
Added a warning in png_decompress_chunk() when it runs out of data.
782
Added PNG_USE_DLL macro.
783
Revised the copyright/disclaimer/license notice.
784
Added contrib/msvctest directory
785
version 1.0.7rc1 [June 9, 2000]
786
Corrected the definition of PNG_TRANSFORM_INVERT_ALPHA (0x0400 not 0x0200)
787
Added contrib/visupng directory (Willem van Schaik)
788
version 1.0.7beta18 [June 23, 2000]
789
Revised PNGAPI definition, and pngvcrd.c to work with __GCC__
790
and do not redefine PNGAPI if it is passed in via a compiler directive.
791
Revised visupng/PngFile.c to remove returns from within the Try block.
792
Removed leading underscores from "_PNG_H" and "_PNG_SAVE_BSD_SOURCE" macros.
793
Updated contrib/visupng/cexcept.h to version 1.0.0.
794
Fixed bugs in pngwrite.c and pngwutil.c that prevented writing iCCP chunks.
795
version 1.0.7rc2 [June 28, 2000]
796
Updated license to include disclaimers required by UCITA.
797
Fixed "DJBPP" typo in pnggccrd.c introduced in beta18.
798
version 1.0.7 [July 1, 2000]
799
Revised the definition of "trans_values" in libpng.3/libpng.txt
800
version 1.0.8 [July 24, 2000]
801
version 1.0.8beta1 [July 8, 2000]
802
Added png_free(png_ptr, key) two places in pngpread.c to stop memory leaks.
803
Changed PNG_NO_STDIO to PNG_NO_CONSOLE_IO, several places in pngrutil.c and
805
Changed PNG_EXPORT_VAR to use PNG_IMPEXP, in pngconf.h.
806
Removed unused "#include <assert.h>" from png.c
807
Added WindowsCE support.
808
Revised pnggccrd.c to work with gcc-2.95.2 and in the Cygwin environment.
809
version 1.0.8beta2 [July 10, 2000]
810
Added project files to the wince directory and made further revisions
811
of pngtest.c, pngrio.c, and pngwio.c in support of WindowsCE.
812
version 1.0.8beta3 [July 11, 2000]
813
Only set the PNG_FLAG_FREE_TRNS or PNG_FREE_TRNS flag in png_handle_tRNS()
814
for indexed-color input files to avoid potential double-freeing trans array
815
under some unusual conditions; problem was introduced in version 1.0.6f.
816
Further revisions to pngtest.c and files in the wince subdirectory.
817
version 1.0.8beta4 [July 14, 2000]
818
Added the files pngbar.png and pngbar.jpg to the distribution.
819
Added cygwin subdirectory, makefile.cygwin, and cygwin support in pngconf.h
820
Added PNG_NO_ZALLOC_ZERO macro (makes png_zalloc skip zeroing memory)
821
version 1.0.8rc1 [July 16, 2000]
822
Revised png_debug() macros and statements to eliminate compiler warnings.
823
version 1.0.8 [July 24, 2000]
824
Added png_flush() in pngwrite.c, after png_write_IEND().
825
Updated makefile.hpux to build a shared library.
827
Send comments/corrections/commendations to
828
png-implement@ccrc.wustl.edu or to randeg@alum.rpi.edu