Fix NPE `/repos/issues/search` when not signed in (#19154)
- Don't panic when on `/repos/issues/search?{created,assigned,mentioned,review_requested}=true` when client didn't pass any authentication. - Resolves #19115
This commit is contained in:
parent
83a2f79d5d
commit
49c5fc565c
|
@ -245,18 +245,23 @@ func SearchIssues(ctx *context.APIContext) {
|
||||||
UpdatedAfterUnix: since,
|
UpdatedAfterUnix: since,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ctxUserID := int64(0)
|
||||||
|
if ctx.IsSigned {
|
||||||
|
ctxUserID = ctx.User.ID
|
||||||
|
}
|
||||||
|
|
||||||
// Filter for: Created by User, Assigned to User, Mentioning User, Review of User Requested
|
// Filter for: Created by User, Assigned to User, Mentioning User, Review of User Requested
|
||||||
if ctx.FormBool("created") {
|
if ctx.FormBool("created") {
|
||||||
issuesOpt.PosterID = ctx.User.ID
|
issuesOpt.PosterID = ctxUserID
|
||||||
}
|
}
|
||||||
if ctx.FormBool("assigned") {
|
if ctx.FormBool("assigned") {
|
||||||
issuesOpt.AssigneeID = ctx.User.ID
|
issuesOpt.AssigneeID = ctxUserID
|
||||||
}
|
}
|
||||||
if ctx.FormBool("mentioned") {
|
if ctx.FormBool("mentioned") {
|
||||||
issuesOpt.MentionedID = ctx.User.ID
|
issuesOpt.MentionedID = ctxUserID
|
||||||
}
|
}
|
||||||
if ctx.FormBool("review_requested") {
|
if ctx.FormBool("review_requested") {
|
||||||
issuesOpt.ReviewRequestedID = ctx.User.ID
|
issuesOpt.ReviewRequestedID = ctxUserID
|
||||||
}
|
}
|
||||||
|
|
||||||
if issues, err = models.Issues(issuesOpt); err != nil {
|
if issues, err = models.Issues(issuesOpt); err != nil {
|
||||||
|
|
Loading…
Reference in New Issue