From 87854c95a90cf1bebe1bffb833389471fb35f234 Mon Sep 17 00:00:00 2001 From: Unknown Date: Sat, 24 May 2014 15:34:02 -0400 Subject: [PATCH] Fixed #200 --- models/issue.go | 4 ++++ routers/repo/issue.go | 10 +++++++++- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/models/issue.go b/models/issue.go index d0a65298b2..18057985f0 100644 --- a/models/issue.go +++ b/models/issue.go @@ -473,6 +473,10 @@ func NewLabel(l *Label) error { // GetLabelById returns a label by given ID. func GetLabelById(id int64) (*Label, error) { + if id <= 0 { + return nil, ErrLabelNotExist + } + l := &Label{Id: id} has, err := orm.Get(l) if err != nil { diff --git a/routers/repo/issue.go b/routers/repo/issue.go index 23f2480dda..6e04288c2b 100644 --- a/routers/repo/issue.go +++ b/routers/repo/issue.go @@ -742,7 +742,15 @@ func UpdateLabel(ctx *middleware.Context, params martini.Params, form auth.Creat } func DeleteLabel(ctx *middleware.Context) { - strIds := strings.Split(ctx.Query("remove"), ",") + removes := ctx.Query("remove") + if len(strings.TrimSpace(removes)) == 0 { + ctx.JSON(200, map[string]interface{}{ + "ok": true, + }) + return + } + + strIds := strings.Split(removes, ",") for _, strId := range strIds { if err := models.DeleteLabel(ctx.Repo.Repository.Id, strId); err != nil { ctx.Handle(500, "issue.DeleteLabel(DeleteLabel)", err)