From f18547ba169f295a33587e2dbe0adb14c61aa66f Mon Sep 17 00:00:00 2001 From: undefined Date: Fri, 12 Nov 2021 17:23:10 +0800 Subject: [PATCH] core: rating: ignore invalid user --- packages/hydrooj/package.json | 2 +- packages/hydrooj/src/script/rating.ts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/hydrooj/package.json b/packages/hydrooj/package.json index 315a19531..ef1a2c1d0 100644 --- a/packages/hydrooj/package.json +++ b/packages/hydrooj/package.json @@ -1,6 +1,6 @@ { "name": "hydrooj", - "version": "3.1.27", + "version": "3.1.28", "bin": "bin/hydrooj.js", "main": "src/loader", "module": "src/loader", diff --git a/packages/hydrooj/src/script/rating.ts b/packages/hydrooj/src/script/rating.ts index 601332470..890992cc2 100644 --- a/packages/hydrooj/src/script/rating.ts +++ b/packages/hydrooj/src/script/rating.ts @@ -160,7 +160,7 @@ async function runInDomain(id: string, isSub: boolean, report: Function) { async function update(uid: number, rp: number) { const udoc = await UserModel.getById(id, +uid); const $upd: any = { $set: { rp: Math.max(0, rp) } }; - if (udoc.hasPriv(PRIV.PRIV_USER_PROFILE)) await domain.updateUserInDomain(id, +uid, $upd); + if (udoc?.hasPriv(PRIV.PRIV_USER_PROFILE)) await domain.updateUserInDomain(id, +uid, $upd); } for (const uid in udict) tasks.push(update(+uid, udict[uid] + (deltaudict[uid] || 0))); await Promise.all(tasks);