mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2024-12-01 05:36:19 +01:00
parent
edae0f134c
commit
d07c955e2a
1 changed files with 39 additions and 7 deletions
|
@ -121,12 +121,40 @@ func (pr *PullRequest) LoadIssue() (err error) {
|
|||
// Required - Issue
|
||||
// Optional - Merger
|
||||
func (pr *PullRequest) APIFormat() *api.PullRequest {
|
||||
|
||||
var (
|
||||
baseBranch *Branch
|
||||
headBranch *Branch
|
||||
baseCommit *git.Commit
|
||||
headCommit *git.Commit
|
||||
err error
|
||||
)
|
||||
apiIssue := pr.Issue.APIFormat()
|
||||
baseBranch, _ := pr.BaseRepo.GetBranch(pr.BaseBranch)
|
||||
baseCommit, _ := baseBranch.GetCommit()
|
||||
headBranch, _ := pr.HeadRepo.GetBranch(pr.HeadBranch)
|
||||
headCommit, _ := headBranch.GetCommit()
|
||||
if pr.BaseRepo == nil {
|
||||
pr.BaseRepo, err = GetRepositoryByID(pr.BaseRepoID)
|
||||
if err != nil {
|
||||
log.Error(log.ERROR, "GetRepositoryById[%d]: %v", pr.ID, err)
|
||||
return nil
|
||||
}
|
||||
}
|
||||
if pr.HeadRepo == nil {
|
||||
pr.HeadRepo, err = GetRepositoryByID(pr.HeadRepoID)
|
||||
if err != nil {
|
||||
log.Error(log.ERROR, "GetRepositoryById[%d]: %v", pr.ID, err)
|
||||
return nil
|
||||
}
|
||||
}
|
||||
if baseBranch, err = pr.BaseRepo.GetBranch(pr.BaseBranch); err != nil {
|
||||
return nil
|
||||
}
|
||||
if baseCommit, err = baseBranch.GetCommit(); err != nil {
|
||||
return nil
|
||||
}
|
||||
if headBranch, err = pr.HeadRepo.GetBranch(pr.HeadBranch); err != nil {
|
||||
return nil
|
||||
}
|
||||
if headCommit, err = headBranch.GetCommit(); err != nil {
|
||||
return nil
|
||||
}
|
||||
apiBaseBranchInfo := &api.PRBranchInfo{
|
||||
Name: pr.BaseBranch,
|
||||
Ref: pr.BaseBranch,
|
||||
|
@ -590,8 +618,12 @@ func GetPullRequestByIndex(repoID int64, index int64) (*PullRequest, error) {
|
|||
return nil, ErrPullRequestNotExist{0, repoID, index, 0, "", ""}
|
||||
}
|
||||
|
||||
pr.LoadAttributes()
|
||||
pr.LoadIssue()
|
||||
if err = pr.LoadAttributes(); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if err = pr.LoadIssue(); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return pr, nil
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue