From d8df7f7a40b578b19a77bd530eda91e620692021 Mon Sep 17 00:00:00 2001 From: undefined Date: Sun, 3 Dec 2023 13:20:18 +0800 Subject: [PATCH] core: discussion: add validation to vnode --- packages/hydrooj/src/model/discussion.ts | 1 + 1 file changed, 1 insertion(+) 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);