67 unsigned have, put, max = ((unsigned)-1 >> 2) + 1;
71 if (state->size == 0 &&
gz_init(state) == -1)
76 while (strm->avail_in) {
77 put = strm->avail_in > max ? max : strm->avail_in;
78 writ = write(state->fd, strm->next_in, put);
83 strm->avail_in -= (unsigned)writ;
84 strm->next_in += writ;
92 if (strm->avail_in == 0)
103 if (strm->avail_out == 0 || (flush !=
Z_NO_FLUSH &&
105 while (strm->next_out > state->x.next) {
106 put = strm->next_out - state->x.next > (int)max ? max :
107 (unsigned)(strm->next_out - state->x.next);
108 writ = write(state->fd, state->x.next, put);
113 state->x.next += writ;
115 if (strm->avail_out == 0) {
116 strm->avail_out = state->size;
117 strm->next_out = state->out;
118 state->x.next = state->out;
123 have = strm->avail_out;
127 "internal error: deflate stream corrupt");
130 have -= strm->avail_out;
181 if (state->size == 0 &&
gz_init(state) == -1)
187 if (
gz_zero(state, state->skip) == -1)
192 if (len < state->size) {
197 if (state->strm.avail_in == 0)
198 state->strm.next_in = state->in;
199 have = (unsigned)((state->strm.next_in + state->strm.avail_in) -
201 copy = state->size - have;
203 copy = (unsigned)len;
204 memcpy(state->in + have, buf, copy);
205 state->strm.avail_in += copy;
206 state->x.pos += copy;
207 buf = (
const char *)buf + copy;
219 state->strm.next_in = (z_const Bytef *)buf;
221 unsigned n = (unsigned)-1;
224 state->strm.avail_in = n;
444 int a4,
int a5,
int a6,
int a7,
int a8,
int a9,
int a10,
445 int a11,
int a12,
int a13,
int a14,
int a15,
int a16,
446 int a17,
int a18,
int a19,
int a20) {
456 strm = &(state->strm);
459 if (
sizeof(
int) !=
sizeof(
void *))
467 if (state->size == 0 &&
gz_init(state) == -1)
473 if (
gz_zero(state, state->skip) == -1)
480 if (strm->avail_in == 0)
481 strm->next_in = state->in;
482 next = (
char *)(strm->next_in + strm->avail_in);
483 next[state->size - 1] = 0;
485# ifdef HAS_sprintf_void
486 sprintf(next, format, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12,
487 a13, a14, a15, a16, a17, a18, a19, a20);
488 for (len = 0; len < size; len++)
492 len = sprintf(next, format, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11,
493 a12, a13, a14, a15, a16, a17, a18, a19, a20);
496# ifdef HAS_snprintf_void
497 snprintf(next, state->size, format, a1, a2, a3, a4, a5, a6, a7, a8, a9,
498 a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20);
501 len = snprintf(next, state->size, format, a1, a2, a3, a4, a5, a6, a7, a8,
502 a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20);
507 if (len == 0 || len >= state->size || next[state->size - 1] != 0)
511 strm->avail_in += len;
513 if (strm->avail_in >= state->size) {
514 left = strm->avail_in - state->size;
515 strm->avail_in = state->size;
518 memmove(state->in, state->in + state->size, left);
519 strm->next_in = state->in;
520 strm->avail_in = left;
int ZEXPORTVA gzprintf(gzFile file, const char *format, int a1, int a2, int a3, int a4, int a5, int a6, int a7, int a8, int a9, int a10, int a11, int a12, int a13, int a14, int a15, int a16, int a17, int a18, int a19, int a20)