diff options
author | Sebastian Rasmussen <sebras@gmail.com> | 2016-08-17 10:08:19 +0800 |
---|---|---|
committer | Sebastian Rasmussen <sebras@gmail.com> | 2016-08-17 22:43:02 +0800 |
commit | 7f2c725945ac3da1202c6736fa2cdf6f74c2413c (patch) | |
tree | 6e6a60075df1e2cc2c3f989f76c80417758df220 /platform/java/src | |
parent | 81037acb5af79a3da72729ed479f2496cac1e875 (diff) | |
download | mupdf-7f2c725945ac3da1202c6736fa2cdf6f74c2413c.tar.xz |
zip: Used unpacked entry size, not listed entry size.
The size listed in the central directory can be used to allocate an
output buffer and inflate can be told to not write more than this
number of bytes. The listed size cannot be assumed to be the size
of the output data however as the zip file may be corrupted. Instead
the size of the output data must be given by inflate and must be
less than or equal to the listed size.
The same reasoning goes for uncompressed entries and simply reading
the uncompressed data from the archive file (which may terminate
early).
Fixes indeterminism broken_png_image.xps.
Diffstat (limited to 'platform/java/src')
0 files changed, 0 insertions, 0 deletions