reflog expire: don't use lookup_commit_reference_gently()
In the initial implementation of "git reflog" in 4264dc15e19 (git reflog expire, 2006-12-19) we had this lookup_commit_reference_gently(). I don't think we've ever found tags that we need to recursively dereference in reflogs, so this should at least be changed to a "lookup commit" as I'm doing here, although I can't think of a way where it mattered in practice. I also think we'd probably like to just die here if we have a NULL object, but as this code needs to handle potentially broken repositories let's just show an "error" but continue, the non-quiet lookup_commit() will do for us. None of our tests cover the case where "commit" is NULL after this lookup. Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
07815e2d97
commit
daf1d8285e
@ -359,8 +359,7 @@ static void reflog_expiry_prepare(const char *refname,
|
|||||||
if (!cb->cmd.expire_unreachable || is_head(refname)) {
|
if (!cb->cmd.expire_unreachable || is_head(refname)) {
|
||||||
cb->unreachable_expire_kind = UE_HEAD;
|
cb->unreachable_expire_kind = UE_HEAD;
|
||||||
} else {
|
} else {
|
||||||
commit = lookup_commit_reference_gently(the_repository,
|
commit = lookup_commit(the_repository, oid);
|
||||||
oid, 1);
|
|
||||||
cb->unreachable_expire_kind = commit ? UE_NORMAL : UE_ALWAYS;
|
cb->unreachable_expire_kind = commit ? UE_NORMAL : UE_ALWAYS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user