aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Adler <madler@alumni.caltech.edu>2012-03-14 11:16:22 -0700
committerMark Adler <madler@alumni.caltech.edu>2012-03-14 11:16:22 -0700
commitda32fd28927eeed480185184f1a3847f828235d1 (patch)
tree9836e25b278ec57e10dd827c88a257b9c134adb3
parent50a1738fcb0e5d1e84275cfe3a052c5e32449b84 (diff)
downloadzlib-da32fd28927eeed480185184f1a3847f828235d1.tar.gz
zlib-da32fd28927eeed480185184f1a3847f828235d1.tar.bz2
zlib-da32fd28927eeed480185184f1a3847f828235d1.zip
Improve inflate() documentation on the use of Z_FINISH.
-rw-r--r--zlib.h19
1 files changed, 11 insertions, 8 deletions
diff --git a/zlib.h b/zlib.h
index bb07e2a..a569b00 100644
--- a/zlib.h
+++ b/zlib.h
@@ -452,14 +452,17 @@ ZEXTERN int ZEXPORT inflate OF((z_streamp strm, int flush));
452 error. However if all decompression is to be performed in a single step (a 452 error. However if all decompression is to be performed in a single step (a
453 single call of inflate), the parameter flush should be set to Z_FINISH. In 453 single call of inflate), the parameter flush should be set to Z_FINISH. In
454 this case all pending input is processed and all pending output is flushed; 454 this case all pending input is processed and all pending output is flushed;
455 avail_out must be large enough to hold all the uncompressed data. (The size 455 avail_out must be large enough to hold all of the uncompressed data for the
456 of the uncompressed data may have been saved by the compressor for this 456 operation to complete. (The size of the uncompressed data may have been
457 purpose.) The next operation on this stream must be inflateEnd to deallocate 457 saved by the compressor for this purpose.) The use of Z_FINISH is not
458 the decompression state. The use of Z_FINISH is not required to perform an 458 required to perform an inflation in one step. However it may be used to
459 inflation in one step. However it may be used to inform inflate that a 459 inform inflate that a faster approach can be used for the single inflate()
460 faster approach can be used for the single inflate() call. Z_FINISH also 460 call. Z_FINISH also informs inflate to not maintain a sliding window if the
461 informs inflate to not maintain a sliding window if the stream completes, 461 stream completes, which reduces inflate's memory footprint. If the stream
462 which reduces inflate's memory footprint. 462 does not complete, either because not all of the stream is provided or not
463 enough output space is provided, then a sliding window will be allocated and
464 inflate() can be called again to continue the operation as if Z_NO_FLUSH had
465 been used.
463 466
464 In this implementation, inflate() always flushes as much output as 467 In this implementation, inflate() always flushes as much output as
465 possible to the output buffer, and always uses the faster approach on the 468 possible to the output buffer, and always uses the faster approach on the