diff options
author | Jonathan Nieder <jrnieder@gmail.com> | 2010-11-06 06:47:34 -0500 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2010-11-10 11:07:51 -0800 |
commit | b0613ce0f9ef3fd111f8c75b84ddd12f9f04fc87 (patch) | |
tree | 9e16b5073782a6058380afc46d59479bea93baf8 /wrapper.c | |
parent | 6bab74e7fb89b7427e5ef24b48a07fe9450c40e7 (diff) | |
download | git-b0613ce0f9ef3fd111f8c75b84ddd12f9f04fc87.tar.gz git-b0613ce0f9ef3fd111f8c75b84ddd12f9f04fc87.tar.xz |
wrapper: give zlib wrappers their own translation unit
Programs using xmalloc() but not git_inflate() require -lz on the
linker command line because git_inflate() is in the same translation
unit as xmalloc().
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'wrapper.c')
-rw-r--r-- | wrapper.c | 60 |
1 files changed, 0 insertions, 60 deletions
@@ -327,66 +327,6 @@ int xmkstemp_mode(char *template, int mode) return fd; } -/* - * zlib wrappers to make sure we don't silently miss errors - * at init time. - */ -void git_inflate_init(z_streamp strm) -{ - const char *err; - - switch (inflateInit(strm)) { - case Z_OK: - return; - - case Z_MEM_ERROR: - err = "out of memory"; - break; - case Z_VERSION_ERROR: - err = "wrong version"; - break; - default: - err = "error"; - } - die("inflateInit: %s (%s)", err, strm->msg ? strm->msg : "no message"); -} - -void git_inflate_end(z_streamp strm) -{ - if (inflateEnd(strm) != Z_OK) - error("inflateEnd: %s", strm->msg ? strm->msg : "failed"); -} - -int git_inflate(z_streamp strm, int flush) -{ - int ret = inflate(strm, flush); - const char *err; - - switch (ret) { - /* Out of memory is fatal. */ - case Z_MEM_ERROR: - die("inflate: out of memory"); - - /* Data corruption errors: we may want to recover from them (fsck) */ - case Z_NEED_DICT: - err = "needs dictionary"; break; - case Z_DATA_ERROR: - err = "data stream error"; break; - case Z_STREAM_ERROR: - err = "stream consistency error"; break; - default: - err = "unknown error"; break; - - /* Z_BUF_ERROR: normal, needs more space in the output buffer */ - case Z_BUF_ERROR: - case Z_OK: - case Z_STREAM_END: - return ret; - } - error("inflate: %s (%s)", err, strm->msg ? strm->msg : "no message"); - return ret; -} - static int warn_if_unremovable(const char *op, const char *file, int rc) { if (rc < 0) { |