22 state->in =
malloc(state->want);
23 state->out =
malloc(state->want);
24 if (state->in ==
NULL || state->out ==
NULL) {
25 if (state->out !=
NULL)
27 if (state->in !=
NULL)
38 15 + 16, 8, state->strategy);
46 state->size = state->want;
49 strm->avail_out = state->size;
50 strm->next_out = state->out;
51 state->next = strm->next_out;
68 if (state->size == 0 &&
gz_init(state) == -1)
76 if (strm->avail_out == 0 || (flush !=
Z_NO_FLUSH &&
78 have = (unsigned)(strm->next_out - state->next);
79 if (have && ((got = write(state->fd, state->next, have)) < 0 ||
80 (unsigned)got != have)) {
84 if (strm->avail_out == 0) {
85 strm->avail_out = state->size;
86 strm->next_out = state->out;
88 state->next = strm->next_out;
92 have = strm->avail_out;
96 "internal error: deflate stream corrupt");
99 have -= strm->avail_out;
127 (
unsigned)len : state->size;
133 strm->next_in = state->in;
157 strm = &(state->strm);
175 if (state->size == 0 &&
gz_init(state) == -1)
181 if (
gz_zero(state, state->skip) == -1)
189 if (strm->avail_in == 0)
190 strm->next_in = state->in;
191 n = state->size - strm->avail_in;
194 memcpy(strm->next_in + strm->avail_in, buf, n);
197 buf = (
char *)buf + n;
209 strm->avail_in =
len;
210 strm->next_in = (
voidp)buf;
225 unsigned char buf[1];
233 strm = &(state->strm);
242 if (
gz_zero(state, state->skip) == -1)
248 if (strm->avail_in < state->size) {
249 if (strm->avail_in == 0)
250 strm->next_in = state->in;
251 strm->next_in[strm->avail_in++] =
c;
258 if (
gzwrite(file, buf, 1) != 1)
272 len = (unsigned)strlen(str);
274 return ret == 0 && len != 0 ? -1 :
ret;
292 strm = &(state->strm);
299 if (state->size == 0 &&
gz_init(state) == -1)
305 if (
gz_zero(state, state->skip) == -1)
314 size = (
int)(state->size);
315 state->in[size - 1] = 0;
316 va_start(va, format);
318 # ifdef HAS_vsprintf_void
319 (
void)vsprintf(state->in, format, va);
321 for (len = 0; len <
size; len++)
322 if (state->in[len] == 0)
break;
324 len = vsprintf(state->in, format, va);
328 # ifdef HAS_vsnprintf_void
329 (
void)vsnprintf(state->in, size, format, va);
331 len = strlen(state->in);
333 len = vsnprintf((
char *)(state->in), size, format, va);
343 strm->avail_in = (unsigned)len;
344 strm->next_in = state->in;
352 int ZEXPORTVA gzprintf (file, format, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10,
353 a11, a12, a13, a14, a15, a16, a17, a18, a19, a20)
356 int a1, a2, a3, a4, a5, a6, a7, a8, a9, a10,
357 a11, a12, a13, a14, a15, a16, a17, a18, a19, a20;
367 strm = &(state->strm);
374 if (state->size == 0 &&
gz_init(state) == -1)
380 if (
gz_zero(state, state->skip) == -1)
389 size = (
int)(state->size);
390 state->in[size - 1] = 0;
392 # ifdef HAS_sprintf_void
393 sprintf(state->in, format, a1, a2, a3, a4, a5, a6, a7, a8,
394 a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20);
395 for (len = 0; len <
size; len++)
396 if (state->in[len] == 0)
break;
398 len = sprintf(state->in, format, a1, a2, a3, a4, a5, a6, a7, a8,
399 a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20);
402 # ifdef HAS_snprintf_void
403 snprintf(state->in, size, format, a1, a2, a3, a4, a5, a6, a7, a8,
404 a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20);
405 len = strlen(state->in);
407 len = snprintf(state->in, size, format, a1, a2, a3, a4, a5, a6, a7, a8,
408 a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20);
417 strm->avail_in = (unsigned)len;
418 strm->next_in = state->in;
448 if (
gz_zero(state, state->skip) == -1)
470 strm = &(state->strm);
477 if (level == state->level && strategy == state->strategy)
483 if (
gz_zero(state, state->skip) == -1)
494 state->level =
level;
495 state->strategy = strategy;
518 ret +=
gz_zero(state, state->skip);
528 ret += close(state->fd);
int ZEXPORT deflateParams(z_streamp strm, int level, int strategy)
GLvoid **typedef void(GLAPIENTRY *PFNGLGETVERTEXATTRIBDVPROC)(GLuint
int ZEXPORT gzsetparams(gzFile file, int level, int strategy)
int ZEXPORT gzwrite(gzFile file, voidpc buf, unsigned len)
int ZEXPORT deflateEnd(z_streamp strm)
local int gz_init(gz_statep state)
#define zstrerror(errnum)
int ZEXPORT gzflush(gzFile file, int flush)
void ZLIB_INTERNAL gz_error(gz_statep state, int err, const char *msg)
local int gz_zero(gz_statep state, z_off64_t len)
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)
GLint GLenum GLsizei GLsizei GLsizei GLint GLenum format
int ZEXPORT gzclose_w(gzFile file)
int ZEXPORT gzputs(gzFile file, const char *s)
local int gz_comp(gz_statep state, int flush)
int ZEXPORT deflate(z_streamp strm, int flush)
GLenum GLuint GLsizei const GLchar * buf
#define deflateInit2(strm, level, method, windowBits, memLevel, strategy)
int ZEXPORT deflateReset(z_streamp strm)
int ZEXPORT gzputc(gzFile file, int c)