diff options
author | Moazin Khatti <moazinkhatri@gmail.com> | 2020-03-02 18:21:27 +0500 |
---|---|---|
committer | Moazin Khatti <moazinkhatri@gmail.com> | 2020-03-02 18:21:27 +0500 |
commit | 6a431038c9113d906d66836cd7d216a5c630be7c (patch) | |
tree | 2f234ab2c41cc8b52bd577da58ac40ffd6d90590 | |
parent | 11975fe9f6ed92b7630698e599b936a0186d965d (diff) | |
download | freetype2-6a431038c9113d906d66836cd7d216a5c630be7c.tar.gz |
[gzip] Support `gzip' encoded header conditionally.
In order to support `gzip' encoded header the call to
`inflateInit2' was modified in commit 6a92b1fadde26477a9179.
However, this code breaks with the outdated internal version
of zlib. This is a temporary fix to conditionally support
`gzip' encoded header whenever a system installation of zlib
is being used.
Problem report in
https://lists.nongnu.org/archive/html/freetype-devel/2020-02/msg00023.html
* src/gzip/ftgzip.c (FT_Gzip_Uncompress): Change the the call to
`inflateInit2' depending on whether the system installation is
being used or the internal copy.
-rw-r--r-- | ChangeLog | 19 | ||||
-rw-r--r-- | src/gzip/ftgzip.c | 10 |
2 files changed, 29 insertions, 0 deletions
@@ -1,3 +1,22 @@ +2020-03-02 Moazin Khatti <moazinkhatri@gmail.com> + + [gzip] Support `gzip' encoded header conditionally. + + In order to support `gzip' encoded header the call to + `inflateInit2' was modified in commit 6a92b1fadde26477a9179. + However, this code breaks with the outdated internal version + of zlib. This is a temporary fix to conditionally support + `gzip' encoded header whenever a system installation of zlib + is being used. + + Problem report in + + https://lists.nongnu.org/archive/html/freetype-devel/2020-02/msg00023.html + + * src/gzip/ftgzip.c (FT_Gzip_Uncompress): Change the the call to + `inflateInit2' depending on whether the system installation is + being used or the internal copy. + 2020-02-29 Ben Wagner <bungeman@google.com> [truetype] Fix state of `FT_Face' for buggy `gvar' tables (#57923). diff --git a/src/gzip/ftgzip.c b/src/gzip/ftgzip.c index d192b10e2..6b1df3a4a 100644 --- a/src/gzip/ftgzip.c +++ b/src/gzip/ftgzip.c @@ -746,7 +746,17 @@ stream.zfree = (free_func) ft_gzip_free; stream.opaque = memory; + /* This is a temporary fix and will be removed once the internal + * copy of zlib is updated to the newest version. The `|32' flag + * is only supported in the new versions of zlib to enable gzip + * encoded header. + */ +#ifdef FT_CONFIG_OPTION_SYSTEM_ZLIB err = inflateInit2( &stream, MAX_WBITS|32 ); +#else + err = inflateInit2( &stream, MAX_WBITS ); +#endif + if ( err != Z_OK ) return FT_THROW( Invalid_Argument ); |