diff options
Diffstat (limited to 'modules/git/repo_branch_gogit.go')
-rw-r--r-- | modules/git/repo_branch_gogit.go | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/modules/git/repo_branch_gogit.go b/modules/git/repo_branch_gogit.go index d159aafd6f..57952bcc64 100644 --- a/modules/git/repo_branch_gogit.go +++ b/modules/git/repo_branch_gogit.go @@ -83,11 +83,15 @@ func (repo *Repository) GetBranchNames(skip, limit int) ([]string, int, error) { // WalkReferences walks all the references from the repository func WalkReferences(ctx context.Context, repoPath string, walkfn func(string) error) (int, error) { - repo, err := OpenRepositoryCtx(ctx, repoPath) - if err != nil { - return 0, err + repo := RepositoryFromContext(ctx, repoPath) + if repo == nil { + var err error + repo, err = OpenRepositoryCtx(ctx, repoPath) + if err != nil { + return 0, err + } + defer repo.Close() } - defer repo.Close() i := 0 iter, err := repo.gogitRepo.References() |