| |
| CHANGES - changes for libpng |
| |
| version 0.2 |
| added reader into png.h |
| fixed small problems in stub file |
| |
| version 0.3 |
| added pull reader |
| split up pngwrite.c to several files |
| added pnglib.txt |
| added example.c |
| cleaned up writer, adding a few new transformations |
| fixed some bugs in writer |
| interfaced with zlib 0.5 |
| added K&R support |
| added check for 64 KB blocks for 16 bit machines |
| |
| version 0.4 |
| cleaned up code and commented code |
| simplified time handling into png_time |
| created png_color_16 and png_color_8 to handle color needs |
| cleaned up color type defines |
| fixed various bugs |
| made various names more consistent |
| interfaced with zlib 0.71 |
| cleaned up zTXt reader and writer (using zlib's Reset functions) |
| split transformations into pngrtran.c and pngwtran.c |
| |
| version 0.5 |
| interfaced with zlib 0.8 |
| fixed many reading and writing bugs |
| saved using 3 spaces instead of tabs |
| |
| version 0.6 |
| added png_large_malloc() and png_large_free() |
| added png_size_t |
| cleaned up some compiler warnings |
| added png_start_read_image() |
| |
| version 0.7 |
| cleaned up lots of bugs |
| finished dithering and other stuff |
| added test program |
| changed name from pnglib to libpng |
| |
| version 0.71 [June, 1995] |
| changed pngtest.png for zlib 0.93 |
| fixed error in libpng.txt and example.c |
| |
| version 0.8 |
| cleaned up some bugs |
| added png_set_filler() |
| split up pngstub.c into pngmem.c, pngio.c, and pngerror.c |
| added #define's to remove unwanted code |
| moved png_info_init() to png.c |
| added old_size into png_realloc() |
| added functions to manually set filtering and compression info |
| changed compression parameters based on image type |
| optimized filter selection code |
| added version info |
| changed external functions passing floats to doubles (k&r problems?) |
| put all the configurable stuff in pngconf.h |
| enabled png_set_shift to work with paletted images on read |
| added png_read_update_info() - updates info structure with |
| transformations |
| |
| version 0.81 [August, 1995] |
| incorporated Tim Wegner's medium model code (thanks, Tim) |
| |
| version 0.82 [September, 1995] |
| [unspecified changes] |
| |
| version 0.85 [December, 1995] |
| added more medium model code (almost everything's a far) |
| added i/o, error, and memory callback functions |
| fixed some bugs (16 bit, 4 bit interlaced, etc.) |
| added first run progressive reader (barely tested) |
| |
| version 0.86 [January, 1996] |
| fixed bugs |
| improved documentation |
| |
| version 0.87 [January, 1996] |
| fixed medium model bugs |
| fixed other bugs introduced in 0.85 and 0.86 |
| added some minor documentation |
| |
| version 0.88 [January, 1996] |
| fixed progressive bugs |
| replaced tabs with spaces |
| cleaned up documentation |
| added callbacks for read/write and warning/error functions |
| |
| version 0.89 [July, 1996] |
| added new initialization API to make libpng work better with shared libs |
| we now have png_create_read_struct(), png_create_write_struct(), |
| png_create_info_struct(), png_destroy_read_struct(), and |
| png_destroy_write_struct() instead of the separate calls to |
| malloc and png_read_init(), png_info_init(), and png_write_init() |
| changed warning/error callback functions to fix bug - this means you |
| should use the new initialization API if you were using the old |
| png_set_message_fn() calls, and that the old API no longer exists |
| so that people are aware that they need to change their code |
| changed filter selection API to allow selection of multiple filters |
| since it didn't work in previous versions of libpng anyways |
| optimized filter selection code |
| fixed png_set_background() to allow using an arbitrary RGB color for |
| paletted images |
| fixed gamma and background correction for paletted images, so |
| png_correct_palette is not needed unless you are correcting an |
| external palette (you will need to #define PNG_CORRECT_PALETTE_SUPPORTED |
| in pngconf.h) - if nobody uses this, it may disappear in the future. |
| fixed bug with Borland 64K memory allocation (Alexander Lehmann) |
| fixed bug in interlace handling (Smarasderagd, I think) |
| added more error checking for writing and image to reduce invalid files |
| separated read and write functions so that they won't both be linked |
| into a binary when only reading or writing functionality is used |
| new pngtest image also has interlacing and zTXt |
| updated documentation to reflect new API |
| |
| version 0.90 [January, 1997] |
| made CRC errors/warnings on critical and ancillary chunks configurable |
| libpng will use the zlib CRC routines by (compile-time) default |
| changed DOS small/medium model memory support - needs zlib 1.04 (Tim Wegner) |
| added external C++ wrapper statements to png.h (Gilles Dauphin) |
| allow PNG file to be read when some or all of file signature has already |
| been read from the beginning of the stream. ****This affects the size |
| of info_struct and invalidates all programs that use a shared libpng**** |
| fixed png_filler() declarations |
| fixed? background color conversions |
| fixed order of error function pointers to match documentation |
| current chunk name is now available in png_struct to reduce the number |
| of nearly identical error messages (will simplify multi-lingual |
| support when available) |
| try to get ready for unknown-chunk callback functions: |
| - previously read critical chunks are flagged, so the chunk handling |
| routines can determine if the chunk is in the right place |
| - all chunk handling routines have the same prototypes, so we will |
| be able to handle all chunks via a callback mechanism |
| try to fix Linux "setjmp" buffer size problems |
| removed png_large_malloc, png_large_free, and png_realloc functions. |
| |
| version 0.95 [March, 1997] |
| fixed bug in pngwutil.c allocating "up_row" twice and "avg_row" never |
| fixed bug in PNG file signature compares when start != 0 |
| changed parameter type of png_set_filler(...filler...) from png_byte |
| to png_uint_32 |
| added test for MACOS to ensure that both math.h and fp.h are not #included |
| added macros for libpng to be compiled as a Windows DLL (Andreas Kupries) |
| added "packswap" transformation, which changes the endianness of |
| packed-pixel bytes (Kevin Bracey) |
| added "strip_alpha" transformation, which removes the alpha channel of |
| input images without using it (not necessarily a good idea) |
| added "swap_alpha" transformation, which puts the alpha channel in front |
| of the color bytes instead of after |
| removed all implicit variable tests which assume NULL == 0 (I think) |
| changed several variables to "png_size_t" to show 16/32-bit limitations |
| added new pCAL chunk read/write support |
| added experimental filter selection weighting (Greg Roelofs) |
| removed old png_set_rgbx() and png_set_xrgb() functions that have been |
| obsolete for about 2 years now (use png_set_filler() instead) |
| added macros to read 16- and 32-bit ints directly from buffer, to be |
| used only on those systems that support it (namely PowerPC and 680x0) |
| With some testing, this may become the default for MACOS/PPC systems. |
| only calculate CRC on data if we are going to use it |
| added macros for zTXt compression type PNG_zTXt_COMPRESSION_??? |
| added macros for simple libpng debugging output selectable at compile time |
| removed PNG_READ_END_MODE in progressive reader (Smarasderagd) |
| more description of info_struct in libpng.txt and png.h |
| more instructions in example.c |
| more chunk types tested in pngtest.c |
| renamed pngrcb.c to pngset.c, and all png_read_<chunk> functions to be |
| png_set_<chunk>. We now have corresponding png_get_<chunk> |
| functions in pngget.c to get information in info_ptr. This isolates |
| the application from the internal organization of png_info_struct |
| (good for shared library implementations). |
| |
| version 0.96 [May, 1997] |
| fixed serious bug with < 8bpp images introduced in 0.95 |
| fixed 256-color transparency bug (Greg Roelofs) |
| fixed up documentation (Greg Roelofs, Laszlo Nyul) |
| fixed "error" in pngconf.h for Linux setjmp() behaviour |
| fixed DOS medium model support (Tim Wegner) |
| fixed png_check_keyword() for case with error in static string text |
| added read of CRC after IEND chunk for embedded PNGs (Laszlo Nyul) |
| added typecasts to quiet compiler errors |
| added more debugging info |
| |
| version 0.97 [January, 1998] |
| removed PNG_USE_OWN_CRC capability |
| relocated png_set_crc_action from pngrutil.c to pngrtran.c |
| fixed typecasts of "new_key", etc. (Andreas Dilger) |
| added RFC 1152 [sic] date support |
| fixed bug in gamma handling of 4-bit grayscale |
| added 2-bit grayscale gamma handling (Glenn R-P) |
| added more typecasts. 65536L becomes (png_uint_32)65536L, etc. (Glenn R-P) |
| minor corrections in libpng.txt |
| added simple sRGB support (Glenn R-P) |
| easier conditional compiling, e.g. define PNG_READ/WRITE_NOT_FULLY_SUPPORTED; |
| all configurable options can be selected from command-line instead |
| of having to edit pngconf.h (Glenn R-P) |
| fixed memory leak in pngwrite.c (free info_ptr->text) (Glenn R-P) |
| added more conditions for png_do_background, to avoid changing |
| black pixels to background when a background is supplied and |
| no pixels are transparent |
| repaired PNG_NO_STDIO behaviour |
| tested NODIV support and made it default behaviour (Greg Roelofs) |
| added "-m" option and PNGTEST_DEBUG_MEMORY to pngtest (John Bowler) |
| regularized version numbering scheme and bumped shared-library major |
| version number to 2 to avoid problems with libpng 0.89 apps (Greg Roelofs) |
| |
| version 0.98 [January, 1998] |
| cleaned up some typos in libpng.txt and in code documentation |
| fixed memory leaks in pCAL chunk processing (Glenn R-P and John Bowler) |
| cosmetic change "display_gamma" to "screen_gamma" in pngrtran.c |
| changed recommendation about file_gamma for PC images to .51 from .45, |
| in example.c and libpng.txt, added comments to distinguish between |
| screen_gamma, viewing_gamma, and display_gamma. |
| changed all references to RFC1152 to read RFC1123 and changed the |
| PNG_TIME_RFC1152_SUPPORTED macro to PNG_TIME_RFC1123_SUPPORTED |
| added png_invert_alpha capability (Glenn R-P -- suggestion by Jon Vincent) |
| changed srgb_intent from png_byte to int to avoid compiler bugs |
| |
| version 0.99 [January 30, 1998] |
| free info_ptr->text instead of end_info_ptr->text in pngread.c (John Bowler) |
| fixed a longstanding "packswap" bug in pngtrans.c |
| fixed some inconsistencies in pngconf.h that prevented compiling with |
| PNG_READ_GAMMA_SUPPORTED and PNG_READ_hIST_SUPPORTED undefined |
| fixed some typos and made other minor rearrangement of libpng.txt (Andreas) |
| changed recommendation about file_gamma for PC images to .50 from .51 in |
| example.c and libpng.txt, and changed file_gamma for sRGB images to .45 |
| added a number of functions to access information from the png structure |
| png_get_image_height(), etc. (Glenn R-P, suggestion by Brad Pettit) |
| added TARGET_MACOS similar to zlib-1.0.8 |
| define PNG_ALWAYS_EXTERN when __MWERKS__ && WIN32 are defined |
| added type casting to all png_malloc() function calls |
| version 0.99a [January 31, 1998] |
| Added type casts and parentheses to all returns that return a value.(Tim W.) |
| version 0.99b [February 4, 1998] |
| Added type cast png_uint_32 on malloc function calls where needed. |
| Changed type of num_hist from png_uint_32 to int (same as num_palette). |
| Added checks for rowbytes overflow, in case png_size_t is less than 32 bits. |
| Renamed makefile.elf to makefile.lnx. |
| version 0.99c [February 7, 1998] |
| More type casting. Removed erroneous overflow test in pngmem.c. |
| Added png_buffered_memcpy() and png_buffered_memset(), apply them to rowbytes. |
| Added UNIX manual pages libpng.3 (incorporating libpng.txt) and png.5. |
| version 0.99d [February 11, 1998] |
| Renamed "far_to_near()" "png_far_to_near()" |
| Revised libpng.3 |
| Version 99c "buffered" operations didn't work as intended. Replaced them |
| with png_memcpy_check() and png_memset_check(). |
| Added many "if (png_ptr == NULL) return" to quell compiler warnings about |
| unused png_ptr, mostly in pngget.c and pngset.c. |
| Check for overlength tRNS chunk present when indexed-color PLTE is read. |
| Cleaned up spelling errors in libpng.3/libpng.txt |
| Corrected a problem with png_get_tRNS() which returned undefined trans array |
| version 0.99e [February 28, 1998] |
| Corrected png_get_tRNS() again. |
| Add parentheses for easier reading of pngget.c, fixed "||" should be "&&". |
| Touched up example.c to make more of it compileable, although the entire |
| file still can't be compiled (Willem van Schaik) |
| Fixed a bug in png_do_shift() (Bryan Tsai) |
| Added a space in png.h prototype for png_write_chunk_start() |
| Replaced pngtest.png with one created with zlib 1.1.1 |
| Changed pngtest to report PASS even when file size is different (Jean-loup G.) |
| Corrected some logic errors in png_do_invert_alpha() (Chris Patterson) |
| version 0.99f [March 5, 1998] |
| Corrected a bug in pngpread() introduced in version 99c (Kevin Bracey) |
| Moved makefiles into a "scripts" directory, and added INSTALL instruction file |
| Added makefile.os2 and pngos2.def (A. Zabolotny) and makefile.s2x (W. Sebok) |
| Added pointers to "note on libpng versions" in makefile.lnx and README |
| Added row callback feature when reading and writing nonprogressive rows |
| and added a test of this feature in pngtest.c |
| Added user transform callbacks, with test of the feature in pngtest.c |
| version 0.99g [March 6, 1998, morning] |
| Minor changes to pngtest.c to suppress compiler warnings. |
| Removed "beta" language from documentation. |
| version 0.99h [March 6, 1998, evening] |
| Minor changes to previous minor changes to pngtest.c |
| Changed PNG_READ_NOT_FULLY_SUPPORTED to PNG_READ_TRANSFORMS_NOT_SUPPORTED |
| and added PNG_PROGRESSIVE_READ_NOT_SUPPORTED macro |
| Added user transform capability |
| |
| version 1.00 [March 7, 1998] |
| Changed several typedefs in pngrutil.c |
| Added makefile.wat (Pawel Mrochen), updated makefile.tc3 (Willem van Schaik) |
| replaced "while(1)" with "for(;;)" |
| added PNGARG() to prototypes in pngtest.c and removed some prototypes |
| updated some of the makefiles (Tom Lane) |
| changed some typedefs (s_start, etc.) in pngrutil.c |
| fixed dimensions of "short_months" array in pngwrite.c |
| Replaced ansi2knr.c with the one from jpeg-v6 |
| |
| version 1.0.0 [March 8, 1998] |
| Changed name from 1.00 to 1.0.0 (Adam Costello) |
| Added smakefile.ppc (with SCOPTIONS.ppc) for Amiga PPC (Andreas Kleinert) |
| version 1.0.0a [March 9, 1998] |
| Fixed three bugs in pngrtran.c to make gamma+background handling consistent |
| (Greg Roelofs) |
| Changed format of the PNG_LIBPNG_VER integer to xyyzz instead of xyz |
| for major, minor, and bugfix releases. This is 10001. (Adam Costello, |
| Tom Lane) |
| Make months range from 1-12 in png_convert_to_rfc1123 |
| version 1.0.0b [March 13, 1998] |
| Quieted compiler complaints about two empty "for" loops in pngrutil.c |
| Minor changes to makefile.s2x |
| Removed #ifdef/#endif around a png_free() in pngread.c |
| |
| version 1.0.1 [March 14, 1998] |
| Changed makefile.s2x to reduce security risk of using a relative pathname |
| Fixed some typos in the documentation (Greg). |
| Fixed a problem with value of "channels" returned by png_read_update_info() |
| version 1.0.1a [April 21, 1998] |
| Optimized Paeth calculations by replacing abs() function calls with intrinsics |
| plus other loop optimizations. Improves avg decoding speed by about 20%. |
| Commented out i386istic "align" compiler flags in makefile.lnx. |
| Reduced the default warning level in some makefiles, to make them consistent. |
| Removed references to IJG and JPEG in the ansi2knr.c copyright statement. |
| Fixed a bug in png_do_strip_filler with XXRRGGBB => RRGGBB transformation. |
| Added grayscale and 16-bit capability to png_do_read_filler(). |
| Fixed a bug in pngset.c, introduced in version 0.99c, that sets rowbytes |
| too large when writing an image with bit_depth < 8 (Bob Dellaca). |
| Corrected some bugs in the experimental weighted filtering heuristics. |
| Moved a misplaced pngrutil code block that truncates tRNS if it has more |
| than num_palette entries -- test was done before num_palette was defined. |
| Fixed a png_convert_to_rfc1123() bug that converts day 31 to 0 (Steve Eddins). |
| Changed compiler flags in makefile.wat for better optimization (Pawel Mrochen). |
| version 1.0.1b [May 2, 1998] |
| Relocated png_do_gray_to_rgb() within png_do_read_transformations() (Greg). |
| Relocated the png_composite macros from pngrtran.c to png.h (Greg). |
| Added makefile.sco (contributed by Mike Hopkirk). |
| Fixed two bugs (missing definitions of "istop") introduced in libpng-1.0.1a. |
| Fixed a bug in pngrtran.c that would set channels=5 under some circumstances. |
| More work on the Paeth-filtering, achieving imperceptible speedup (A Kleinert). |
| More work on loop optimization which may help when compiled with C++ compilers. |
| Added warnings when people try to use transforms they've defined out. |
| Collapsed 4 "i" and "c" loops into single "i" loops in pngrtran and pngwtran. |
| Revised paragraph about png_set_expand() in libpng.txt and libpng.3 (Greg) |
| version 1.0.1c [May 11, 1998] |
| Fixed a bug in pngrtran.c (introduced in libpng-1.0.1a) where the masks for |
| filler bytes should have been 0xff instead of 0xf. |
| Added max_pixel_depth=32 in pngrutil.c when using FILLER with palette images. |
| Moved PNG_WRITE_WEIGHTED_FILTER_SUPPORTED and PNG_WRITE_FLUSH_SUPPORTED |
| out of the PNG_WRITE_TRANSFORMS_NOT_SUPPORTED block of pngconf.h |
| Added "PNG_NO_WRITE_TRANSFORMS" etc., as alternatives for *_NOT_SUPPORTED, |
| for consistency, in pngconf.h |
| Added individual "ifndef PNG_NO_[CAPABILITY]" in pngconf.h to make it easier |
| to remove unwanted capabilities via the compile line |
| Made some corrections to grammar (which, it's) in documentation (Greg). |
| Corrected example.c, use of row_pointers in png_write_image(). |
| version 1.0.1d [May 24, 1998] |
| Corrected several statements that used side effects illegally in pngrutil.c |
| and pngtrans.c, that were introduced in version 1.0.1b |
| Revised png_read_rows() to avoid repeated if-testing for NULL (A Kleinert) |
| More corrections to example.c, use of row_pointers in png_write_image() |
| and png_read_rows(). |
| Added pngdll.mak and pngdef.pas to scripts directory, contributed by |
| Bob Dellaca, to make a png32bd.dll with Borland C++ 4.5 |
| Fixed error in example.c with png_set_text: num_text is 3, not 2 (Guido V.) |
| Changed several loops from count-down to count-up, for consistency. |
| version 1.0.1e [June 6, 1998] |
| Revised libpng.txt and libpng.3 description of png_set_read|write_fn(), and |
| added warnings when people try to set png_read_fn and png_write_fn in |
| the same structure. |
| Added a test such that png_do_gamma will be done when num_trans==0 |
| for truecolor images that have defined a background. This corrects an |
| error that was introduced in libpng-0.90 that can cause gamma processing |
| to be skipped. |
| Added tests in png.h to include "trans" and "trans_values" in structures |
| when PNG_READ_BACKGROUND_SUPPORTED or PNG_READ_EXPAND_SUPPORTED is defined. |
| Add png_free(png_ptr->time_buffer) in png_destroy_read_struct() |
| Moved png_convert_to_rfc_1123() from pngwrite.c to png.c |
| Added capability for user-provided malloc_fn() and free_fn() functions, |
| and revised pngtest.c to demonstrate their use, replacing the |
| PNGTEST_DEBUG_MEM feature. |
| Added makefile.w32, for Microsoft C++ 4.0 and later (Tim Wegner). |
| |
| version 1.0.2 [June 14, 1998] |
| Fixed two bugs in makefile.bor . |
| version 1.0.2a [December 30, 1998] |
| Replaced and extended code that was removed from png_set_filler() in 1.0.1a. |
| Fixed a bug in png_do_filler() that made it fail to write filler bytes in |
| the left-most pixel of each row (Kevin Bracey). |
| Changed "static pngcharp tIME_string" to "static char tIME_string[30]" |
| in pngtest.c (Duncan Simpson). |
| Fixed a bug in pngtest.c that caused pngtest to try to write a tIME chunk |
| even when no tIME chunk was present in the source file. |
| Fixed a problem in pngrutil.c: gray_to_rgb didn't always work with 16-bit. |
| Fixed a problem in png_read_push_finish_row(), which would not skip some |
| passes that it should skip, for images that are less than 3 pixels high. |
| Interchanged the order of calls to png_do_swap() and png_do_shift() |
| in pngwtran.c (John Cromer). |
| Added #ifdef PNG_DEBUG/#endif surrounding use of PNG_DEBUG in png.h . |
| Changed "bad adaptive filter type" from error to warning in pngrutil.c . |
| Fixed a documentation error about default filtering with 8-bit indexed-color. |
| Separated the PNG_NO_STDIO macro into PNG_NO_STDIO and PNG_NO_CONSOLE_IO |
| (L. Peter Deutsch). |
| Added png_set_rgb_to_gray() and png_get_rgb_to_gray_status() functions. |
| Added png_get_copyright() and png_get_header_version() functions. |
| Revised comments on png_set_progressive_read_fn() in libpng.txt and example.c |
| Added information about debugging in libpng.txt and libpng.3 . |
| Changed "ln -sf" to "ln -s -f" in makefile.s2x, makefile.lnx, and makefile.sco. |
| Removed lines after Dynamic Dependencies" in makefile.aco . |
| Revised makefile.dec to make a shared library (Jeremie Petit). |
| Removed trailing blanks from all files. |
| version 1.0.2a [January 6, 1999] |
| Removed misplaced #endif and #ifdef PNG_NO_EXTERN near the end of png.h |
| Added "if" tests to silence complaints about unused png_ptr in png.h and png.c |
| Changed "check_if_png" function in example.c to return true (nonzero) if PNG. |
| Changed libpng.txt to demonstrate png_sig_cmp() instead of png_check_sig() |
| which is obsolete. |
| |
| version 1.0.3 [January 14, 1999] |
| Added makefile.hux, for Hewlett Packard HPUX 10.20 and 11.00 (Jim Rice) |
| Added a statement of Y2K compliance in png.h, libpng.3, and Y2KINFO. |
| version 1.0.3a [August 12, 1999] |
| Added check for PNG_READ_INTERLACE_SUPPORTED in pngread.c; issue a warning |
| if an attempt is made to read an interlaced image when it's not supported. |
| Added check if png_ptr->trans is defined before freeing it in pngread.c |
| Modified the Y2K statement to include versions back to version 0.71 |
| Fixed a bug in the check for valid IHDR bit_depth/color_types in pngrutil.c |
| Modified makefile.wat (added -zp8 flag, ".symbolic", changed some comments) |
| Replaced leading blanks with tab characters in makefile.hux |
| Changed "dworkin.wustl.edu" to "ccrc.wustl.edu" in various documents. |
| Changed (float)red and (float)green to (double)red, (double)green |
| in png_set_rgb_to_gray() to avoid "promotion" problems in AIX. |
| Fixed a bug in pngconf.h that omitted <stdio.h> when PNG_DEBUG==0 (K Bracey). |
| Reformatted libpng.3 and libpngpf.3 with proper fonts (script by J. vanZandt). |
| Updated documentation to refer to the PNG-1.2 specification. |
| Removed ansi2knr.c and left pointers to the latest source for ansi2knr.c |
| in makefile.knr, INSTALL, and README (L. Peter Deutsch) |
| Fixed bugs in calculation of the length of rowbytes when adding alpha |
| channels to 16-bit images, in pngrtran.c (Chris Nokleberg) |
| Added function png_set_user_transform_info() to store user_transform_ptr, |
| user_depth, and user_channels into the png_struct, and a function |
| png_get_user_transform_ptr() to retrieve the pointer (Chris Nokleberg) |
| Added function png_set_empty_plte_permitted() to make libpng useable |
| in MNG applications. |
| Corrected the typedef for png_free_ptr in png.h (Jesse Jones). |
| Correct gamma with srgb is 45455 instead of 45000 in pngrutil.c, to be |
| consistent with PNG-1.2, and allow variance of 500 before complaining. |
| Added assembler code contributed by Intel in file pngvcrd.c and modified |
| makefile.w32 to use it (Nirav Chhatrapati, INTEL Corporation, Gilles Vollant) |
| Changed "ln -s -f" to "ln -f -s" in the makefiles to make Solaris happy. |
| Added some aliases for png_set_expand() in pngrtran.c, namely |
| png_set_expand_PLTE(), png_set_expand_depth(), and png_set_expand_tRNS() |
| (Greg Roelofs, in "PNG: The Definitive Guide"). |
| Added makefile.beo for BEOS on X86, contributed by Sander Stok. |
| version 1.0.3b [August 26, 1999] |
| Replaced 2147483647L several places with PNG_MAX_UINT macro, defined in png.h |
| Changed leading blanks to tabs in all makefiles. |
| Define PNG_USE_PNGVCRD in makefile.w32, to get MMX assembler code. |
| Made alternate versions of png_set_expand() in pngrtran.c, namely |
| png_set_gray_1_2_4_to_8, png_set_palette_to_rgb, and png_set_tRNS_to_alpha |
| (Greg Roelofs, in "PNG: The Definitive Guide"). Deleted the 1.0.3a aliases. |
| Relocated start of 'extern "C"' block in png.h so it doesn't include pngconf.h |
| Revised calculation of num_blocks in pngmem.c to avoid a potentially |
| negative shift distance, whose results are undefined in the C language. |
| Added a check in pngset.c to prevent writing multiple tIME chunks. |
| Added a check in pngwrite.c to detect invalid small window_bits sizes. |
| version 1.0.3d [September 4, 1999] |
| Fixed type casting of igamma in pngrutil.c |
| Added new png_expand functions to scripts/pngdef.pas and pngos2.def |
| Added a demo read_user_transform_fn that examines the row filters in pngtest.c |
| |
| version 1.0.4 [September 24, 1999] |
| Define PNG_ALWAYS_EXTERN in pngconf.h if __STDC__ is defined |
| Delete #define PNG_INTERNAL and include "png.h" from pngasmrd.h |
| Made several minor corrections to pngtest.c |
| Renamed the makefiles with longer but more user friendly extensions. |
| Copied the PNG copyright and license to a separate LICENSE file. |
| Revised documentation, png.h, and example.c to remove reference to |
| "viewing_gamma" which no longer appears in the PNG specification. |
| Revised pngvcrd.c to use MMX code for interlacing only on the final pass. |
| Updated pngvcrd.c to use the faster C filter algorithms from libpng-1.0.1a |
| Split makefile.win32vc into two versions, makefile.vcawin32 (uses MMX |
| assembler code) and makefile.vcwin32 (doesn't). |
| Added a CPU timing report to pngtest.c (enabled by defining PNGTEST_TIMING) |
| Added a copy of pngnow.png to the distribution. |
| version 1.0.4a [September 25, 1999] |
| Increase max_pixel_depth in pngrutil.c if a user transform needs it. |
| Changed several division operations to right-shifts in pngvcrd.c |
| version 1.0.4b [September 30, 1999] |
| Added parentheses in line 3732 of pngvcrd.c |
| Added a comment in makefile.linux warning about buggy -O3 in pgcc 2.95.1 |
| version 1.0.4c [October 1, 1999] |
| Added a "png_check_version" function in png.c and pngtest.c that will generate |
| a helpful compiler error if an old png.h is found in the search path. |
| Changed type of png_user_transform_depth|channels from int to png_byte. |
| version 1.0.4d [October 6, 1999] |
| Changed 0.45 to 0.45455 in png_set_sRGB() |
| Removed unused PLTE entries from pngnow.png |
| Re-enabled some parts of pngvcrd.c (png_combine_row) that work properly. |
| version 1.0.4e [October 10, 1999] |
| Fixed sign error in pngvcrd.c (Greg Roelofs) |
| Replaced some instances of memcpy with simple assignments in pngvcrd (GR-P) |
| version 1.0.4f [October 15, 1999] |
| Surrounded example.c code with #if 0 .. #endif to prevent people from |
| inadvertently trying to compile it. |
| Changed png_get_header_version() from a function to a macro in png.h |
| Added type casting mostly in pngrtran.c and pngwtran.c |
| Removed some pointless "ptr = NULL" in pngmem.c |
| Added a "contrib" directory containing the source code from Greg's book. |
| |
| version 1.0.5 [October 15, 1999] |
| Minor editing of the INSTALL and README files. |
| version 1.0.5a [October 23, 1999] |
| Added contrib/pngsuite and contrib/pngminus (Willem van Schaik) |
| Fixed a typo in the png_set_sRGB() function call in example.c (Jan Nijtmans) |
| Further optimization and bugfix of pngvcrd.c |
| Revised pngset.c so that it does not allocate or free memory in the user's |
| text_ptr structure. Instead, it makes its own copy. |
| Created separate write_end_info_struct in pngtest.c for a more severe test. |
| Added code in pngwrite.c to free info_ptr->text[i].key to stop a memory leak. |
| version 1.0.5b [November 23, 1999] |
| Moved PNG_FLAG_HAVE_CHUNK_HEADER, PNG_FLAG_BACKGROUND_IS_GRAY and |
| PNG_FLAG_WROTE_tIME from flags to mode. |
| Added png_write_info_before_PLTE() function. |
| Fixed some typecasting in contrib/gregbook/*.c |
| Updated scripts/makevms.com and added makevms.com to contrib/gregbook |
| and contrib/pngminus (Martin Zinser) |
| version 1.0.5c [November 26, 1999] |
| Moved png_get_header_version from png.h to png.c, to accommodate ansi2knr. |
| Removed all global arrays (according to PNG_NO_GLOBAL_ARRAYS macro), to |
| accommodate making DLL's: Moved usr_png_ver from global variable to function |
| png_get_header_ver() in png.c. Moved png_sig to png_sig_bytes in png.c and |
| eliminated use of png_sig in pngwutil.c. Moved the various png_CHNK arrays |
| into pngtypes.h. Eliminated use of global png_pass arrays. Declared the |
| png_CHNK and png_pass arrays to be "const". Made the global arrays |
| available to applications (although none are used in libpng itself) when |
| PNG_NO_GLOBAL_ARRAYS is not defined or when PNG_GLOBAL_ARRAYS is defined. |
| Removed some extraneous "-I" from contrib/pngminus/makefile.std |
| Changed the PNG_sRGB_INTENT macros in png.h to be consistent with PNG-1.2. |
| Change PNG_SRGB_INTENT to PNG_sRGB_INTENT in libpng.txt and libpng.3 |
| version 1.0.5d [November 29, 1999] |
| Add type cast (png_const_charp) two places in png.c |
| Eliminated pngtypes.h; use macros instead to declare PNG_CHNK arrays. |
| Renamed "PNG_GLOBAL_ARRAYS" to "PNG_USE_GLOBAL_ARRAYS" and made available |
| to applications a macro "PNG_USE_LOCAL_ARRAYS". |
| #ifdef out all the new declarations when PNG_USE_GLOBAL_ARRAYS is defined. |
| Added PNG_EXPORT_VAR macro to accommodate making DLL's. |
| version 1.0.5e [November 30, 1999] |
| Added iCCP, iTXt, and sPLT support; added "lang" member to the png_text |
| structure; refactored the inflate/deflate support to make adding new chunks |
| with trailing compressed parts easier in the future, and added new functions |
| png_free_iCCP, png_free_pCAL, png_free_sPLT, png_free_text, png_get_iCCP, |
| png_get_spalettes, png_set_iCCP, png_set_spalettes (Eric S. Raymond). |
| NOTE: Applications that write text chunks MUST define png_text->lang |
| before calling png_set_text(). It must be set to NULL if you want to |
| write tEXt or zTXt chunks. If you want your application to be able to |
| run with older versions of libpng, use |
| |
| #ifdef PNG_iTXt_SUPPORTED |
| png_text[i].lang = NULL; |
| #endif |
| |
| Changed png_get_oFFs() and png_set_oFFs() to use signed rather than unsigned |
| offsets (Eric S. Raymond). |
| Combined PNG_READ_cHNK_SUPPORTED and PNG_WRITE_cHNK_SUPPORTED macros into |
| PNG_cHNK_SUPPORTED and combined the three types of PNG_text_SUPPORTED |
| macros, leaving the separate macros also available. |
| Removed comments on #endifs at the end of many short, non-nested #if-blocks. |
| version 1.0.5f [December 6, 1999] |
| Changed makefile.solaris to issue a warning about potential problems when |
| the ucb "ld" is in the path ahead of the ccs "ld". |
| Removed "- [date]" from the "synopsis" line in libpng.3 and libpngpf.3. |
| Added sCAL chunk support (Eric S. Raymond). |
| version 1.0.5g [December 7, 1999] |
| Fixed "png_free_spallettes" typo in png.h |
| Added code to handle new chunks in pngpread.c |
| Moved PNG_CHNK string macro definitions outside of PNG_NO_EXTERN block |
| Added "translated_key" to png_text structure and png_write_iTXt(). |
| Added code in pngwrite.c to work around a newly discovered zlib bug. |
| version 1.0.5h [December 10, 1999] |
| NOTE: regarding the note for version 1.0.5e, the following must also |
| be included in your code: |
| png_text[i].translated_key = NULL; |
| Unknown chunk handling is now supported. |
| Option to eliminate all floating point support was added. Some new |
| fixed-point functions such as png_set_gAMA_fixed() were added. |
| Expanded tabs and removed trailing blanks in source files. |
| version 1.0.5i [December 13, 1999] |
| Added some type casts to silence compiler warnings. |
| Renamed "png_free_spalette" to "png_free_spalettes" for consistency. |
| Removed leading blanks from a #define in pngvcrd.c |
| Added some parameters to the new png_set_keep_unknown_chunks() function. |
| Added a test for up->location != 0 in the first instance of writing |
| unknown chunks in pngwrite.c |
| Changed "num" to "i" in png_free_spalettes() and png_free_unknowns() to |
| prevent recursion. |
| Added png_free_hIST() function. |
| Various patches to fix bugs in the sCAL and integer cHRM processing, |
| and to add some convenience macros for use with sCAL. |
| version 1.0.5j [December 21, 1999] |
| Changed "unit" parameter of png_write_sCAL from png_byte to int, to work |
| around buggy compilers. |
| Added new type "png_fixed_point" for integers that hold float*100000 values |
| Restored backward compatibility of tEXt/zTXt chunk processing: |
| Restored the first four members of png_text to the same order as v.1.0.5d. |
| Added members "lang_key" and "itxt_length" to png_text struct. Set |
| text_length=0 when "text" contains iTXt data. Use the "compression" |
| member to distinguish among tEXt/zTXt/iTXt types. Added |
| PNG_ITXT_COMPRESSION_NONE (1) and PNG_ITXT_COMPRESSION_zTXt(2) macros. |
| The "Note" above, about backward incompatibility of libpng-1.0.5e, no |
| longer applies. |
| Fixed png_read|write_iTXt() to read|write parameters in the right order, |
| and to write the iTXt chunk after IDAT if it appears in the end_ptr. |
| Added pnggccrd.c, version of pngvcrd.c Intel assembler for gcc (Greg Roelofs) |
| Reversed the order of trying to write floating-point and fixed-point gAMA. |
| version 1.0.5k [December 27, 1999] |
| Added many parentheses, e.g., "if (a && b & c)" becomes "if (a && (b & c))" |
| Added png_handle_as_unknown() function (Glenn) |
| Added png_free_chunk_list() function and chunk_list and num_chunk_list members |
| of png_ptr. |
| Eliminated erroneous warnings about multiple sPLT chunks and sPLT-after-PLTE. |
| Fixed a libpng-1.0.5h bug in pngrutil.c that was issuing erroneous warnings |
| about ignoring incorrect gAMA with sRGB (gAMA was in fact not ignored) |
| Added png_free_tRNS(); png_set_tRNS() now malloc's its own trans array (ESR). |
| Define png_get_int_32 when oFFs chunk is supported as well as when pCAL is. |
| Changed type of proflen from png_int_32 to png_uint_32 in png_get_iCCP(). |
| version 1.0.5l [January 1, 2000] |
| Added functions png_set_read_user_chunk_fn() and png_get_user_chunk_ptr() |
| for setting a callback function to handle unknown chunks and for |
| retrieving the associated user pointer (Glenn). |
| version 1.0.5m [January 7, 2000] |
| Added high-level functions png_read_png(), png_write_png(), png_free_pixels(). |
| version 1.0.5n [January 9, 2000] |
| Added png_free_PLTE() function, and modified png_set_PLTE() to malloc its |
| own memory for info_ptr->palette. This makes it safe for the calling |
| application to free its copy of the palette any time after it calls |
| png_set_PLTE(). |
| version 1.0.5o [January 20, 2000] |
| Cosmetic changes only (removed some trailing blanks and TABs) |
| version 1.0.5p [January 31, 2000] |
| Renamed pngdll.mak to makefile.bd32 |
| Cosmetic changes in pngtest.c |
| version 1.0.5q [February 5, 2000] |
| Relocated the makefile.solaris warning about PATH problems. |
| Fixed pngvcrd.c bug by pushing/popping registers in mmxsupport (Bruce Oberg) |
| Revised makefile.gcmmx |
| Added PNG_SETJMP_SUPPORTED, PNG_SETJMP_NOT_SUPPORTED, and PNG_ABORT() macros |
| version 1.0.5r [February 7, 2000] |
| Removed superfluous prototype for png_get_itxt from png.h |
| Fixed a bug in pngrtran.c that improperly expanded the background color. |
| Return *num_text=0 from png_get_text() when appropriate, and fix documentation |
| of png_get_text() in libpng.txt/libpng.3. |
| version 1.0.5s [February 18, 2000] |
| Added "png_jmp_env()" macro to pngconf.h, to help people migrate to the |
| new error handler that's planned for the next libpng release, and changed |
| example.c, pngtest.c, and contrib programs to use this macro. |
| Revised some of the DLL-export macros in pngconf.h (Greg Roelofs) |
| Fixed a bug in png_read_png() that caused it to fail to expand some images |
| that it should have expanded. |
| Fixed some mistakes in the unused and undocumented INCH_CONVERSIONS functions |
| in pngget.c |
| Changed the allocation of palette, history, and trans arrays back to |
| the version 1.0.5 method (linking instead of copying) which restores |
| backward compatibility with version 1.0.5. Added some remarks about |
| that in example.c. Added "free_me" member to info_ptr and png_ptr |
| and added png_free_data() function. |
| Updated makefile.linux and makefile.gccmmx to make directories conditionally. |
| Made cosmetic changes to pngasmrd.h |
| Added png_set_rows() and png_get_rows(), for use with png_read|write_png(). |
| Modified png_read_png() to allocate info_ptr->row_pointers only if it |
| hasn't already been allocated. |
| version 1.0.5t [March 4, 2000] |
| Changed png_jmp_env() migration aiding macro to png_jmpbuf(). |
| Fixed "interlace" typo (should be "interlaced") in contrib/gregbook/read2-x.c |
| Fixed bug with use of PNG_BEFORE_IHDR bit in png_ptr->mode, introduced when |
| PNG_FLAG_HAVE_CHUNK_HEADER was moved into png_ptr->mode in version 1.0.5b |
| Files in contrib/gregbook were revised to use png_jmpbuf() and to select |
| a 24-bit visual if one is available, and to allow abbreviated options. |
| Files in contrib/pngminus were revised to use the png_jmpbuf() macro. |
| Removed spaces in makefile.linux and makefile.gcmmx, introduced in 1.0.5s |
| version 1.0.5u [March 5, 2000] |
| Simplified the code that detects old png.h in png.c and pngtest.c |
| Renamed png_spalette (_p, _pp) to png_sPLT_t (_tp, _tpp) |
| Increased precision of rgb_to_gray calculations from 8 to 15 bits and |
| added png_set_rgb_to_gray_fixed() function. |
| Added makefile.bc32 (32-bit Borland C++, C mode) |
| version 1.0.5v [March 11, 2000] |
| Added some parentheses to the png_jmpbuf macro definition. |
| Updated references to the zlib home page, which has moved to freesoftware.com. |
| Corrected bugs in documentation regarding png_read_row() and png_write_row(). |
| Updated documentation of png_rgb_to_gray calculations in libpng.3/libpng.txt. |
| Renamed makefile.borland,turboc3 back to makefile.bor,tc3 as in version 1.0.3, |
| revised borland makefiles; added makefile.ibmvac3 and makefile.gcc (Cosmin) |
| |
| version 1.0.6 [March 20, 2000] |
| Minor revisions of makefile.bor, libpng.txt, and gregbook/rpng2-win.c |
| Added makefile.sggcc (SGI IRIX with gcc) |
| version 1.0.6d [April 7, 2000] |
| Changed sprintf() to strcpy() in png_write_sCAL_s() to work without STDIO |
| Added data_length parameter to png_decompress_chunk() function |
| Revised documentation to remove reference to abandoned png_free_chnk functions |
| Fixed an error in png_rgb_to_gray_fixed() |
| Revised example.c, usage of png_destroy_write_struct(). |
| Renamed makefile.ibmvac3 to makefile.ibmc, added libpng.icc IBM project file |
| Added a check for info_ptr->free_me&PNG_FREE_TEXT when freeing text in png.c |
| Simplify png_sig_bytes() function to remove use of non-ISO-C strdup(). |
| version 1.0.6e [April 9, 2000] |
| Added png_data_freer() function. |
| In the code that checks for over-length tRNS chunks, added check of |
| info_ptr->num_trans as well as png_ptr->num_trans (Matthias Benckmann) |
| Minor revisions of libpng.txt/libpng.3. |
| Check for existing data and free it if the free_me flag is set, in png_set_*() |
| and png_handle_*(). |
| Only define PNG_WEIGHTED_FILTERS_SUPPORTED when PNG_FLOATING_POINT_SUPPORTED |
| is defined. |
| Changed several instances of PNG_NO_CONSOLE_ID to PNG_NO_STDIO in pngrutil.c |
| and mentioned the purposes of the two macros in libpng.txt/libpng.3. |
| version 1.0.6f [April 14, 2000] |
| Revised png_set_iCCP() and png_set_rows() to avoid prematurely freeing data. |
| Add checks in png_set_text() for NULL members of the input text structure. |
| Revised libpng.txt/libpng.3. |
| Removed superfluous prototype for png_set_itxt from png.h |
| Removed "else" from pngread.c, after png_error(), and changed "0" to "length". |
| Changed several png_errors about malformed ancillary chunks to png_warnings. |
| version 1.0.6g [April 24, 2000] |
| Added png_pass-* arrays to pnggccrd.c when PNG_USE_LOCAL_ARRAYS is defined. |
| Relocated paragraph about png_set_background() in libpng.3/libpng.txt |
| and other revisions (Matthias Benckmann) |
| Relocated info_ptr->free_me, png_ptr->free_me, and other info_ptr and |
| png_ptr members to restore binary compatibility with libpng-1.0.5 |
| (breaks compatibility with libpng-1.0.6). |
| version 1.0.6h [April 24, 2000] |
| Changed shared library so-number pattern from 2.x.y.z to xy.z (this builds |
| libpng.so.10 & libpng.so.10.6h instead of libpng.so.2 & libpng.so.2.1.0.6h) |
| This is a temporary change for test purposes. |
| version 1.0.6i [May 2, 2000] |
| Rearranged some members at the end of png_info and png_struct, to put |
| unknown_chunks_num and free_me within the original size of the png_structs |
| and free_me, png_read_user_fn, and png_free_fn within the original png_info, |
| because some old applications allocate the structs directly instead of |
| using png_create_*(). |
| Added documentation of user memory functions in libpng.txt/libpng.3 |
| Modified png_read_png so that it will use user_allocated row_pointers |
| if present, unless free_me directs that it be freed, and added description |
| of the use of png_set_rows() and png_get_rows() in libpng.txt/libpng.3. |
| Added PNG_LEGACY_SUPPORTED macro, and #ifdef out all new (since version |
| 1.00) members of png_struct and png_info, to regain binary compatibility |
| when you define this macro. Capabilities lost in this event |
| are user transforms (new in version 1.0.0),the user transform pointer |
| (new in version 1.0.2), rgb_to_gray (new in 1.0.5), iCCP, sCAL, sPLT, |
| the high-level interface, and unknown chunks support (all new in 1.0.6). |
| This was necessary because of old applications that allocate the structs |
| directly as authors were instructed to do in libpng-0.88 and earlier, |
| instead of using png_create_*(). |
| Added modes PNG_CREATED_READ_STRUCT and PNG_CREATED_WRITE_STRUCT which |
| can be used to detect codes that directly allocate the structs, and |
| code to check these modes in png_read_init() and png_write_init() and |
| generate a libpng error if the modes aren't set and PNG_LEGACY_SUPPORTED |
| was not defined. |
| Added makefile.intel and updated makefile.watcom (Pawel Mrochen) |
| version 1.0.6j [May 3, 2000] |
| Overloaded png_read_init() and png_write_init() with macros that convert |
| calls to png_read_init_2() or png_write_init_2() that check the version |
| and structure sizes. |
| version 1.0.7beta11 [May 7, 2000] |
| Removed the new PNG_CREATED_READ_STRUCT and PNG_CREATED_WRITE_STRUCT modes |
| which are no longer used. |
| Eliminated the three new members of png_text when PNG_LEGACY_SUPPORTED is |
| defined or when neither PNG_READ_iTXt_SUPPORTED nor PNG_WRITE_iTXT_SUPPORTED |
| is defined. |
| Made PNG_NO_READ|WRITE_iTXt the default setting, to avoid memory |
| overrun when old applications fill the info_ptr->text structure directly. |
| Added PNGAPI macro, and added it to the definitions of all exported functions. |
| Relocated version macro definitions ahead of the includes of zlib.h and |
| pngconf.h in png.h. |
| version 1.0.7beta12 [May 12, 2000] |
| Revised pngset.c to avoid a problem with expanding the png_debug macro. |
| Deleted some extraneous defines from pngconf.h |
| Made PNG_NO_CONSOLE_IO the default condition when PNG_BUILD_DLL is defined. |
| Use MSC _RPTn debugging instead of fprintf if _MSC_VER is defined. |
| Added png_access_version_number() function. |
| Check for mask&PNG_FREE_CHNK (for TEXT, SCAL, PCAL) in png_free_data(). |
| Expanded libpng.3/libpng.txt information about png_data_freer(). |
| version 1.0.7beta14 [May 17, 2000] (beta13 was not published) |
| Changed pnggccrd.c and pngvcrd.c to handle bad adaptive filter types as |
| warnings instead of errors, as pngrutil.c does. |
| Set the PNG_INFO_IDAT valid flag in png_set_rows() so png_write_png() |
| will actually write IDATs. |
| Made the default PNG_USE_LOCAL_ARRAYS depend on PNG_DLL instead of WIN32. |
| Make png_free_data() ignore its final parameter except when freeing data |
| that can have multiple instances (text, sPLT, unknowns). |
| Fixed a new bug in png_set_rows(). |
| Removed info_ptr->valid tests from png_free_data(), as in version 1.0.5. |
| Added png_set_invalid() function. |
| Fixed incorrect illustrations of png_destroy_write_struct() in example.c. |
| version 1.0.7beta15 [May 30, 2000] |
| Revised the deliberately erroneous Linux setjmp code in pngconf.h to produce |
| fewer error messages. |
| Rearranged checks for Z_OK to check the most likely path first in pngpread.c |
| and pngwutil.c. |
| Added checks in pngtest.c for png_create_*() returning NULL, and mentioned |
| in libpng.txt/libpng.3 the need for applications to check this. |
| Changed names of png_default_*() functions in pngtest to pngtest_*(). |
| Changed return type of png_get_x|y_offset_*() from png_uint_32 to png_int_32. |
| Fixed some bugs in the unused PNG_INCH_CONVERSIONS functions in pngget.c |
| Set each pointer to NULL after freeing it in png_free_data(). |
| Worked around a problem in pngconf.h; AIX's strings.h defines an "index" |
| macro that conflicts with libpng's png_color_16.index. (Dimitri Papadapoulos) |
| Added "msvc" directory with MSVC++ project files (Simon-Pierre Cadieux). |
| version 1.0.7beta16 [June 4, 2000] |
| Revised the workaround of AIX string.h "index" bug. |
| Added a check for overlength PLTE chunk in pngrutil.c. |
| Added PNG_NO_POINTER_INDEXING macro to use array-indexing instead of pointer |
| indexing in pngrutil.c and pngwutil.c to accommodate a buggy compiler. |
| Added a warning in png_decompress_chunk() when it runs out of data, e.g. |
| when it tries to read an erroneous PhotoShop iCCP chunk. |
| Added PNG_USE_DLL macro. |
| Revised the copyright/disclaimer/license notice. |
| Added contrib/msvctest directory |
| version 1.0.7rc1 [June 9, 2000] |
| Corrected the definition of PNG_TRANSFORM_INVERT_ALPHA (0x0400 not 0x0200) |
| Added contrib/visupng directory (Willem van Schaik) |
| version 1.0.7beta18 [June 23, 2000] |
| Revised PNGAPI definition, and pngvcrd.c to work with __GCC__ |
| and do not redefine PNGAPI if it is passed in via a compiler directive. |
| Revised visupng/PngFile.c to remove returns from within the Try block. |
| Removed leading underscores from "_PNG_H" and "_PNG_SAVE_BSD_SOURCE" macros. |
| Updated contrib/visupng/cexcept.h to version 1.0.0. |
| Fixed bugs in pngwrite.c and pngwutil.c that prevented writing iCCP chunks. |
| version 1.0.7rc2 [June 28, 2000] |
| Updated license to include disclaimers required by UCITA. |
| Fixed "DJBPP" typo in pnggccrd.c introduced in beta18. |
| |
| version 1.0.7 [July 1, 2000] |
| Revised the definition of "trans_values" in libpng.3/libpng.txt |
| version 1.0.8beta1 [July 8, 2000] |
| Added png_free(png_ptr, key) two places in pngpread.c to stop memory leaks. |
| Changed PNG_NO_STDIO to PNG_NO_CONSOLE_IO, several places in pngrutil.c and |
| pngwutil.c. |
| Changed PNG_EXPORT_VAR to use PNG_IMPEXP, in pngconf.h. |
| Removed unused "#include <assert.h>" from png.c |
| Added WindowsCE support. |
| Revised pnggccrd.c to work with gcc-2.95.2 and in the Cygwin environment. |
| version 1.0.8beta2 [July 10, 2000] |
| Added project files to the wince directory and made further revisions |
| of pngtest.c, pngrio.c, and pngwio.c in support of WindowsCE. |
| version 1.0.8beta3 [July 11, 2000] |
| Only set the PNG_FLAG_FREE_TRNS or PNG_FREE_TRNS flag in png_handle_tRNS() |
| for indexed-color input files to avoid potential double-freeing trans array |
| under some unusual conditions; problem was introduced in version 1.0.6f. |
| Further revisions to pngtest.c and files in the wince subdirectory. |
| version 1.0.8beta4 [July 14, 2000] |
| Added the files pngbar.png and pngbar.jpg to the distribution. |
| Added makefile.cygwin, and cygwin support in pngconf.h |
| Added PNG_NO_ZALLOC_ZERO macro (makes png_zalloc skip zeroing memory) |
| version 1.0.8rc1 [July 16, 2000] |
| Revised png_debug() macros and statements to eliminate compiler warnings. |
| |
| version 1.0.8 [July 24, 2000] |
| Added png_flush() in pngwrite.c, after png_write_IEND(). |
| Updated makefile.hpux to build a shared library. |
| version 1.0.9beta1 [November 10, 2000] |
| Fixed typo in scripts/makefile.hpux |
| Updated makevms.com in scripts and contrib/* and contrib/* (Martin Zinser) |
| Fixed seqence-point bug in contrib/pngminus/png2pnm (Martin Zinser) |
| Changed "cdrom.com" in documentation to "libpng.org" |
| Revised pnggccrd.c to get it all working, and updated makefile.gcmmx (Greg). |
| Changed type of "params" from voidp to png_voidp in png_read|write_png(). |
| Make sure PNGAPI and PNG_IMPEXP are defined in pngconf.h. |
| Revised the 3 instances of WRITEFILE in pngtest.c. |
| Relocated "msvc" and "wince" project subdirectories into "dll" subdirectory. |
| Updated png.rc in dll/msvc project |
| Revised makefile.dec to define and use LIBPATH and INCPATH |
| Increased size of global png_libpng_ver[] array from 12 to 18 chars. |
| Made global png_libpng_ver[], png_sig[] and png_pass_*[] arrays const. |
| Removed duplicate png_crc_finish() from png_handle_bKGD() function. |
| Added a warning when application calls png_read_update_info() multiple times. |
| Revised makefile.cygwin |
| Fixed bugs in iCCP support in pngrutil.c and pngwutil.c. |
| Replaced png_set_empty_plte_permitted() with png_permit_mng_features(). |
| version 1.0.9beta2 [November 19, 2000] |
| Renamed the "dll" subdirectory "projects". |
| Added borland project files to "projects" subdirectory. |
| Set VS_FF_PRERELEASE and VS_FF_PATCHED flags in msvc/png.rc when appropriate. |
| Add error message in png_set_compression_buffer_size() when malloc fails. |
| version 1.0.9beta3 [November 23, 2000] |
| Revised PNG_LIBPNG_BUILD_TYPE macro in png.h, used in the msvc project. |
| Removed the png_flush() in pngwrite.c that crashes some applications |
| that don't set png_output_flush_fn. |
| Added makefile.macosx and makefile.aix to scripts directory. |
| version 1.0.9beta4 [December 1, 2000] |
| Change png_chunk_warning to png_warning in png_check_keyword(). |
| Increased the first part of msg buffer from 16 to 18 in png_chunk_error(). |
| version 1.0.9beta5 [December 15, 2000] |
| Added support for filter method 64 (for PNG datastreams embedded in MNG). |
| version 1.0.9beta6 [December 18, 2000] |
| Revised png_set_filter() to accept filter method 64 when appropriate. |
| Added new PNG_HAVE_PNG_SIGNATURE bit to png_ptr->mode and use it to |
| help prevent applications from using MNG features in PNG datastreams. |
| Added png_permit_mng_features() function. |
| Revised libpng.3/libpng.txt. Changed "filter type" to "filter method". |
| version 1.0.9rc1 [December 23, 2000] |
| Revised test for PNG_HAVE_PNG_SIGNATURE in pngrutil.c |
| Fixed error handling of unknown compression type in png_decompress_chunk(). |
| In pngconf.h, define __cdecl when _MSC_VER is defined. |
| version 1.0.9beta7 [December 28, 2000] |
| Changed PNG_TEXT_COMPRESSION_zTXt to PNG_COMPRESSION_TYPE_BASE several places. |
| Revised memory management in png_set_hIST and png_handle_hIST in a backward |
| compatible manner. PLTE and tRNS were revised similarly. |
| Revised the iCCP chunk reader to ignore trailing garbage. |
| version 1.0.9beta8 [January 12, 2001] |
| Moved pngasmrd.h into pngconf.h. |
| Improved handling of out-of-spec garbage iCCP chunks generated by PhotoShop. |
| version 1.0.9beta9 [January 15, 2001] |
| Added png_set_invalid, png_permit_mng_features, and png_mmx_supported to |
| wince and msvc project module definition files. |
| Minor revision of makefile.cygwin. |
| Fixed bug with progressive reading of narrow interlaced images in pngpread.c |
| version 1.0.9beta10 [January 16, 2001] |
| Do not typedef png_FILE_p in pngconf.h when PNG_NO_STDIO is defined. |
| Fixed "png_mmx_supported" typo in project definition files. |
| version 1.0.9beta11 [January 19, 2001] |
| Updated makefile.sgi to make shared library. |
| Removed png_mmx_support() function and disabled PNG_MNG_FEATURES_SUPPORTED |
| by default, for the benefit of DLL forward compatibility. These will |
| be re-enabled in version 1.2.0. |
| version 1.0.9rc2 [January 22, 2001] |
| Revised cygwin support. |
| |
| version 1.0.9 [January 31, 2001] |
| Added check of cygwin's ALL_STATIC in pngconf.h |
| Added "-nommx" parameter to contrib/gregbook/rpng2-win and rpng2-x demos. |
| version 1.0.10beta1 [March 14, 2001] |
| Revised makefile.dec, makefile.sgi, and makefile.sggcc; added makefile.hpgcc. |
| Reformatted libpng.3 to eliminate bad line breaks. |
| Added checks for _mmx_supported in the read_filter_row function of pnggccrd.c |
| Added prototype for png_mmx_support() near the top of pnggccrd.c |
| Moved some error checking from png_handle_IHDR to png_set_IHDR. |
| Added PNG_NO_READ_SUPPORTED and PNG_NO_WRITE_SUPPORTED macros. |
| Revised png_mmx_support() function in pnggccrd.c |
| Restored version 1.0.8 PNG_WRITE_EMPTY_PLTE_SUPPORTED behavior in pngwutil.c |
| Fixed memory leak in contrib/visupng/PngFile.c |
| Fixed bugs in png_combine_row() in pnggccrd.c and pngvcrd.c (C version) |
| Added warnings when retrieving or setting gamma=0. |
| Increased the first part of msg buffer from 16 to 18 in png_chunk_warning(). |
| version 1.0.10rc1 [March 23, 2001] |
| Changed all instances of memcpy, strcpy, and strlen to png_memcpy, png_strcpy, |
| and png_strlen. |
| Revised png_mmx_supported() function in pnggccrd.c to return proper value. |
| Fixed bug in progressive reading (pngpread.c) with small images (height < 8). |
| |
| version 1.0.10 [March 30, 2001] |
| Deleted extraneous space (introduced in 1.0.9) from line 42 of makefile.cygwin |
| Added beos project files (Chris Herborth) |
| version 1.0.11beta1 [April 3, 2001] |
| Added type casts on several png_malloc() calls (Dimitri Papadapoulos). |
| Removed a no-longer needed AIX work-around from pngconf.h |
| Changed several "//" single-line comments to C-style in pnggccrd.c |
| version 1.0.11beta2 [April 11, 2001] |
| Removed PNGAPI from several functions whose prototypes did not have PNGAPI. |
| Updated scripts/pngos2.def |
| version 1.0.11beta3 [April 14, 2001] |
| Added checking the results of many instances of png_malloc() for NULL |
| version 1.0.11beta4 [April 20, 2001] |
| Undid the changes from version 1.0.11beta3. Added a check for NULL return |
| from user's malloc_fn(). |
| Removed some useless type casts of the NULL pointer. |
| Added makefile.netbsd |
| |
| version 1.0.11 [April 27, 2001] |
| Revised makefile.netbsd |
| version 1.0.12beta1 [May 14, 2001] |
| Test for Windows platform in pngconf.h when including malloc.h (Emmanuel Blot) |
| Updated makefile.cygwin and handling of Cygwin's ALL_STATIC in pngconf.h |
| Added some never-to-be-executed code in pnggccrd.c to quiet compiler warnings. |
| Eliminated the png_error about apps using png_read|write_init(). Instead, |
| libpng will reallocate the png_struct and info_struct if they are too small. |
| This retains future binary compatibility for old applications written for |
| libpng-0.88 and earlier. |
| version 1.2.0beta1 [May 6, 2001] |
| Bumped DLLNUM to 2. |
| Re-enabled PNG_MNG_FEATURES_SUPPORTED and enabled PNG_ASSEMBLER_CODE_SUPPORTED |
| by default. |
| Added runtime selection of MMX features. |
| Added png_set_strip_error_numbers function and related macros. |
| version 1.2.0beta2 [May 7, 2001] |
| Finished merging 1.2.0beta1 with version 1.0.11 |
| Added a check for attempts to read or write PLTE in grayscale PNG datastreams. |
| version 1.2.0beta3 [May 17, 2001] |
| Enabled user memory function by default. |
| Modified png_create_struct so it passes user mem_ptr to user memory allocator. |
| Increased png_mng_features flag from png_byte to png_uint_32. |
| Bumped shared-library (so-number) and dll-number to 3. |
| version 1.2.0beta4 [June 23, 2001] |
| Check for missing profile length field in iCCP chunk and free chunk_data |
| in case of truncated iCCP chunk. |
| Bumped shared-library number to 3 in makefile.sgi and makefile.sggcc |
| Bumped dll-number from 2 to 3 in makefile.cygwin |
| Revised contrib/gregbook/rpng*-x.c to avoid a memory leak and to exit cleanly |
| if user attempts to run it on an 8-bit display. |
| Updated contrib/gregbook |
| Use png_malloc instead of png_zalloc to allocate palette in pngset.c |
| Updated makefile.ibmc |
| Added some typecasts to eliminate gcc 3.0 warnings. Changed prototypes |
| of png_write_oFFS width and height from png_uint_32 to png_int_32. |
| Updated example.c |
| Revised prototypes for png_debug_malloc and png_debug_free in pngtest.c |
| version 1.2.0beta5 [August 8, 2001] |
| Revised contrib/gregbook |
| Revised makefile.gcmmx |
| Revised pnggccrd.c to conditionally compile some thread-unsafe code only |
| when PNG_THREAD_UNSAFE_OK is defined. |
| Added tests to prevent pngwutil.c from writing a bKGD or tRNS chunk with |
| value exceeding 2^bit_depth-1 |
| Revised makefile.sgi and makefile.sggcc |
| Replaced calls to fprintf(stderr,...) with png_warning() in pnggccrd.c |
| Removed restriction that do_invert_mono only operate on 1-bit opaque files |
| |
| version 1.2.0 [September 1, 2001] |
| Changed a png_warning() to png_debug() in pnggccrd.c |
| Fixed contrib/gregbook/rpng-x.c, rpng2-x.c to avoid crash with XFreeGC(). |
| version 1.2.1beta1 [October 19, 2001] |
| Revised makefile.std in contrib/pngminus |
| Include background_1 in png_struct regardless of gamma support. |
| Revised makefile.netbsd and makefile.macosx, added makefile.darwin. |
| Revised example.c to provide more details about using row_callback(). |
| version 1.2.1beta2 [October 25, 2001] |
| Added type cast to each NULL appearing in a function call, except for |
| WINCE functions. |
| Added makefile.so9. |
| version 1.2.1beta3 [October 27, 2001] |
| Removed type casts from all NULLs. |
| Simplified png_create_struct_2(). |
| version 1.2.1beta4 [November 7, 2001] |
| Revised png_create_info_struct() and png_creat_struct_2(). |
| Added error message if png_write_info() was omitted. |
| Type cast NULLs appearing in function calls when _NO_PROTO or |
| PNG_TYPECAST_NULL is defined. |
| version 1.2.1rc1 [November 24, 2001] |
| Type cast NULLs appearing in function calls except when PNG_NO_TYPECAST_NULL |
| is defined. |
| Changed typecast of "size" argument to png_size_t in pngmem.c calls to |
| the user malloc_fn, to agree with the prototype in png.h |
| Added a pop/push operation to pnggccrd.c, to preserve Eflag (Maxim Sobolev) |
| Updated makefile.sgi to recognize LIBPATH and INCPATH. |
| Updated various makefiles so "make clean" does not remove previous major |
| version of the shared library. |
| version 1.2.1rc2 [December 4, 2001] |
| Always allocate 256-entry internal palette, hist, and trans arrays, to |
| avoid out-of-bounds memory reference caused by invalid PNG datastreams. |
| Added a check for prefix_length > data_length in iCCP chunk handler. |
| |
| version 1.2.1 [December 7, 2001] |
| None. |
| version 1.2.2beta1 [February 22, 2002] |
| Fixed a bug with reading the length of iCCP profiles (Larry Reeves). |
| Revised makefile.linux, makefile.gcmmx, and makefile.sgi to generate |
| libpng.a, libpng12.so (not libpng.so.3), and libpng12/png.h |
| Revised makefile.darwin to remove "-undefined suppress" option. |
| Added checks for gamma and chromaticity values over 21474.83, which exceed |
| the limit for PNG unsigned 32-bit integers when encoded. |
| Revised calls to png_create_read_struct() and png_create_write_struct() |
| for simpler debugging. |
| Revised png_zalloc() so zlib handles errors (uses PNG_FLAG_MALLOC_NULL_MEM_OK) |
| version 1.2.2beta2 [February 23, 2002] |
| Check chunk_length and idat_size for invalid (over PNG_MAX_UINT) lengths. |
| Check for invalid image dimensions in png_get_IHDR. |
| Added missing "fi;" in the install target of the SGI makefiles. |
| Added install-static to all makefiles that make shared libraries. |
| Always do gamma compensation when image is partially transparent. |
| version 1.2.2beta3 [March 7, 2002] |
| Compute background.gray and background_1.gray even when color_type is RGB |
| in case image gets reduced to gray later. |
| Modified shared-library makefiles to install pkgconfig/libpngNN.pc. |
| Export (with PNGAPI) png_zalloc, png_zfree, and png_handle_as_unknown |
| Removed unused png_write_destroy_info prototype from png.h |
| Eliminated incorrect use of width_mmx from pnggccrd.c in pixel_bytes == 8 case |
| Added install-shared target to all makefiles that make shared libraries. |
| Stopped a double free of palette, hist, and trans when not using free_me. |
| Added makefile.32sunu for Sun Ultra 32 and makefile.64sunu for Sun Ultra 64. |
| version 1.2.2beta4 [March 8, 2002] |
| Compute background.gray and background_1.gray even when color_type is RGB |
| in case image gets reduced to gray later (Jason Summers). |
| Relocated a misplaced /bin/rm in the "install-shared" makefile targets |
| Added PNG_1_0_X macro which can be used to build a 1.0.x-compatible library. |
| version 1.2.2beta5 [March 26, 2002] |
| Added missing PNGAPI to several function definitions. |
| Check for invalid bit_depth or color_type in png_get_IHDR(), and |
| check for missing PLTE or IHDR in png_push_read_chunk() (Matthias Clasen). |
| Revised iTXt support to accept NULL for lang and lang_key. |
| Compute gamma for color components of background even when color_type is gray. |
| Changed "()" to "{}" in scripts/libpng.pc.in. |
| Revised makefiles to put png.h and pngconf.h only in $prefix/include/libpngNN |
| Revised makefiles to make symlink to libpng.so.NN in addition to libpngNN.so |
| version 1.2.2beta6 [March 31, 2002] |
| version 1.0.13beta1 [March 31, 2002] |
| Prevent png_zalloc() from trying to memset memory that it failed to acquire. |
| Add typecasts of PNG_MAX_UINT in pngset_cHRM_fixed() (Matt Holgate). |
| Ensure that the right function (user or default) is used to free the |
| png_struct after an error in png_create_read_struct_2(). |
| version 1.2.2rc1 [April 7, 2002] |
| version 1.0.13rc1 [April 7, 2002] |
| Save the ebx register in pnggccrd.c (Sami Farin) |
| Add "mem_ptr = png_ptr->mem_ptr" in png_destroy_write_struct() (Paul Gardner). |
| Updated makefiles to put headers in include/libpng and remove old include/*.h. |
| |
| version 1.2.2 [April 15, 2002] |
| version 1.0.13 [April 15, 2002] |
| Revised description of png_set_filter() in libpng.3/libpng.txt. |
| Revised makefile.netbsd and added makefile.neNNbsd and makefile.freebsd |
| version 1.0.13patch01 [April 17, 2002] |
| version 1.2.2patch01 [April 17, 2002] |
| Changed ${PNGMAJ}.${PNGVER} bug to ${PNGVER} in makefile.sgi and makefile.sggcc |
| Fixed VER -> PNGVER typo in makefile.macosx and added install-static to install |
| Added install: target to makefile.32sunu and makefile.64sunu |
| version 1.0.13patch03 [April 18, 2002] |
| version 1.2.2patch03 [April 18, 2002] |
| Revised 15 makefiles to link libpng.a to libpngNN.a and the include libpng |
| subdirectory to libpngNN subdirectory without the full pathname. |
| Moved generation of libpng.pc from "install" to "all" in 15 makefiles. |
| version 1.2.3rc1 [April 28, 2002] |
| Added install-man target to 15 makefiles (Dimitri Papadopolous-Orfanos). |
| Added $(DESTDIR) feature to 24 makefiles (Tim Mooney) |
| Fixed bug with $prefix, should be $(prefix) in makefile.hpux. |
| Updated cygwin-specific portion of pngconf.h and revised makefile.cygwin |
| Added a link from libpngNN.pc to libpng.pc in 15 makefiles. |
| Added links from include/libpngNN/*.h to include/*.h in 24 makefiles. |
| Revised makefile.darwin to make relative links without full pathname. |
| Added setjmp() at the end of png_create_*_struct_2() in case user forgets |
| to put one in their application. |
| Restored png_zalloc() and png_zfree() prototypes to version 1.2.1 and |
| removed them from module definition files. |
| version 1.2.3rc2 [May 1, 2002] |
| Fixed bug in reporting number of channels in pngget.c and pngset.c, |
| that was introduced in version 1.2.2beta5. |
| Exported png_zalloc(), png_zfree(), png_default_read(), png_default_write(), |
| png_default_flush(), and png_push_fill_buffer() and included them in |
| module definition files. |
| Added "libpng.pc" dependency to the "install-shared" target in 15 makefiles. |
| version 1.2.3rc3 [May 1, 2002] |
| Revised prototype for png_default_flush() |
| Remove old libpng.pc and libpngNN.pc before installing new ones. |
| version 1.2.3rc4 [May 2, 2002] |
| Typos in *.def files (png_default_read|write -> png_default_read|write_data) |
| In makefiles, changed rm libpng.NN.pc to rm libpngNN.pc |
| Added libpng-config and libpngNN-config and modified makefiles to install them. |
| Changed $(MANPATH) to $(DESTDIR)$(MANPATH) in makefiles |
| Added "Win32 DLL VB" configuration to projects/msvc/libpng.dsp |
| version 1.2.3rc5 [May 11, 2002] |
| Changed "error" and "message" in prototypes to "error_message" and |
| "warning_message" to avoid namespace conflict. |
| Revised 15 makefiles to build libpng-config from libpng-config-*.in |
| Once more restored png_zalloc and png_zfree to regular nonexported form. |
| Restored png_default_read|write_data, png_default_flush, png_read_fill_buffer |
| to nonexported form, but with PNGAPI, and removed them from module def files. |
| version 1.2.3rc6 [May 14, 2002] |
| Removed "PNGAPI" from png_zalloc() and png_zfree() in png.c |
| Changed "Gz" to "Gd" in projects/msvc/libpng.dsp and zlib.dsp. |
| Removed leftover libpng-config "sed" script from four makefiles. |
| Revised libpng-config creating script in 16 makefiles. |
| |
| version 1.2.3 [May 22, 2002] |
| Revised libpng-config target in makefile.cygwin. |
| Removed description of png_set_mem_fn() from documentation. |
| Revised makefile.freebsd. |
| Minor cosmetic changes to 15 makefiles, e.g., $(DI) = $(DESTDIR)/$(INCDIR). |
| Revised projects/msvc/README.txt |
| Changed -lpng to -lpngNN in LDFLAGS in several makefiles. |
| version 1.2.4beta1 [May 24, 2002] |
| Added libpng.pc and libpng-config to "all:" target in 16 makefiles. |
| Fixed bug in 16 makefiles: $(DESTDIR)/$(LIBPATH) to $(DESTDIR)$(LIBPATH) |
| Added missing "\" before closing double quote in makefile.gcmmx. |
| Plugged various memory leaks; added png_malloc_warn() and png_set_text_2() |
| functions. |
| version 1.2.4beta2 [June 25, 2002] |
| Plugged memory leak of png_ptr->current_text (Matt Holgate). |
| Check for buffer overflow before reading CRC in pngpread.c (Warwick Allison) |
| Added -soname to the loader flags in makefile.dec, makefile.sgi, and |
| makefile.sggcc. |
| Added "test-installed" target to makefile.linux, makefile.gcmmx, |
| makefile.sgi, and makefile.sggcc. |
| version 1.2.4beta3 [June 28, 2002] |
| Plugged memory leak of row_buf in pngtest.c when there is a png_error(). |
| Detect buffer overflow in pngpread.c when IDAT is corrupted with extra data. |
| Added "test-installed" target to makefile.32sunu, makefile.64sunu, |
| makefile.beos, makefile.darwin, makefile.dec, makefile.macosx, |
| makefile.solaris, makefile.hpux, makefile.hpgcc, and makefile.so9. |
| version 1.2.4rc1 and 1.0.14rc1 [July 2, 2002] |
| Added "test-installed" target to makefile.cygwin and makefile.sco. |
| Revised pnggccrd.c to be able to back out version 1.0.x via PNG_1_0_X macro. |
| |
| version 1.2.4 and 1.0.14 [July 8, 2002] |
| Changed png_warning() to png_error() when width is too large to process. |
| version 1.2.4patch01 [July 20, 2002] |
| Revised makefile.cygwin to use DLL number 12 instead of 13. |
| version 1.2.5beta1 [August 6, 2002] |
| Added code to contrib/gregbook/readpng2.c to ignore unused chunks. |
| Replaced toucan.png in contrib/gregbook (it has been corrupt since 1.0.11) |
| Removed some stray *.o files from contrib/gregbook. |
| Changed png_error() to png_warning() about "Too much data" in pngpread.c |
| and about "Extra compressed data" in pngrutil.c. |
| Prevent png_ptr->pass from exceeding 7 in png_push_finish_row(). |
| Updated makefile.hpgcc |
| Updated png.c and pnggccrd.c handling of return from png_mmx_support() |
| version 1.2.5beta2 [August 15, 2002] |
| Only issue png_warning() about "Too much data" in pngpread.c when avail_in |
| is nonzero. |
| Updated makefiles to install a separate libpng.so.3 with its own rpath. |
| version 1.2.5rc1 and 1.0.15rc1 [August 24, 2002] |
| Revised makefiles to not remove previous minor versions of shared libraries. |
| version 1.2.5rc2 and 1.0.15rc2 [September 16, 2002] |
| Revised 13 makefiles to remove "-lz" and "-L$(ZLIBLIB)", etc., from shared |
| library loader directive. |
| Added missing "$OBJSDLL" line to makefile.gcmmx. |
| Added missing "; fi" to makefile.32sunu. |
| version 1.2.5rc3 and 1.0.15rc3 [September 18, 2002] |
| Revised libpng-config script. |
| |
| version 1.2.5 and 1.0.15 [October 3, 2002] |
| Revised makefile.macosx, makefile.darwin, makefile.hpgcc, and makefile.hpux, |
| and makefile.aix. |
| Relocated two misplaced PNGAPI lines in pngtest.c |
| version 1.2.6beta1 [October 22, 2002] |
| Commented out warning about uninitialized mmx_support in pnggccrd.c. |
| Changed "IBMCPP__" flag to "__IBMCPP__" in pngconf.h. |
| Relocated two more misplaced PNGAPI lines in pngtest.c |
| Fixed memory overrun bug in png_do_read_filler() with 16-bit datastreams, |
| introduced in version 1.0.2. |
| Revised makefile.macosx, makefile.dec, makefile.aix, and makefile.32sunu. |
| version 1.2.6beta2 [November 1, 2002] |
| Added libpng-config "--ldopts" output. |
| Added "AR=ar" and "ARFLAGS=rc" and changed "ar rc" to "$(AR) $(ARFLAGS)" |
| in makefiles. |
| version 1.2.6beta3 [July 18, 2004] |
| Reverted makefile changes from version 1.2.6beta2 and some of the changes |
| from version 1.2.6beta1; these will be postponed until version 1.2.7. |
| Version 1.2.6 is going to be a simple bugfix release. |
| Changed the one instance of "ln -sf" to "ln -f -s" in each Sun makefile. |
| Fixed potential overrun in pngerror.c by using strncpy instead of memcpy. |
| Added "#!/bin/sh" at the top of configure, for recognition of the |
| 'x' flag under Cygwin (Cosmin). |
| Optimized vacuous tests that silence compiler warnings, in png.c (Cosmin). |
| Added support for PNG_USER_CONFIG, in pngconf.h (Cosmin). |
| Fixed the special memory handler for Borland C under DOS, in pngmem.c |
| (Cosmin). |
| Removed some spurious assignments in pngrutil.c (Cosmin). |
| Replaced 65536 with 65536L, and 0xffff with 0xffffL, to silence warnings |
| on 16-bit platforms (Cosmin). |
| Enclosed shift op expressions in parentheses, to silence warnings (Cosmin). |
| Used proper type png_fixed_point, to avoid problems on 16-bit platforms, |
| in png_handle_sRGB() (Cosmin). |
| Added compression_type to png_struct, and optimized the window size |
| inside the deflate stream (Cosmin). |
| Fixed definition of isnonalpha(), in pngerror.c and pngrutil.c (Cosmin). |
| Fixed handling of unknown chunks that come after IDAT (Cosmin). |
| Allowed png_error() and png_warning() to work even if png_ptr == NULL |
| (Cosmin). |
| Replaced row_info->rowbytes with row_bytes in png_write_find_filter() |
| (Cosmin). |
| Fixed definition of PNG_LIBPNG_VER_DLLNUM (Simon-Pierre). |
| Used PNG_LIBPNG_VER and PNG_LIBPNG_VER_STRING instead of the hardcoded |
| values in png.c (Simon-Pierre, Cosmin). |
| Initialized png_libpng_ver[] with PNG_LIBPNG_VER_STRING (Simon-Pierre). |
| Replaced PNG_LIBPNG_VER_MAJOR with PNG_LIBPNG_VER_DLLNUM in png.rc |
| (Simon-Pierre). |
| Moved the definition of PNG_HEADER_VERSION_STRING near the definitions |
| of the other PNG_LIBPNG_VER_... symbols in png.h (Cosmin). |
| Relocated #ifndef PNGAPI guards in pngconf.h (Simon-Pierre, Cosmin). |
| Updated scripts/makefile.vc(a)win32 (Cosmin). |
| Updated the MSVC project (Simon-Pierre, Cosmin). |
| Updated the Borland C++ Builder project (Cosmin). |
| Avoided access to asm_flags in pngvcrd.c, if PNG_1_0_X is defined (Cosmin). |
| Commented out warning about uninitialized mmx_support in pngvcrd.c (Cosmin). |
| Removed scripts/makefile.bd32 and scripts/pngdef.pas (Cosmin). |
| Added extra guard around inclusion of Turbo C memory headers, in pngconf.h |
| (Cosmin). |
| Renamed projects/msvc/ to projects/visualc6/, and projects/borland/ to |
| projects/cbuilder5/ (Cosmin). |
| Moved projects/visualc6/png32ms.def to scripts/pngw32.def, |
| and projects/visualc6/png.rc to scripts/pngw32.rc (Cosmin). |
| Added projects/visualc6/pngtest.dsp; removed contrib/msvctest/ (Cosmin). |
| Changed line endings to DOS style in cbuilder5 and visualc6 files, even |
| in the tar.* distributions (Cosmin). |
| Updated contrib/visupng/VisualPng.dsp (Cosmin). |
| Updated contrib/visupng/cexcept.h to version 2.0.0 (Cosmin). |
| Added a separate distribution with "configure" and supporting files (Junichi). |
| version 1.2.6beta4 [July 28, 2004] |
| Added user ability to change png_size_t via a PNG_SIZE_T macro. |
| Added png_sizeof() and png_convert_size() functions. |
| Added PNG_SIZE_MAX (maximum value of a png_size_t variable. |
| Added check in png_malloc_default() for (size_t)size != (png_uint_32)size |
| which would indicate an overflow. |
| Changed sPLT failure action from png_error to png_warning and abandon chunk. |
| Changed sCAL and iCCP failures from png_error to png_warning and abandon. |
| Added png_get_uint_31(png_ptr, buf) function. |
| Added PNG_UINT_32_MAX macro. |
| Renamed PNG_MAX_UINT to PNG_UINT_31_MAX. |
| Made png_zalloc() issue a png_warning and return NULL on potential |
| overflow. |
| Turn on PNG_NO_ZALLOC_ZERO by default in version 1.2.x |
| Revised "clobber list" in pnggccrd.c so it will compile under gcc-3.4. |
| Revised Borland portion of png_malloc() to return NULL or issue |
| png_error() according to setting of PNG_FLAG_MALLOC_NULL_MEM_OK. |
| Added PNG_NO_SEQUENTIAL_READ_SUPPORTED macro to conditionally remove |
| sequential read support. |
| Added some "#if PNG_WRITE_SUPPORTED" blocks. |
| #ifdef'ed out some redundancy in png_malloc_default(). |
| Use png_malloc instead of png_zalloc to allocate the pallete. |
| version 1.0.16rc1 and 1.2.6rc1 [August 4, 2004] |
| Fixed buffer overflow vulnerability in png_handle_tRNS() |
| Fixed integer arithmetic overflow vulnerability in png_read_png(). |
| Fixed some harmless bugs in png_handle_sBIT, etc, that would cause |
| duplicate chunk types to go undetected. |
| Fixed some timestamps in the -config version |
| Rearranged order of processing of color types in png_handle_tRNS(). |
| Added ROWBYTES macro to calculate rowbytes without integer overflow. |
| Updated makefile.darwin and removed makefile.macosx from scripts directory. |
| Imposed default one million column, one-million row limits on the image |
| dimensions, and added png_set_user_limits() function to override them. |
| Revised use of PNG_SET_USER_LIMITS_SUPPORTED macro. |
| Fixed wrong cast of returns from png_get_user_width|height_max(). |
| Changed some "keep the compiler happy" from empty statements to returns, |
| Revised libpng.txt to remove 1.2.x stuff from the 1.0.x distribution |
| version 1.0.16rc2 and 1.2.6rc2 [August 7, 2004] |
| Revised makefile.darwin and makefile.solaris. Removed makefile.macosx. |
| Revised pngtest's png_debug_malloc() to use png_malloc() instead of |
| png_malloc_default() which is not supposed to be exported. |
| Fixed off-by-one error in one of the conversions to PNG_ROWBYTES() in |
| pngpread.c. Bug was introduced in 1.2.6rc1. |
| Fixed bug in RGB to RGBX transformation introduced in 1.2.6rc1. |
| Fixed old bug in RGB to Gray transformation. |
| Fixed problem with 64-bit compilers by casting arguments to abs() |
| to png_int_32. |
| Changed "ln -sf" to "ln -f -s" in three makefiles (solaris, sco, so9). |
| Changed "HANDLE_CHUNK_*" to "PNG_HANDLE_CHUNK_*" (Cosmin) |
| Added "-@/bin/rm -f $(DL)/$(LIBNAME).so.$(PNGMAJ)" to 15 *NIX makefiles. |
| Added code to update the row_info->colortype in png_do_read_filler() (MSB). |
| version 1.0.16rc3 and 1.2.6rc3 [August 9, 2004] |
| Eliminated use of "abs()" in testing cHRM and gAMA values, to avoid |
| trouble with some 64-bit compilers. Created PNG_OUT_OF_RANGE() macro. |
| Revised documentation of png_set_keep_unknown_chunks(). |
| Check handle_as_unknown status in pngpread.c, as in pngread.c previously. |
| Moved "PNG_HANDLE_CHUNK_*" macros out of PNG_INTERNAL section of png.h |
| Added "rim" definitions for CONST4 and CONST6 in pnggccrd.c |
| version 1.0.16rc4 and 1.2.6rc4 [August 10, 2004] |
| Fixed mistake in pngtest.c introduced in 1.2.6rc2 (declaration of |
| "pinfo" was out of place). |
| version 1.0.16rc5 and 1.2.6rc5 [August 10, 2004] |
| Moved "PNG_HANDLE_CHUNK_*" macros out of PNG_ASSEMBLER_CODE_SUPPORTED |
| section of png.h where they were inadvertently placed in version rc3. |
| |
| version 1.0.16 and 1.2.6 [August 15, 2004] |
| Revised pngtest so memory allocation testing is only done when PNG_DEBUG==1. |
| version 1.2.7beta1 [August 26, 2004] |
| Removed unused pngasmrd.h file. |
| Removed references to uu.net for archived files. Added references to |
| PNG Spec (second edition) and the PNG ISO/IEC Standard. |
| Added "test-dd" target in 15 makefiles, to run pngtest in DESTDIR. |
| Fixed bug with "optimized window size" in the IDAT datastream, that |
| causes libpng to write PNG files with incorrect zlib header bytes. |
| version 1.2.7beta2 [August 28, 2004] |
| Fixed bug with sCAL chunk and big-endian machines (David Munro). |
| Undid new code added in 1.2.6rc2 to update the color_type in |
| png_set_filler(). |
| Added png_set_add_alpha() that updates color type. |
| version 1.0.17rc1 and 1.2.7rc1 [September 4, 2004] |
| Revised png_set_strip_filler() to not remove alpha if color_type has alpha. |
| |
| version 1.0.17 and 1.2.7 [September 12, 2004] |
| Added makefile.hp64 |
| Changed projects/msvc/png32ms.def to scripts/png32ms.def in makefile.cygwin |
| version 1.2.8beta1 [November 1, 2004] |
| Fixed bug in png_text_compress() that would fail to complete a large block. |
| Fixed bug, introduced in libpng-1.2.7, that overruns a buffer during |
| strip alpha operation in png_do_strip_filler(). |
| Added PNG_1_2_X definition in pngconf.h |
| #ifdef out png_info_init in png.c and png_read_init in pngread.c (as of 1.3.0) |
| version 1.2.8beta2 [November 2, 2004] |
| Reduce color_type to a nonalpha type after strip alpha operation in |
| png_do_strip_filler(). |
| version 1.2.8beta3 [November 3, 2004] |
| Revised definitions of PNG_MAX_UINT_32, PNG_MAX_SIZE, and PNG_MAXSUM |
| version 1.2.8beta4 [November 12, 2004] |
| Fixed (again) definition of PNG_LIBPNG_VER_DLLNUM in png.h (Cosmin). |
| Added PNG_LIBPNG_BUILD_PRIVATE in png.h (Cosmin). |
| Set png_ptr->zstream.data_type to Z_BINARY, to avoid unnecessary detection |
| of data type in deflate (Cosmin). |
| Deprecated but continue to support SPECIALBUILD and PRIVATEBUILD in favor of |
| PNG_LIBPNG_BUILD_SPECIAL_STRING and PNG_LIBPNG_BUILD_PRIVATE_STRING. |
| version 1.2.8beta5 [November 20, 2004] |
| Use png_ptr->flags instead of png_ptr->transformations to pass |
| PNG_STRIP_ALPHA info to png_do_strip_filler(), to preserve ABI |
| compatibility. |
| Revised handling of SPECIALBUILD, PRIVATEBUILD, |
| PNG_LIBPNG_BUILD_SPECIAL_STRING and PNG_LIBPNG_BUILD_PRIVATE_STRING. |
| version 1.2.8rc1 [November 24, 2004] |
| Moved handling of BUILD macros from pngconf.h to png.h |
| Added definition of PNG_LIBPNG_BASE_TYPE in png.h, inadvertently |
| omitted from beta5. |
| Revised scripts/pngw32.rc |
| Despammed mailing addresses by masking "@" with "at". |
| Inadvertently installed a supposedly faster test version of pngrutil.c |
| version 1.2.8rc2 [November 26, 2004] |
| Added two missing "\" in png.h |
| Change tests in pngread.c and pngpread.c to |
| if (png_ptr->transformations || (png_ptr->flags&PNG_FLAG_STRIP_ALPHA)) |
| png_do_read_transformations(png_ptr); |
| version 1.2.8rc3 [November 28, 2004] |
| Reverted pngrutil.c to version libpng-1.2.8beta5. |
| Added scripts/makefile.elf with supporting code in pngconf.h for symbol |
| versioning (John Bowler). |
| version 1.2.8rc4 [November 29, 2004] |
| Added projects/visualc7 (Simon-pierre). |
| version 1.2.8rc5 [November 29, 2004] |
| Fixed new typo in scripts/pngw32.rc |
| |
| version 1.2.8 [December 3, 2004] |
| Removed projects/visualc7, added projects/visualc71. |
| |
| version 1.2.9beta1 [February 21, 2006] |
| |
| Initialized some structure members in pngwutil.c to avoid gcc-4.0.0 complaints |
| Revised man page and libpng.txt to make it clear that one should not call |
| png_read_end or png_write_end after png_read_png or png_write_png. |
| Updated references to png-mng-implement mailing list. |
| Fixed an incorrect typecast in pngrutil.c |
| Added PNG_NO_READ_SUPPORTED conditional for making a write-only library. |
| Added PNG_NO_WRITE_INTERLACING_SUPPORTED conditional. |
| Optimized alpha-inversion loops in pngwtran.c |
| Moved test for nonzero gamma outside of png_build_gamma_table() in pngrtran.c |
| Make sure num_trans is <= 256 before copying data in png_set_tRNS(). |
| Make sure num_palette is <= 256 before copying data in png_set_PLTE(). |
| Interchanged order of write_swap_alpha and write_invert_alpha transforms. |
| Added parentheses in the definition of PNG_LIBPNG_BUILD_TYPE (Cosmin). |
| Optimized zlib window flag (CINFO) in contrib/pngsuite/*.png (Cosmin). |
| Updated scripts/makefile.bc32 for Borland C++ 5.6 (Cosmin). |
| Fixed inconsistency in definition of png_default_read_data() |
| Exported png_get_uint_32, png_save_uint_32, png_get_uint_16, png_save_uint_16, |
| png_get_int_32, png_save_int_32, png_get_uint_31 (Cosmin). |
| Added type cast (png_byte) in png_write_sCAL() (Cosmin). |
| Fixed scripts/makefile.cygwin (Cosmin). |
| Default iTXt support was inadvertently enabled. |
| |
| version 1.2.9beta2 [February 21, 2006] |
| |
| Check for png_rgb_to_gray and png_gray_to_rgb read transformations before |
| checking for png_read_dither in pngrtran.c |
| Revised checking of chromaticity limits to accommodate extended RGB |
| colorspace (John Denker). |
| Changed line endings in some of the project files to CRLF, even in the |
| "Unix" tar distributions (Cosmin). |
| Made png_get_int_32 and png_save_int_32 always available (Cosmin). |
| Updated scripts/pngos2.def, scripts/pngw32.def and projects/wince/png32ce.def |
| with the newly exported functions. |
| Eliminated distributions without the "configure" script. |
| Updated INSTALL instructions. |
| |
| version 1.2.9beta3 [February 24, 2006] |
| |
| Fixed CRCRLF line endings in contrib/visupng/VisualPng.dsp |
| Made libpng.pc respect EXEC_PREFIX (D. P. Kreil, J. Bowler) |
| Removed reference to pngasmrd.h from Makefile.am |
| Renamed CHANGES to ChangeLog. |
| Renamed LICENSE to COPYING. |
| Renamed ANNOUNCE to NEWS. |
| Created AUTHORS file. |
| |
| version 1.2.9beta4 [March 3, 2006] |
| |
| Changed definition of PKGCONFIG from $prefix/lib to $libdir in configure.ac |
| Reverted to filenames LICENSE and ANNOUNCE; removed AUTHORS and COPYING. |
| Removed newline from the end of some error and warning messages. |
| Removed test for sqrt() from configure.ac and configure. |
| Made swap tables in pngtrans.c PNG_CONST (Carlo Bramix). |
| Disabled default iTXt support that was inadvertently enabled in |
| libpng-1.2.9beta1. |
| Added "OS2" to list of systems that don't need underscores, in pnggccrd.c |
| Removed libpng version and date from *.c files. |
| |
| version 1.2.9beta5 [March 4, 2006] |
| Removed trailing blanks from source files. |
| Put version and date of latest change in each source file, and changed |
| copyright year accordingly. |
| More cleanup of configure.ac, Makefile.ac, and associated scripts. |
| Restored scripts/makefile.elf which was inadvertently deleted. |
| |
| version 1.2.9beta6 [March 6, 2006] |
| Fix typo (9) in configuration files. |
| |
| version 1.4.0beta1 [future] |
| Enabled iTXt support (changes png_struct, thus requires so-number change). |
| Removed deprecated functions png_read_init, png_write_init, png_info_init, |
| png_permit_empty_plte and deprecated macro PNG_MAX_UINT. |
| |
| Send comments/corrections/commendations to png-mng-implement at lists.sf.net |
| (subscription required; visit |
| https://lists.sourceforge.net/lists/listinfo/png-mng-implement |
| to subscribe) |
| or to glennrp at users.sourceforge.net |
| |
| Glenn R-P |