From 26206d36cc4b0af03445b4de6c1503ab42903f00 Mon Sep 17 00:00:00 2001 From: undefined Date: Sat, 13 Mar 2021 22:39:52 +0800 Subject: [PATCH] judge.vj4: run dos2unix for input files --- packages/hydrojudge/package.json | 2 +- packages/hydrojudge/src/hosts/vj4.ts | 11 ++++++++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/packages/hydrojudge/package.json b/packages/hydrojudge/package.json index 87e585497..67fc3753d 100644 --- a/packages/hydrojudge/package.json +++ b/packages/hydrojudge/package.json @@ -1,7 +1,7 @@ { "name": "@hydrooj/hydrojudge", "bin": "bin/hydrojudge.js", - "version": "2.4.11", + "version": "2.4.12", "os": [ "linux" ], diff --git a/packages/hydrojudge/src/hosts/vj4.ts b/packages/hydrojudge/src/hosts/vj4.ts index c9950697c..60cef1ee0 100644 --- a/packages/hydrojudge/src/hosts/vj4.ts +++ b/packages/hydrojudge/src/hosts/vj4.ts @@ -385,7 +385,16 @@ export default class VJ4 { else if (i.toLowerCase() === 'output') await fs.rename(`${folder}/${i}`, `${folder}/output`); } files = await fs.readdir(`${folder}/input`); - for (const i of files) await fs.rename(`${folder}/input/${i}`, `${folder}/input/${i.toLowerCase()}`); + for (const i of files) { + if (fs.statSync(`${folder}/input/${i}`).size > 64 * 1024 * 1024) { + await fs.rename(`${folder}/input/${i}`, `${folder}/input/${i.toLowerCase()}`); + } else { + const buffer = await fs.readFile(`${folder}/input/${i}`); + const data = buffer.toString().replace(/\r/g, ''); + await fs.unlink(`${folder}/input/${i}`); + await fs.writeFile(`${folder}/input/${i.toLowerCase()}`, data); + } + } files = await fs.readdir(`${folder}/output`); for (const i of files) await fs.rename(`${folder}/output/${i}`, `${folder}/output/${i.toLowerCase()}`); }