aboutsummaryrefslogtreecommitdiffstats
path: root/services/migrations/gitea_downloader.go
diff options
context:
space:
mode:
authorzeripath <art27@cantab.net>2022-06-09 03:50:05 +0100
committerGitHub <noreply@github.com>2022-06-09 10:50:05 +0800
commit7948cb3149ab64484a8d4c6644f53f9f39accbef (patch)
tree57d26b3cd16456876ded4305ce0cb0ee375b9fb9 /services/migrations/gitea_downloader.go
parentd087554d81e56bff6bde9c68bf610daae15b011e (diff)
downloadgitea-7948cb3149ab64484a8d4c6644f53f9f39accbef.tar.gz
gitea-7948cb3149ab64484a8d4c6644f53f9f39accbef.zip
Prevent NPE whilst migrating if there is a team request review (#19855)
A pr.Reviewer may be nil when migrating from Gitea if this is a team request review. We do not migrate teams therefore we cannot map these requests, but we can migrate user requests. Signed-off-by: Andrew Thornton <art27@cantab.net>
Diffstat (limited to 'services/migrations/gitea_downloader.go')
-rw-r--r--services/migrations/gitea_downloader.go11
1 files changed, 9 insertions, 2 deletions
diff --git a/services/migrations/gitea_downloader.go b/services/migrations/gitea_downloader.go
index 3c02e112ca..4ad55894ee 100644
--- a/services/migrations/gitea_downloader.go
+++ b/services/migrations/gitea_downloader.go
@@ -639,6 +639,11 @@ func (g *GiteaDownloader) GetReviews(reviewable base.Reviewable) ([]*base.Review
}
for _, pr := range prl {
+ if pr.Reviewer == nil {
+ // Presumably this is a team review which we cannot migrate at present but we have to skip this review as otherwise the review will be mapped on to an incorrect user.
+ // TODO: handle team reviews
+ continue
+ }
rcl, _, err := g.client.ListPullReviewComments(g.repoOwner, g.repoName, reviewable.GetForeignIndex(), pr.ID)
if err != nil {
@@ -664,7 +669,7 @@ func (g *GiteaDownloader) GetReviews(reviewable base.Reviewable) ([]*base.Review
})
}
- allReviews = append(allReviews, &base.Review{
+ review := &base.Review{
ID: pr.ID,
IssueIndex: reviewable.GetLocalIndex(),
ReviewerID: pr.Reviewer.ID,
@@ -675,7 +680,9 @@ func (g *GiteaDownloader) GetReviews(reviewable base.Reviewable) ([]*base.Review
CreatedAt: pr.Submitted,
State: string(pr.State),
Comments: reviewComments,
- })
+ }
+
+ allReviews = append(allReviews, review)
}
if len(prl) < g.maxPerPage {