libpng/KNOWNBUG

51 lines
1.8 KiB
Plaintext
Raw Normal View History

1998-04-21 16:03:57 -04:00
1999-09-17 13:27:26 -04:00
Known bugs and suggested enhancements in libpng-1.0.4
1998-04-21 16:03:57 -04:00
1998-06-14 15:43:31 -04:00
1. 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
1999-10-01 15:22:25 -04:00
libpng-1.0.5. About 160 loops will be turned around
1998-12-29 12:47:59 -05:00
in libpng-1.0.Nn, for testing.
1999-01-13 23:06:39 -05:00
2. 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.
1999-09-17 13:27:26 -04:00
3. September 1999 -- ENHANCEMENT --
It should be possible to use libpng without floating-point aritmetic.
STATUS: Under investigation, implementation postponed until after
1999-10-01 15:22:25 -04:00
libpng-1.0.5. The application interface will change because replacements
1999-09-17 13:27:26 -04:00
for the png_set_gAMA(), png_set_cHRM(), and corresponding png_get_()
functions will be needed.
1998-06-06 16:31:35 -04:00
1999-10-06 05:57:42 -04:00
4. September 1999 -- BUG --
Portions of the new MMX code in pngvcrd.c are defined out because the
did not work properly. When PNGVCRD_INTERLACE_BUG_IS_FIXED is defined,
to enable the code, pngtest pngtest.png pngout.png results in a
"Debug error! Damage before normal block # 57 at 0x007e19f0" on
a Pentium II with MMX system. This seems to be caused by the heap
being trashed before a free() in png_read_destroy().
When PNGVCRD_COMBINE_BUG_IS_FIXED is defined (what?)