1. 01 1月, 2017 1 次提交
    • M
      Avoid the need for ssize_t. · cca27e95
      Mark Adler 提交于
      Limit read() and write() requests to sizes that fit in an int.
      This allows storing the return value in an int, and avoiding the
      need to use or construct an ssize_t type. This is required for
      Microsoft C, whose _read and _write functions take an unsigned
      request and return an int.
      cca27e95
  2. 31 12月, 2016 2 次提交
  3. 05 12月, 2016 1 次提交
  4. 04 12月, 2016 2 次提交
  5. 22 9月, 2016 1 次提交
    • M
      Remove dummy structure declarations for old buggy compilers. · 3fb251b3
      Mark Adler 提交于
      While woolly mammoths still roamed the Earth and before Atlantis
      sunk into the ocean, there were C compilers that could not handle
      forward structure references, e.g. "struct name;". zlib dutifully
      provided a work-around for such compilers. That work-around is no
      longer needed, and, per the recommendation of a security audit of
      the zlib code by Trail of Bits and TrustInSoft, in support of the
      Mozilla Foundation, should be removed since what a compiler will
      do with this is technically undefined. From the report: "there is
      no telling what interactions the bug could have in the future with
      link-time optimizations and type-based alias analyses, both
      features that are present (but not default) in clang."
      3fb251b3
  6. 29 4月, 2013 1 次提交
    • M
      Do not force Z_CONST for C++. · bddc968b
      Mark Adler 提交于
      Forcing Z_CONST resulted in an issue when compiling Firefox.  Now
      if someone wants to compile zlib as C++ code (which it isn't), now
      they will need to #define Z_CONST themselves.
      bddc968b
  7. 14 4月, 2013 1 次提交
  8. 25 3月, 2013 2 次提交
  9. 24 3月, 2013 2 次提交
  10. 23 3月, 2013 1 次提交
  11. 24 2月, 2013 2 次提交
  12. 27 5月, 2012 1 次提交
  13. 04 5月, 2012 1 次提交
  14. 30 4月, 2012 1 次提交
    • M
      Fix type mismatch between get_crc_table() and crc_table. · 6c9bd474
      Mark Adler 提交于
      crc_table is made using a four-byte integer (when that can be
      determined).  However get_crc_table() returned a pointer to an
      unsigned long, which could be eight bytes.  This fixes that by
      creating a new z_crc_t type for the crc_table.
      
      This type is also used for the BYFOUR crc calculations that depend
      on a four-byte type.  The four-byte type can now be determined by
      ./configure, which also solves a problem where ./configure --solo
      would never use BYFOUR.  No the Z_U4 #define indicates that four-
      byte integer was found either by ./configure or by zconf.h.
      6c9bd474
  15. 19 3月, 2012 1 次提交
    • M
      More fixes for gzopen_w(). · 8e16df2c
      Mark Adler 提交于
      Also need to #include <stddef.h> for zlib.h, and need to workaround
      the inability to use wide characters in constructed error messages
      with zlib's interface.
      8e16df2c
  16. 17 3月, 2012 1 次提交
  17. 15 3月, 2012 2 次提交
  18. 14 3月, 2012 1 次提交
  19. 21 2月, 2012 1 次提交
  20. 19 2月, 2012 3 次提交
  21. 14 2月, 2012 1 次提交
  22. 13 2月, 2012 1 次提交
  23. 02 2月, 2012 2 次提交
    • M
      Put gzflags() functionality back in zutil.c. · 55b8b5fe
      Mark Adler 提交于
      gzflags() was put in gzwrite.c in order to be compiled exactly the
      same as gzprintf(), so that it was guaranteed to return the correct
      information.  However that causes a static linkage to zlib to bring
      in many routines that are often not used.  All that is required to
      duplicate the compilation environment of gzprintf() is to include
      gzguts.h.  So that is now done in zutil.c to assure that the correct
      flags are returned.
      55b8b5fe
    • M
      Include gz_header definition when compiling zlib solo. · a8d23bb6
      Mark Adler 提交于
      a8d23bb6
  24. 08 12月, 2011 1 次提交
    • M
      Enable dictionary setting in middle of stream, and keeping the dictionary. · afe7cf78
      Mark Adler 提交于
      This patch adds the deflateResetKeep() function to retain the sliding
      window for the next deflate operation, and fixes an inflateResetKeep()
      problem that came from inflate() not updating the window when the
      stream completed.  This enables constructing and decompressing a series
      of concatenated deflate streams where each can depend on the history of
      uncompressed data that precedes it.
      
      This generalizes deflateSetDictionary() and inflateSetDictionary() to
      permit setting the dictionary in the middle of a stream for raw deflate
      and inflate.  This in combination with the Keep functions enables a
      scheme for updating files block by block with the transmission of
      compressed data, where blocks are sent with deflateResetKeep() to
      retain history for better compression, and deflateSetDictionary() is
      used for blocks already present at the receiver to skip compression but
      insert that data in the history, again for better compression.  The
      corresponding inflate calls are done on the receiver side.
      afe7cf78
  25. 14 11月, 2011 1 次提交
    • M
      Change ON macro to Z_ARG to avoid application conflicts. · 6715208b
      Mark Adler 提交于
      Using "ON" was a dumb idea, since it is common to have macros with
      names like ON and OFF.  In fact, defining the OF macro back in 1995
      was a bad idea, but now we're stuck with it.  Attempts to rename OF
      to something else breaks many applications.
      6715208b
  26. 19 10月, 2011 1 次提交
    • M
      Add #define ZLIB_CONST option to use const in the z_stream interface. · 5ab9f477
      Mark Adler 提交于
      This permits compilers to check for the proper treatment of next_in and
      msg in the z_stream structure.  This is an option instead of the default
      in order to preserve backward compatibility.  Some applications make use
      of the z_stream structure outside of zlib, and perform operations such
      as free(strm->next_in), which would not be permitted when next_in is
      const.  The #define ZLIB_CONST needs to precede the #include "zlib.h">,
      in order to make next_in and msg const pointers in the z_stream type.
      5ab9f477
  27. 08 10月, 2011 1 次提交
    • M
      Add undocumented inflateResetKeep() function for CAB file decoding. · 77b47d55
      Mark Adler 提交于
      The Microsoft CAB file format compresses each block with completed
      deflate streams that depend on the sliding window history of the
      previous block in order to decode.  inflateResetKeep() does what
      inflateReset() does, except the sliding window history from the
      previous inflate operation is retained.
      77b47d55
  28. 07 10月, 2011 1 次提交
    • M
      Add a ./config --solo option to make zlib subset with no libary use · f442c1e8
      Mark Adler 提交于
      A common request has been the ability to compile zlib to require no
      other libraries.  This --solo option provides that ability.  The price
      is that the gz*, compress*, and uncompress functions are eliminated,
      and that the user must provide memory allocation and free routines to
      deflate and inflate when initializing.
      f442c1e8
  29. 03 10月, 2011 1 次提交
    • M
      Merge vestigial vsnprintf determination from zutil.h to gzguts.h. · 00c836e3
      Mark Adler 提交于
      This also moves some of the same from zconf.h to gzguts.h. A new
      function, gzflags(), was created to pass the compilation flags
      related to vsnprintf usage back to zlibCompileFlags() in zutil.c.
      In the process, various compiler configuration files were updated
      to include gzflags(), as well as the new gzgetc_() function added
      when the gzgetc() macro was introduced in a previous patch.
      00c836e3
  30. 02 10月, 2011 1 次提交
  31. 12 9月, 2011 1 次提交