fix(api): skip label lookup in ListIssues when no labels filter given (#39890)

strings.Split("", ",") returns []string{""} (length 1), not an empty
slice, so the previous len(splitted) > 0 guard was always true and never
skipped the label ID lookup, even when the labels query param was
absent. Check the raw trimmed param for emptiness before splitting,
mirroring the pattern already used elsewhere in this file.

Fixes: https://github.com/go-gitea/gitea/issues/39889
This commit is contained in:
Shivansh Garg
2026-10-21 00:16:14 +05:30
committed by GitHub
parent 35fa0400e9
commit 5265238726

View File

@@ -335,8 +335,8 @@ func ListIssues(ctx *context.APIContext) {
keyword := ctx.FormTrim("q")
var labelIDs []int64
if splitted := strings.Split(ctx.FormString("labels"), ","); len(splitted) > 0 {
labelIDs, err = issues_model.GetLabelIDsInRepoByNames(ctx, ctx.Repo.Repository.ID, splitted)
if labelsParam := ctx.FormTrim("labels"); labelsParam != "" {
labelIDs, err = issues_model.GetLabelIDsInRepoByNames(ctx, ctx.Repo.Repository.ID, strings.Split(labelsParam, ","))
if err != nil {
ctx.APIErrorInternal(err)
return