From 283cdbcf49401cc56169f8f36b7ddc8b8223b2b9 Mon Sep 17 00:00:00 2001 From: Martin Koegler Date: Mon, 18 Feb 2008 21:47:53 +0100 Subject: get_sha1_oneline: check return value of parse_object Signed-off-by: Martin Koegler Signed-off-by: Junio C Hamano --- sha1_name.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'sha1_name.c') diff --git a/sha1_name.c b/sha1_name.c index 13e11645e1..4c0bc9c5b5 100644 --- a/sha1_name.c +++ b/sha1_name.c @@ -617,7 +617,8 @@ static int get_sha1_oneline(const char *prefix, unsigned char *sha1) unsigned long size; commit = pop_most_recent_commit(&list, ONELINE_SEEN); - parse_object(commit->object.sha1); + if (!parse_object(commit->object.sha1)) + continue; if (temp_commit_buffer) free(temp_commit_buffer); if (commit->buffer) -- cgit v1.2.3 From f73df331a43a6092af427fd30bb6ce07f313743c Mon Sep 17 00:00:00 2001 From: Martin Koegler Date: Mon, 18 Feb 2008 21:47:58 +0100 Subject: peel_onion: handle NULL Signed-off-by: Martin Koegler Signed-off-by: Junio C Hamano --- sha1_name.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'sha1_name.c') diff --git a/sha1_name.c b/sha1_name.c index 4c0bc9c5b5..2575ea77f4 100644 --- a/sha1_name.c +++ b/sha1_name.c @@ -494,8 +494,11 @@ static int peel_onion(const char *name, int len, unsigned char *sha1) return error("%.*s: expected %s type, but the object dereferences to %s type", len, name, typename(expected_type), typename(o->type)); + if (!o) + return -1; if (!o->parsed) - parse_object(o->sha1); + if (!parse_object(o->sha1)) + return -1; } } return 0; -- cgit v1.2.3