Merge branch 'lt/maint-wrap-zlib'
* lt/maint-wrap-zlib: Wrap inflate and other zlib routines for better error reporting Conflicts: http-push.c http-walker.c sha1_file.c
This commit is contained in:
12
index-pack.c
12
index-pack.c
@ -275,10 +275,10 @@ static void *unpack_entry_data(unsigned long offset, unsigned long size)
|
||||
stream.avail_out = size;
|
||||
stream.next_in = fill(1);
|
||||
stream.avail_in = input_len;
|
||||
inflateInit(&stream);
|
||||
git_inflate_init(&stream);
|
||||
|
||||
for (;;) {
|
||||
int ret = inflate(&stream, 0);
|
||||
int ret = git_inflate(&stream, 0);
|
||||
use(input_len - stream.avail_in);
|
||||
if (stream.total_out == size && ret == Z_STREAM_END)
|
||||
break;
|
||||
@ -287,7 +287,7 @@ static void *unpack_entry_data(unsigned long offset, unsigned long size)
|
||||
stream.next_in = fill(1);
|
||||
stream.avail_in = input_len;
|
||||
}
|
||||
inflateEnd(&stream);
|
||||
git_inflate_end(&stream);
|
||||
return buf;
|
||||
}
|
||||
|
||||
@ -382,9 +382,9 @@ static void *get_data_from_pack(struct object_entry *obj)
|
||||
stream.avail_out = obj->size;
|
||||
stream.next_in = src;
|
||||
stream.avail_in = len;
|
||||
inflateInit(&stream);
|
||||
while ((st = inflate(&stream, Z_FINISH)) == Z_OK);
|
||||
inflateEnd(&stream);
|
||||
git_inflate_init(&stream);
|
||||
while ((st = git_inflate(&stream, Z_FINISH)) == Z_OK);
|
||||
git_inflate_end(&stream);
|
||||
if (st != Z_STREAM_END || stream.total_out != obj->size)
|
||||
die("serious inflate inconsistency");
|
||||
free(src);
|
||||
|
Reference in New Issue
Block a user