From 2d1c218999644a5a8434f79e03fa531d662f0731 Mon Sep 17 00:00:00 2001 From: undefined Date: Wed, 26 Oct 2022 17:54:05 +0800 Subject: [PATCH] core: fix #451 --- packages/hydrooj/package.json | 2 +- packages/hydrooj/src/handler/record.ts | 8 +++++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/packages/hydrooj/package.json b/packages/hydrooj/package.json index fb364cecd..a38286534 100644 --- a/packages/hydrooj/package.json +++ b/packages/hydrooj/package.json @@ -1,6 +1,6 @@ { "name": "hydrooj", - "version": "4.2.9", + "version": "4.2.10", "bin": "bin/hydrooj.js", "main": "src/plugin-api", "module": "src/plugin-api", diff --git a/packages/hydrooj/src/handler/record.ts b/packages/hydrooj/src/handler/record.ts index 0adb85cfb..eab6d24d7 100644 --- a/packages/hydrooj/src/handler/record.ts +++ b/packages/hydrooj/src/handler/record.ts @@ -270,11 +270,13 @@ class RecordMainConnectionHandler extends ConnectionHandler { async onRecordChange(rdoc: RecordDoc) { if (!this.all) { - if (!this.pretest && rdoc.input) return; if (rdoc.domainId !== this.args.domainId) return; + if (!this.pretest && rdoc.input) return; if (rdoc.contest && ![this.tid, '000000000000000000000000'].includes(rdoc.contest.toString())) return; - if (this.tid && contest.isLocked(this.tdoc)) return; - if (this.tid && !contest.canShowSelfRecord.call(this, this.tdoc, true)) return; + if (this.tid && rdoc.contest?.toString() !== '0'.repeat(24)) { + if (contest.isLocked(this.tdoc)) return; + if (!contest.canShowSelfRecord.call(this, this.tdoc, true)) return; + } } if (this.pid && rdoc.pid !== this.pid) return; if (this.uid && rdoc.uid !== this.uid) return;