Browse Source

Merge branch 'jk/sha1-loose-object-info-fix' into maint

Leakfix and futureproofing.

* jk/sha1-loose-object-info-fix:
  sha1_loose_object_info: handle errors from unpack_sha1_rest
maint
Junio C Hamano 7 years ago
parent
commit
eeed979e6a
  1. 8
      sha1_file.c

8
sha1_file.c

@ -2952,10 +2952,14 @@ static int sha1_loose_object_info(const unsigned char *sha1, @@ -2952,10 +2952,14 @@ static int sha1_loose_object_info(const unsigned char *sha1,
} else if ((status = parse_sha1_header_extended(hdr, oi, flags)) < 0)
status = error("unable to parse %s header", sha1_to_hex(sha1));

if (status >= 0 && oi->contentp)
if (status >= 0 && oi->contentp) {
*oi->contentp = unpack_sha1_rest(&stream, hdr,
*oi->sizep, sha1);
else
if (!*oi->contentp) {
git_inflate_end(&stream);
status = -1;
}
} else
git_inflate_end(&stream);

munmap(map, mapsize);

Loading…
Cancel
Save