diff --git a/packages/hydrooj/package.json b/packages/hydrooj/package.json index 9bb952e95..984ca4d12 100644 --- a/packages/hydrooj/package.json +++ b/packages/hydrooj/package.json @@ -1,6 +1,6 @@ { "name": "hydrooj", - "version": "2.24.2", + "version": "2.24.3", "bin": "bin/hydrooj.js", "main": "dist/loader.js", "typings": "dist/loader.d.ts", diff --git a/packages/hydrooj/src/handler/user.ts b/packages/hydrooj/src/handler/user.ts index be59efe11..5752c0c35 100644 --- a/packages/hydrooj/src/handler/user.ts +++ b/packages/hydrooj/src/handler/user.ts @@ -2,7 +2,7 @@ import moment from 'moment-timezone'; import { UserAlreadyExistError, InvalidTokenError, VerifyPasswordError, UserNotFoundError, SystemError, BlacklistedError, - UserFacingError, LoginError, + UserFacingError, LoginError, NotFoundError, } from '../error'; import { User } from '../interface'; import { @@ -178,6 +178,7 @@ class UserLostPassWithCodeHandler extends Handler { class UserDetailHandler extends Handler { @param('uid', Types.Int) async get(domainId: string, uid: number) { + if (uid === 0) throw new NotFoundError(this.request.path); const isSelfProfile = this.user._id === uid; const udoc = await user.getById(domainId, uid); if (!udoc) throw new UserNotFoundError(uid);