Check if the `due_date` is nil when editing issues (#32035) (#32042)

Backport #32035 by @Zettat123

Fix #32030

Co-authored-by: Zettat123 <zettat123@gmail.com>
This commit is contained in:
Giteabot 2024-09-15 01:31:34 +08:00 committed by GitHub
parent 30d989d411
commit 3d7d0c36e7
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 10 additions and 4 deletions

View File

@ -828,10 +828,16 @@ func EditIssue(ctx *context.APIContext) {
if (form.Deadline != nil || form.RemoveDeadline != nil) && canWrite { if (form.Deadline != nil || form.RemoveDeadline != nil) && canWrite {
var deadlineUnix timeutil.TimeStamp var deadlineUnix timeutil.TimeStamp
if (form.RemoveDeadline == nil || !*form.RemoveDeadline) && !form.Deadline.IsZero() { if form.RemoveDeadline == nil || !*form.RemoveDeadline {
deadline := time.Date(form.Deadline.Year(), form.Deadline.Month(), form.Deadline.Day(), if form.Deadline == nil {
23, 59, 59, 0, form.Deadline.Location()) ctx.Error(http.StatusBadRequest, "", "The due_date cannot be empty")
deadlineUnix = timeutil.TimeStamp(deadline.Unix()) return
}
if !form.Deadline.IsZero() {
deadline := time.Date(form.Deadline.Year(), form.Deadline.Month(), form.Deadline.Day(),
23, 59, 59, 0, form.Deadline.Location())
deadlineUnix = timeutil.TimeStamp(deadline.Unix())
}
} }
if err := issues_model.UpdateIssueDeadline(ctx, issue, deadlineUnix, ctx.Doer); err != nil { if err := issues_model.UpdateIssueDeadline(ctx, issue, deadlineUnix, ctx.Doer); err != nil {