Skip to content

Commit 5e1c51c

Browse files
authored
(Re)Load issue labels when changing them (#13007)
(Re)Load issue labels when labels are added or removed This means that the label state that the webhooks produce accurately matches the changes that they are reporting. Fix #10660 Signed-off-by: Andrew Thornton <[email protected]>
1 parent cda4475 commit 5e1c51c

File tree

2 files changed

+20
-0
lines changed

2 files changed

+20
-0
lines changed

models/issue.go

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -549,6 +549,11 @@ func (issue *Issue) ReplaceLabels(labels []*Label, doer *User) (err error) {
549549
}
550550
}
551551

552+
issue.Labels = nil
553+
if err = issue.loadLabels(sess); err != nil {
554+
return err
555+
}
556+
552557
return sess.Commit()
553558
}
554559

models/issue_label.go

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -670,6 +670,11 @@ func NewIssueLabel(issue *Issue, label *Label, doer *User) (err error) {
670670
return err
671671
}
672672

673+
issue.Labels = nil
674+
if err = issue.loadLabels(sess); err != nil {
675+
return err
676+
}
677+
673678
return sess.Commit()
674679
}
675680

@@ -699,6 +704,11 @@ func NewIssueLabels(issue *Issue, labels []*Label, doer *User) (err error) {
699704
return err
700705
}
701706

707+
issue.Labels = nil
708+
if err = issue.loadLabels(sess); err != nil {
709+
return err
710+
}
711+
702712
return sess.Commit()
703713
}
704714

@@ -742,5 +752,10 @@ func DeleteIssueLabel(issue *Issue, label *Label, doer *User) (err error) {
742752
return err
743753
}
744754

755+
issue.Labels = nil
756+
if err = issue.loadLabels(sess); err != nil {
757+
return err
758+
}
759+
745760
return sess.Commit()
746761
}

0 commit comments

Comments
 (0)