1998-04-21 16:03:57 -04:00
|
|
|
|
2000-07-24 07:34:14 -04:00
|
|
|
Known bugs and suggested enhancements in libpng-1.0.8
|
1998-04-21 16:03:57 -04:00
|
|
|
|
2000-11-10 13:26:19 -05:00
|
|
|
0: November 3, 2000 -- BUG -- incorrect iCCP chunk is written
|
2000-07-08 14:19:41 -04:00
|
|
|
|
2000-11-10 13:26:19 -05:00
|
|
|
The compression_type byte in the iCCP chunk written by libpng is
|
|
|
|
usually incorrect.
|
|
|
|
|
|
|
|
Status: Fixed in libpng-1.0.9beta1
|
|
|
|
|
|
|
|
1. October 12, 2000 -- BUG -- pngtest fails
|
|
|
|
|
|
|
|
The three WRITEFILE calls in pngtest.c are incorrect. They must be
|
|
|
|
changed to read
|
|
|
|
|
|
|
|
WRITEFILE((png_FILE_p)png_ptr->io_ptr, data, length, check);
|
|
|
|
WRITEFILE(io_ptr, near_data, length, check);
|
|
|
|
WRITEFILE(io_ptr, buf, written, err);
|
|
|
|
|
|
|
|
2. August 28, 2000 -- BUG -- pnggccrd.c
|
|
|
|
|
|
|
|
The interlacing() function has still not been fully converted and
|
2000-07-14 09:15:12 -04:00
|
|
|
will not compile under gcc-2.95.2; it is currently ifdef'ed out.
|
|
|
|
|
2000-11-10 13:26:19 -05:00
|
|
|
STATUS: Fixed in libpng-1.0.9. There were also bugs in pngvcrd.c
|
|
|
|
which have been fixed. The replacement files are available at the
|
|
|
|
PNG web site (http://www.libpng.org/pub/png).
|
2000-07-08 14:19:41 -04:00
|
|
|
|
2000-11-10 13:26:19 -05:00
|
|
|
3. March 15, 1998 -- OPTIMIZATION -- Kevin Bracey
|
1998-04-21 16:03:57 -04:00
|
|
|
|
|
|
|
Loops need to be optimized everywhere
|
|
|
|
|
1998-06-14 15:43:31 -04:00
|
|
|
Make them count down instead of up -- Kevin Bracey
|
1998-12-29 12:47:59 -05:00
|
|
|
|
1998-06-14 15:43:31 -04:00
|
|
|
Optimizing compilers don't need this, and making
|
|
|
|
the change would be error prone -- Tom Lane, Glenn R-P
|
1998-06-06 16:31:35 -04:00
|
|
|
|
1998-06-14 15:43:31 -04:00
|
|
|
Question whether i-- or --i is better.
|
1998-06-06 16:31:35 -04:00
|
|
|
|
1998-06-14 15:43:31 -04:00
|
|
|
STATUS: Under investigation, postponed until after
|
2000-07-24 07:34:14 -04:00
|
|
|
libpng-2.0.0. About 160 loops will be turned around
|
2000-07-08 14:19:41 -04:00
|
|
|
in libpng-2.0.x betaxx, for testing.
|
1998-12-29 12:47:59 -05:00
|
|
|
|
2000-11-10 13:26:19 -05:00
|
|
|
4. July 4, 1998 -- ENHANCEMENT -- Glenn R-P
|
1998-12-29 12:47:59 -05:00
|
|
|
|
1999-10-01 15:22:25 -04:00
|
|
|
libpng-1.0.5 and earlier transform colors to gamma=1.0 space for
|
1998-12-29 12:47:59 -05:00
|
|
|
merging with background, and then back to the image's gamma. The
|
|
|
|
bit_depth of the intermediate (gamma=1.0) representation is probably
|
|
|
|
not sufficient. In the typical gamma=1/2.2 situation, the linear
|
|
|
|
pixels need about 4 more bits than the gamma-encoded ones, to avoid
|
|
|
|
loss of precision. A similar situation exists with the rgb_to_gray
|
|
|
|
operation.
|
|
|
|
|
|
|
|
STATUS: under development.
|
|
|
|
|
2000-11-10 13:26:19 -05:00
|
|
|
5. September 1999 -- ENHANCEMENT --
|
1999-09-17 13:27:26 -04:00
|
|
|
|
2000-11-10 13:26:19 -05:00
|
|
|
It should be possible to use libpng without floating-point arithmetic.
|
1999-09-17 13:27:26 -04:00
|
|
|
|
|
|
|
STATUS: Under investigation, implementation postponed until after
|
2000-07-24 07:34:14 -04:00
|
|
|
libpng-2.0.0.
|
1998-06-06 16:31:35 -04:00
|
|
|
|
2000-04-01 22:10:05 -05:00
|
|
|
Much of this was completed in libpng-1.0.6, but gamma compensation
|
2000-02-05 00:40:16 -05:00
|
|
|
is not yet done in fixed-point arithmetic.
|
|
|
|
|