82 lines
2.6 KiB
Plaintext
82 lines
2.6 KiB
Plaintext
|
|
Known bugs and suggested enhancements in libpng-1.0.7
|
|
|
|
1. July 2, 2000 -- BUG -- pnggccrd.c
|
|
|
|
Some programs compiled with PNG_USE_PNGGCCRD crash in pnggccrd.c.
|
|
Also, pnggccrd.c will not compile under gcc-2.95-2.
|
|
|
|
STATUS: Under investigation. Experts on MMX assembler code are
|
|
invited to help with the debugging. Note that pngvcrd.c works fine.
|
|
|
|
2. July 3, 2000 -- BUG -- MEMORY LEAK
|
|
|
|
There is a memory leak in pngpread.c; it doesn't free "key".
|
|
|
|
STATUS: Fixed in libpng-1.0.8beta1, by adding.
|
|
|
|
png_free(png_ptr, text_ptr);
|
|
|
|
after lines 1221 and 1038 in pngpread.c
|
|
|
|
3. July 3, 2000 -- BUG -- PNG_EXPORT_VAR
|
|
|
|
The definition of PNG_EXPORT_VAR, in pngconf.h, should be
|
|
# define PNG_EXPORT_VAR(type) extern PNG_IMPEXP type
|
|
|
|
STATUS: Fixed in libpng-1.0.8beta1.
|
|
|
|
4. July 3, 2000 -- BUG -- PNG_NO_STDIO
|
|
|
|
Several places in pngrutil.c and pngwutil.c, there are printf statements
|
|
inside PNG_NO_STDIO blocks (should be PNG_NO_CONSOLE_IO)
|
|
|
|
STATUS: Fixed in libpng-1.0.8beta1.
|
|
|
|
5. July 3, 2000 -- ENHANCEMENT -- WindowsCE support
|
|
|
|
Libpng-1.0.7 does not support WindowsCE.
|
|
|
|
STATUS: Libpng-1.0.8 and libpng-2.0.0 will support WindowsCE. A
|
|
new typedef, png_file_p, will be added which is normally FILE * but
|
|
will be HANDLE if libpng is being built for WindowsCE. Other patches
|
|
required for WindowsCE support have been provided and will be applied.
|
|
|
|
6. March 15, 1998 -- OPTIMIZATION -- Kevin Bracey
|
|
|
|
Loops need to be optimized everywhere
|
|
|
|
Make them count down instead of up -- Kevin Bracey
|
|
|
|
Optimizing compilers don't need this, and making
|
|
the change would be error prone -- Tom Lane, Glenn R-P
|
|
|
|
Question whether i-- or --i is better.
|
|
|
|
STATUS: Under investigation, postponed until after
|
|
libpng-1.1.0. About 160 loops will be turned around
|
|
in libpng-2.0.x betaxx, for testing.
|
|
|
|
7. July 4, 1998 -- ENHANCEMENT -- Glenn R-P
|
|
|
|
libpng-1.0.5 and earlier transform colors to gamma=1.0 space for
|
|
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.
|
|
|
|
8. September 1999 -- ENHANCEMENT --
|
|
|
|
It should be possible to use libpng without floating-point aritmetic.
|
|
|
|
STATUS: Under investigation, implementation postponed until after
|
|
libpng-1.0.7.
|
|
|
|
Much of this was completed in libpng-1.0.6, but gamma compensation
|
|
is not yet done in fixed-point arithmetic.
|
|
|