aboutsummaryrefslogtreecommitdiff
path: root/deflate.c
diff options
context:
space:
mode:
Diffstat (limited to 'deflate.c')
-rw-r--r--deflate.c21
1 files changed, 21 insertions, 0 deletions
diff --git a/deflate.c b/deflate.c
index 47d55af..cf4c056 100644
--- a/deflate.c
+++ b/deflate.c
@@ -441,6 +441,27 @@ int ZEXPORT deflateSetDictionary (strm, dictionary, dictLength)
441} 441}
442 442
443/* ========================================================================= */ 443/* ========================================================================= */
444int ZEXPORT deflateGetDictionary (strm, dictionary, dictLength)
445 z_streamp strm;
446 Bytef *dictionary;
447 uInt *dictLength;
448{
449 deflate_state *s;
450
451 if (deflateStateCheck(strm))
452 return Z_STREAM_ERROR;
453 s = strm->state;
454 uInt len = s->strstart + s->lookahead;
455 if (len > s->w_size)
456 len = s->w_size;
457 if (dictionary != Z_NULL && len)
458 zmemcpy(dictionary, s->window + s->strstart + s->lookahead - len, len);
459 if (dictLength != Z_NULL)
460 *dictLength = len;
461 return Z_OK;
462}
463
464/* ========================================================================= */
444int ZEXPORT deflateResetKeep (strm) 465int ZEXPORT deflateResetKeep (strm)
445 z_streamp strm; 466 z_streamp strm;
446{ 467{