Fix migration panic due to an empty review comment diff (#28334) (#28362)

Backport #28334 by @lng2020

Fix #28328
```
func (p *PullRequestComment) GetDiffHunk() string {
	if p == nil || p.DiffHunk == nil {
		return ""
	}
	return *p.DiffHunk
}
```
This function in the package `go-github` may return an empty diff. When
it's empty, the following code will panic because it access `ss[1]`

ec1feedbf5/services/migrations/gitea_uploader.go (L861-L867)

ec1feedbf5/modules/git/diff.go (L97-L101)

Co-authored-by: Nanguan Lin <70063547+lng2020@users.noreply.github.com>
(cherry picked from commit 8b590de186)
This commit is contained in:
Giteabot 2023-12-05 16:58:15 +08:00 committed by Earl Warren
parent ce3a24ef5f
commit 693c2b4f15
No known key found for this signature in database
GPG key ID: 0579CB2928A78A00

View file

@ -867,7 +867,7 @@ func (g *GiteaLocalUploader) CreateReviews(reviews ...*base.Review) error {
line := comment.Line line := comment.Line
if line != 0 { if line != 0 {
comment.Position = 1 comment.Position = 1
} else { } else if comment.DiffHunk != "" {
_, _, line, _ = git.ParseDiffHunkString(comment.DiffHunk) _, _, line, _ = git.ParseDiffHunkString(comment.DiffHunk)
} }