poppler/FlateEncoder.cc | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-)
New commits: commit c702589307896c7d6f5f4cfdf63535761ad1ad23 Author: Even Rouault <even.roua...@spatialys.com> Date: Wed Nov 24 16:14:24 2021 +0100 FlateEncoder.cc: fix -Wzero-as-null-pointer-constant warnings Use nullptr instead of Z_NULL. zlib.h defines Z_NULL as 0, so using nullptr is safe now, and for the future, as zlib.h can't really change its definition to something that would be fundammentaly different from expressing a null pointer. diff --git a/poppler/FlateEncoder.cc b/poppler/FlateEncoder.cc index 316e531e..fa8d574b 100644 --- a/poppler/FlateEncoder.cc +++ b/poppler/FlateEncoder.cc @@ -24,9 +24,15 @@ FlateEncoder::FlateEncoder(Stream *strA) : FilterStream(strA) outBufPtr = outBufEnd = outBuf; inBufEof = outBufEof = false; - zlib_stream.zalloc = Z_NULL; - zlib_stream.zfree = Z_NULL; - zlib_stream.opaque = Z_NULL; + // We used to assign Z_NULL to the 3 following members of zlib_stream, + // but as Z_NULL is a #define to 0, using it triggers the + // -Wzero-as-null-pointer-constant warning. + // For safety, check that the Z_NULL definition is equivalent to + // 0 / null pointer. + static_assert(Z_NULL == 0); + zlib_stream.zalloc = nullptr; + zlib_stream.zfree = nullptr; + zlib_stream.opaque = nullptr; zlib_status = deflateInit(&zlib_stream, Z_DEFAULT_COMPRESSION);