Protect peel_ref fallback case from NULL parse_object result
If the SHA-1 we are requesting the object for does not exist in the object database we get a NULL back. Accessing the type from that is not likely to succeed on any system. Signed-off-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
6c0f86943e
commit
8c87dc77ae
2
refs.c
2
refs.c
@ -506,7 +506,7 @@ int peel_ref(const char *ref, unsigned char *sha1)
|
|||||||
|
|
||||||
/* fallback - callers should not call this for unpacked refs */
|
/* fallback - callers should not call this for unpacked refs */
|
||||||
o = parse_object(base);
|
o = parse_object(base);
|
||||||
if (o->type == OBJ_TAG) {
|
if (o && o->type == OBJ_TAG) {
|
||||||
o = deref_tag(o, ref, 0);
|
o = deref_tag(o, ref, 0);
|
||||||
if (o) {
|
if (o) {
|
||||||
hashcpy(sha1, o->sha1);
|
hashcpy(sha1, o->sha1);
|
||||||
|
Loading…
Reference in New Issue
Block a user