Fix migration panic when Head.User is not exist (#7226)

* fix migration panic when Head.User is not exist

* fix test
This commit is contained in:
Lunny Xiao 2019-06-19 00:15:39 +08:00 committed by techknowlogick
parent 954d24c121
commit 392fe6c943
1 changed files with 26 additions and 7 deletions

View File

@ -416,17 +416,36 @@ func (g *GithubDownloaderV3) GetPullRequests(page, perPage int) ([]*base.PullReq
merged = true
}
var headRepoName string
var cloneURL string
var (
headRepoName string
cloneURL string
headRef string
headSHA string
)
if pr.Head.Repo != nil {
if pr.Head.Repo.Name != nil {
headRepoName = *pr.Head.Repo.Name
}
if pr.Head.Repo.CloneURL != nil {
cloneURL = *pr.Head.Repo.CloneURL
}
}
if pr.Head.Ref != nil {
headRef = *pr.Head.Ref
}
if pr.Head.SHA != nil {
headSHA = *pr.Head.SHA
}
var mergeCommitSHA string
if pr.MergeCommitSHA != nil {
mergeCommitSHA = *pr.MergeCommitSHA
}
var headUserName string
if pr.Head.User != nil && pr.Head.User.Login != nil {
headUserName = *pr.Head.User.Login
}
allPRs = append(allPRs, &base.PullRequest{
Title: *pr.Title,
Number: int64(*pr.Number),
@ -443,10 +462,10 @@ func (g *GithubDownloaderV3) GetPullRequests(page, perPage int) ([]*base.PullReq
MergedTime: pr.MergedAt,
IsLocked: pr.ActiveLockReason != nil,
Head: base.PullRequestBranch{
Ref: *pr.Head.Ref,
SHA: *pr.Head.SHA,
Ref: headRef,
SHA: headSHA,
RepoName: headRepoName,
OwnerName: *pr.Head.User.Login,
OwnerName: headUserName,
CloneURL: cloneURL,
},
Base: base.PullRequestBranch{