mirror of
https://git.code.sf.net/p/libpng/code.git
synced 2025-07-10 18:04:09 +02:00
[libpng17] Revised manual about handling of zlib CMF
This commit is contained in:
parent
55df049962
commit
b1f0c7d0e5
@ -5037,18 +5037,19 @@ The machine-generated configure files are no longer included in branches
|
|||||||
libpng16 and later of the GIT repository. They continue to be included
|
libpng16 and later of the GIT repository. They continue to be included
|
||||||
in the tarball releases, however.
|
in the tarball releases, however.
|
||||||
|
|
||||||
Libpng-1.6.0 and later use the CMF bytes at the beginning of the IDAT stream
|
Libpng-1.6.0 through 1.6.2 used the CMF bytes at the beginning of the IDAT
|
||||||
to set the size of the sliding window for reading instead of using the default
|
stream to set the size of the sliding window for reading instead of using the
|
||||||
32-kbyte sliding window size. It was discovered that there are hundreds of PNG
|
default 32-kbyte sliding window size. It was discovered that there are
|
||||||
files in the wild that have incorrect CMF bytes that cause libpng to now issue
|
hundreds of PNG files in the wild that have incorrect CMF bytes that caused
|
||||||
a "too far back" error and reject the file. Libpng-1.6.3 provides a way to
|
libpng to issue a "too far back" error and reject the file. Libpng-1.6.3 and
|
||||||
revert to the libpng-1.5.x behavior (ignoring the CMF bytes and using a
|
later calculate their own safe CMF from the image dimensions, provide a way
|
||||||
|
to revert to the libpng-1.5.x behavior (ignoring the CMF bytes and using a
|
||||||
32-kbyte sliding window), by using
|
32-kbyte sliding window), by using
|
||||||
|
|
||||||
png_set_option(png_ptr, PNG_MAXIMUM_INFLATE_WINDOW,
|
png_set_option(png_ptr, PNG_MAXIMUM_INFLATE_WINDOW,
|
||||||
PNG_OPTION_ON);
|
PNG_OPTION_ON);
|
||||||
|
|
||||||
and provides a tool (contrib/tools/pngfix) for optimizing the CMF bytes
|
and provide a tool (contrib/tools/pngfix) for optimizing the CMF bytes
|
||||||
correctly.
|
correctly.
|
||||||
|
|
||||||
Libpng-1.6.0 and libpng-1.6.1 wrote uncompressed iTXt chunks with the wrong
|
Libpng-1.6.0 and libpng-1.6.1 wrote uncompressed iTXt chunks with the wrong
|
||||||
|
15
libpng.3
15
libpng.3
@ -5532,18 +5532,19 @@ The machine-generated configure files are no longer included in branches
|
|||||||
libpng16 and later of the GIT repository. They continue to be included
|
libpng16 and later of the GIT repository. They continue to be included
|
||||||
in the tarball releases, however.
|
in the tarball releases, however.
|
||||||
|
|
||||||
Libpng-1.6.0 and later use the CMF bytes at the beginning of the IDAT stream
|
Libpng-1.6.0 through 1.6.2 used the CMF bytes at the beginning of the IDAT
|
||||||
to set the size of the sliding window for reading instead of using the default
|
stream to set the size of the sliding window for reading instead of using the
|
||||||
32-kbyte sliding window size. It was discovered that there are hundreds of PNG
|
default 32-kbyte sliding window size. It was discovered that there are
|
||||||
files in the wild that have incorrect CMF bytes that cause libpng to now issue
|
hundreds of PNG files in the wild that have incorrect CMF bytes that caused
|
||||||
a "too far back" error and reject the file. Libpng-1.6.3 provides a way to
|
libpng to issue a "too far back" error and reject the file. Libpng-1.6.3 and
|
||||||
revert to the libpng-1.5.x behavior (ignoring the CMF bytes and using a
|
later calculate their own safe CMF from the image dimensions, provide a way
|
||||||
|
to revert to the libpng-1.5.x behavior (ignoring the CMF bytes and using a
|
||||||
32-kbyte sliding window), by using
|
32-kbyte sliding window), by using
|
||||||
|
|
||||||
png_set_option(png_ptr, PNG_MAXIMUM_INFLATE_WINDOW,
|
png_set_option(png_ptr, PNG_MAXIMUM_INFLATE_WINDOW,
|
||||||
PNG_OPTION_ON);
|
PNG_OPTION_ON);
|
||||||
|
|
||||||
and provides a tool (contrib/tools/pngfix) for optimizing the CMF bytes
|
and provide a tool (contrib/tools/pngfix) for optimizing the CMF bytes
|
||||||
correctly.
|
correctly.
|
||||||
|
|
||||||
Libpng-1.6.0 and libpng-1.6.1 wrote uncompressed iTXt chunks with the wrong
|
Libpng-1.6.0 and libpng-1.6.1 wrote uncompressed iTXt chunks with the wrong
|
||||||
|
Loading…
x
Reference in New Issue
Block a user