diff --git a/packages/hydrooj/src/handler/contest.ts b/packages/hydrooj/src/handler/contest.ts index fb96c0729..074bcc056 100644 --- a/packages/hydrooj/src/handler/contest.ts +++ b/packages/hydrooj/src/handler/contest.ts @@ -94,7 +94,8 @@ export class ContestDetailBaseHandler extends Handler { } } if (this.tdoc.duration && this.tsdoc?.startAt) { - this.tsdoc.endAt = moment(this.tsdoc.startAt).add(this.tdoc.duration, 'hours').toDate(); + const endAt = moment(this.tsdoc.startAt).add(this.tdoc.duration, 'hours').toDate(); + this.tsdoc.endAt = endAt < this.tdoc.endAt ? endAt : this.tdoc.endAt; } }