diff options
author | Junio C Hamano <junkio@cox.net> | 2005-11-02 15:19:13 -0800 |
---|---|---|
committer | Junio C Hamano <junkio@cox.net> | 2005-11-02 16:50:58 -0800 |
commit | 9534f40bc42dd826cc26c8c8c84f6a8a5fc569f6 (patch) | |
tree | 85db17a196526144838f60d848c9582c4e113d59 /send-pack.c | |
parent | 2fd955cc0b49de9e64b2f073ce76033975f0be24 (diff) | |
download | git-9534f40bc42dd826cc26c8c8c84f6a8a5fc569f6.tar.gz |
Be careful when dereferencing tags.
One caller of deref_tag() was not careful enough to make sure
what deref_tag() returned was not NULL (i.e. we found a tag
object that points at an object we do not have). Fix it, and
warn about refs that point at such an incomplete tag where
needed.
Signed-off-by: Junio C Hamano <junkio@cox.net>
Diffstat (limited to 'send-pack.c')
-rw-r--r-- | send-pack.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/send-pack.c b/send-pack.c index 9f9a6e70b8..3eeb18f7c7 100644 --- a/send-pack.c +++ b/send-pack.c @@ -126,12 +126,12 @@ static int ref_newer(const unsigned char *new_sha1, /* Both new and old must be commit-ish and new is descendant of * old. Otherwise we require --force. */ - o = deref_tag(parse_object(old_sha1)); + o = deref_tag(parse_object(old_sha1), NULL, 0); if (!o || o->type != commit_type) return 0; old = (struct commit *) o; - o = deref_tag(parse_object(new_sha1)); + o = deref_tag(parse_object(new_sha1), NULL, 0); if (!o || o->type != commit_type) return 0; new = (struct commit *) o; |