Previously the new gz* functions (introduced in 1.2.4) would read and
return raw data after the last gzip stream. This is inconsistent with
the behavior of gzip and the previous versions of zlib. Now when one
or more gzip streams have been decoded from the file, which is then
followed by data that is not a gzip stream (as detemined by not finding
the magic header), then that subsequent trailing garbage is ignored,
and no error is returned.