Ensure that GitRepo is set on Empty repositories (#8539) (#8541)

Both issues/new and settings/hooks/git expect `ctx.Repo.GitRepo` to be set.
This PR changes the context code to open the GitRepo.

Fixes #8538
This commit is contained in:
zeripath 2019-10-16 17:03:25 +01:00 committed by Lunny Xiao
parent 0752a3895a
commit 34b8becef0
1 changed files with 8 additions and 2 deletions

View File

@ -414,8 +414,8 @@ func RepoAssignment() macaron.Handler {
} }
} }
// repo is empty and display enable // Disable everything when the repo is being created
if ctx.Repo.Repository.IsEmpty || ctx.Repo.Repository.IsBeingCreated() { if ctx.Repo.Repository.IsBeingCreated() {
ctx.Data["BranchName"] = ctx.Repo.Repository.DefaultBranch ctx.Data["BranchName"] = ctx.Repo.Repository.DefaultBranch
return return
} }
@ -427,6 +427,12 @@ func RepoAssignment() macaron.Handler {
} }
ctx.Repo.GitRepo = gitRepo ctx.Repo.GitRepo = gitRepo
// Stop at this point when the repo is empty.
if ctx.Repo.Repository.IsEmpty {
ctx.Data["BranchName"] = ctx.Repo.Repository.DefaultBranch
return
}
tags, err := ctx.Repo.GitRepo.GetTags() tags, err := ctx.Repo.GitRepo.GetTags()
if err != nil { if err != nil {
ctx.ServerError("GetTags", err) ctx.ServerError("GetTags", err)