From 052bff0cff30f43ddd656bccc36b29bce3866393 Mon Sep 17 00:00:00 2001 From: zeripath Date: Sat, 28 Mar 2020 18:59:21 +0000 Subject: [PATCH] Convert plumbing.ErrObjectNotFound to git.ErrNotExist in getCommit (#10862) Co-authored-by: Lauris BH Co-authored-by: guillep2k <18600385+guillep2k@users.noreply.github.com> Co-authored-by: Antoine GIRARD --- modules/git/repo_commit.go | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/modules/git/repo_commit.go b/modules/git/repo_commit.go index a7a7c6623..c5f6d6cdd 100644 --- a/modules/git/repo_commit.go +++ b/modules/git/repo_commit.go @@ -94,9 +94,15 @@ func (repo *Repository) getCommit(id SHA1) (*Commit, error) { gogitCommit, err := repo.gogitRepo.CommitObject(id) if err == plumbing.ErrObjectNotFound { tagObject, err = repo.gogitRepo.TagObject(id) + if err == plumbing.ErrObjectNotFound { + return nil, ErrNotExist{ + ID: id.String(), + } + } if err == nil { gogitCommit, err = repo.gogitRepo.CommitObject(tagObject.Target) } + // if we get a plumbing.ErrObjectNotFound here then the repository is broken and it should be 500 } if err != nil { return nil, err