diff options
Diffstat (limited to 'dep/zlib/infback.c')
| -rw-r--r-- | dep/zlib/infback.c | 14 | 
1 files changed, 11 insertions, 3 deletions
diff --git a/dep/zlib/infback.c b/dep/zlib/infback.c index af3a8c965d5..981aff17c2d 100644 --- a/dep/zlib/infback.c +++ b/dep/zlib/infback.c @@ -1,5 +1,5 @@  /* infback.c -- inflate using a call-back interface - * Copyright (C) 1995-2009 Mark Adler + * Copyright (C) 1995-2011 Mark Adler   * For conditions of distribution and use, see copyright notice in zlib.h   */ @@ -42,10 +42,19 @@ int stream_size;          return Z_STREAM_ERROR;      strm->msg = Z_NULL;                 /* in case we return an error */      if (strm->zalloc == (alloc_func)0) { +#ifdef Z_SOLO +        return Z_STREAM_ERROR; +#else          strm->zalloc = zcalloc;          strm->opaque = (voidpf)0; +#endif      } -    if (strm->zfree == (free_func)0) strm->zfree = zcfree; +    if (strm->zfree == (free_func)0) +#ifdef Z_SOLO +        return Z_STREAM_ERROR; +#else +    strm->zfree = zcfree; +#endif      state = (struct inflate_state FAR *)ZALLOC(strm, 1,                                                 sizeof(struct inflate_state));      if (state == Z_NULL) return Z_MEM_ERROR; @@ -394,7 +403,6 @@ void FAR *out_desc;                      PULLBYTE();                  }                  if (here.val < 16) { -                    NEEDBITS(here.bits);                      DROPBITS(here.bits);                      state->lens[state->have++] = here.val;                  }  | 
