488 } 489 490 /* ========================================================================= */ 491 int ZEXPORT deflateResetKeep (strm) 492 z_streamp strm; 493 { 494 deflate_state *s; 495 496 if (deflateStateCheck(strm)) { 497 return Z_STREAM_ERROR; 498 } 499 500 strm->total_in = strm->total_out = 0; 501 strm->msg = Z_NULL; /* use zfree if we ever allocate msg dynamically */ 502 strm->data_type = Z_UNKNOWN; 503 504 s = (deflate_state *)strm->state; 505 s->pending = 0; 506 s->pending_out = s->pending_buf; 507 508 if (s->wrap < 0) { 509 s->wrap = -s->wrap; /* was made negative by deflate(..., Z_FINISH); */ 510 } 511 s->status = 512 #ifdef GZIP 513 s->wrap == 2 ? GZIP_STATE : 514 #endif 515 s->wrap ? INIT_STATE : BUSY_STATE; 516 strm->adler = 517 #ifdef GZIP 518 s->wrap == 2 ? crc32(0L, Z_NULL, 0) : 519 #endif 520 adler32(0L, Z_NULL, 0); 521 s->last_flush = Z_NO_FLUSH; 522 523 _tr_init(s); 524 525 return Z_OK; 526 } 527 | 488 } 489 490 /* ========================================================================= */ 491 int ZEXPORT deflateResetKeep (strm) 492 z_streamp strm; 493 { 494 deflate_state *s; 495 496 if (deflateStateCheck(strm)) { 497 return Z_STREAM_ERROR; 498 } 499 500 strm->total_in = strm->total_out = 0; 501 strm->msg = Z_NULL; /* use zfree if we ever allocate msg dynamically */ 502 strm->data_type = Z_UNKNOWN; 503 504 s = (deflate_state *)strm->state; 505 s->pending = 0; 506 s->pending_out = s->pending_buf; 507 508 s->high_water = 0; /* reset to its inital value 0 */ 509 510 if (s->wrap < 0) { 511 s->wrap = -s->wrap; /* was made negative by deflate(..., Z_FINISH); */ 512 } 513 s->status = 514 #ifdef GZIP 515 s->wrap == 2 ? GZIP_STATE : 516 #endif 517 s->wrap ? INIT_STATE : BUSY_STATE; 518 strm->adler = 519 #ifdef GZIP 520 s->wrap == 2 ? crc32(0L, Z_NULL, 0) : 521 #endif 522 adler32(0L, Z_NULL, 0); 523 s->last_flush = Z_NO_FLUSH; 524 525 _tr_init(s); 526 527 return Z_OK; 528 } 529 |