diff --git a/packages/hydrooj/src/model/discussion.ts b/packages/hydrooj/src/model/discussion.ts index c0eba89a6..e23242e6e 100644 --- a/packages/hydrooj/src/model/discussion.ts +++ b/packages/hydrooj/src/model/discussion.ts @@ -280,6 +280,7 @@ export async function getVnode(domainId: string, type: number, id: string, uid?: } if ([document.TYPE_CONTEST, document.TYPE_TRAINING].includes(type as any)) { const model = type === document.TYPE_TRAINING ? training : contest; + if (!ObjectId.isValid(id)) throw new DiscussionNodeNotFoundError(id); const _id = new ObjectId(id); const tdoc = await model.get(domainId, _id); if (!tdoc) throw new DiscussionNodeNotFoundError(id);