Deleted Added
full compact
gzwrite.c (230837) gzwrite.c (237248)
1/* gzwrite.c -- zlib functions for writing gzip files
2 * Copyright (C) 2004, 2005, 2010, 2011, 2012 Mark Adler
3 * For conditions of distribution and use, see copyright notice in zlib.h
4 */
5
6#include "gzguts.h"
7
8/* Local functions */

--- 324 unchanged lines hidden (view full) ---

333 return 0;
334
335 /* do the printf() into the input buffer, put length in len */
336 size = (int)(state->size);
337 state->in[size - 1] = 0;
338 va_start(va, format);
339#ifdef NO_vsnprintf
340# ifdef HAS_vsprintf_void
1/* gzwrite.c -- zlib functions for writing gzip files
2 * Copyright (C) 2004, 2005, 2010, 2011, 2012 Mark Adler
3 * For conditions of distribution and use, see copyright notice in zlib.h
4 */
5
6#include "gzguts.h"
7
8/* Local functions */

--- 324 unchanged lines hidden (view full) ---

333 return 0;
334
335 /* do the printf() into the input buffer, put length in len */
336 size = (int)(state->size);
337 state->in[size - 1] = 0;
338 va_start(va, format);
339#ifdef NO_vsnprintf
340# ifdef HAS_vsprintf_void
341 (void)vsprintf(state->in, format, va);
341 (void)vsprintf((char *)(state->in), format, va);
342 va_end(va);
343 for (len = 0; len < size; len++)
344 if (state->in[len] == 0) break;
345# else
342 va_end(va);
343 for (len = 0; len < size; len++)
344 if (state->in[len] == 0) break;
345# else
346 len = vsprintf(state->in, format, va);
346 len = vsprintf((char *)(state->in), format, va);
347 va_end(va);
348# endif
349#else
350# ifdef HAS_vsnprintf_void
347 va_end(va);
348# endif
349#else
350# ifdef HAS_vsnprintf_void
351 (void)vsnprintf(state->in, size, format, va);
351 (void)vsnprintf((char *)(state->in), size, format, va);
352 va_end(va);
352 va_end(va);
353 len = strlen(state->in);
353 len = strlen((char *)(state->in));
354# else
355 len = vsnprintf((char *)(state->in), size, format, va);
356 va_end(va);
357# endif
358#endif
359
360 /* check that printf() results fit in buffer */
361 if (len <= 0 || len >= (int)size || state->in[size - 1] != 0)

--- 49 unchanged lines hidden (view full) ---

411 if (strm->avail_in && gz_comp(state, Z_NO_FLUSH) == -1)
412 return 0;
413
414 /* do the printf() into the input buffer, put length in len */
415 size = (int)(state->size);
416 state->in[size - 1] = 0;
417#ifdef NO_snprintf
418# ifdef HAS_sprintf_void
354# else
355 len = vsnprintf((char *)(state->in), size, format, va);
356 va_end(va);
357# endif
358#endif
359
360 /* check that printf() results fit in buffer */
361 if (len <= 0 || len >= (int)size || state->in[size - 1] != 0)

--- 49 unchanged lines hidden (view full) ---

411 if (strm->avail_in && gz_comp(state, Z_NO_FLUSH) == -1)
412 return 0;
413
414 /* do the printf() into the input buffer, put length in len */
415 size = (int)(state->size);
416 state->in[size - 1] = 0;
417#ifdef NO_snprintf
418# ifdef HAS_sprintf_void
419 sprintf(state->in, format, a1, a2, a3, a4, a5, a6, a7, a8,
419 sprintf((char *)(state->in), format, a1, a2, a3, a4, a5, a6, a7, a8,
420 a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20);
421 for (len = 0; len < size; len++)
422 if (state->in[len] == 0) break;
423# else
420 a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20);
421 for (len = 0; len < size; len++)
422 if (state->in[len] == 0) break;
423# else
424 len = sprintf(state->in, format, a1, a2, a3, a4, a5, a6, a7, a8,
425 a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20);
424 len = sprintf((char *)(state->in), format, a1, a2, a3, a4, a5, a6, a7, a8,
425 a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20);
426# endif
427#else
428# ifdef HAS_snprintf_void
426# endif
427#else
428# ifdef HAS_snprintf_void
429 snprintf(state->in, size, format, a1, a2, a3, a4, a5, a6, a7, a8,
429 snprintf((char *)(state->in), size, format, a1, a2, a3, a4, a5, a6, a7, a8,
430 a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20);
430 a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20);
431 len = strlen(state->in);
431 len = strlen((char *)(state->in));
432# else
432# else
433 len = snprintf(state->in, size, format, a1, a2, a3, a4, a5, a6, a7, a8,
434 a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20);
433 len = snprintf((char *)(state->in), size, format, a1, a2, a3, a4, a5, a6,
434 a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18,
435 a19, a20);
435# endif
436#endif
437
438 /* check that printf() results fit in buffer */
439 if (len <= 0 || len >= (int)size || state->in[size - 1] != 0)
440 return 0;
441
442 /* update buffer and position, defer compression until needed */

--- 98 unchanged lines hidden (view full) ---

541 /* check for seek request */
542 if (state->seek) {
543 state->seek = 0;
544 if (gz_zero(state, state->skip) == -1)
545 ret = state->err;
546 }
547
548 /* flush, free memory, and close file */
436# endif
437#endif
438
439 /* check that printf() results fit in buffer */
440 if (len <= 0 || len >= (int)size || state->in[size - 1] != 0)
441 return 0;
442
443 /* update buffer and position, defer compression until needed */

--- 98 unchanged lines hidden (view full) ---

542 /* check for seek request */
543 if (state->seek) {
544 state->seek = 0;
545 if (gz_zero(state, state->skip) == -1)
546 ret = state->err;
547 }
548
549 /* flush, free memory, and close file */
549 if (gz_comp(state, Z_FINISH) == -1)
550 ret = state->err;
551 if (!state->direct) {
552 (void)deflateEnd(&(state->strm));
553 free(state->out);
550 if (state->size) {
551 if (gz_comp(state, Z_FINISH) == -1)
552 ret = state->err;
553 if (!state->direct) {
554 (void)deflateEnd(&(state->strm));
555 free(state->out);
556 }
557 free(state->in);
554 }
558 }
555 free(state->in);
556 gz_error(state, Z_OK, NULL);
557 free(state->path);
558 if (close(state->fd) == -1)
559 ret = Z_ERRNO;
560 free(state);
561 return ret;
562}
559 gz_error(state, Z_OK, NULL);
560 free(state->path);
561 if (close(state->fd) == -1)
562 ret = Z_ERRNO;
563 free(state);
564 return ret;
565}
563
564/* used by zlibVersion() to get the vsnprintf story from the horse's mouth */
565unsigned long ZEXPORT gzflags()
566{
567 unsigned long flags = 0;
568#if defined(STDC) || defined(Z_HAVE_STDARG_H)
569# ifdef NO_vsnprintf
570 flags += 1L << 25;
571# ifdef HAS_vsprintf_void
572 flags += 1L << 26;
573# endif
574# else
575# ifdef HAS_vsnprintf_void
576 flags += 1L << 26;
577# endif
578# endif
579#else
580 flags += 1L << 24;
581# ifdef NO_snprintf
582 flags += 1L << 25;
583# ifdef HAS_sprintf_void
584 flags += 1L << 26;
585# endif
586# else
587# ifdef HAS_snprintf_void
588 flags += 1L << 26;
589# endif
590# endif
591#endif
592 return flags;
593}