diff --git a/.github/workflows/UpdateVersion.yml b/.github/workflows/UpdateVersion.yml index ed9c13b32..74a492246 100644 --- a/.github/workflows/UpdateVersion.yml +++ b/.github/workflows/UpdateVersion.yml @@ -14,6 +14,7 @@ jobs: pull-requests: write contents: write runs-on: ubuntu-latest + if: github.event.pull_request.head.repo.full_name == github.repository && github.actor != 'github-actions[bot]' steps: - name: Generate a token id: generate_token diff --git a/Update.json b/Update.json index 043b5b374..b2da406bd 100644 --- a/Update.json +++ b/Update.json @@ -3214,6 +3214,17 @@ } ], "Notes": "No release notes were provided for this release." + }, + "2.5.3": { + "UpdateDate": 1770358959413, + "Prerelease": true, + "UpdateContents": [ + { + "PR": 888, + "Description": "Fix AC code export for 5-digit question IDs" + } + ], + "Notes": "No release notes were provided for this release." } } } \ No newline at end of file diff --git a/XMOJ.user.js b/XMOJ.user.js index 389809d0a..5c71f748b 100644 --- a/XMOJ.user.js +++ b/XMOJ.user.js @@ -1,6 +1,6 @@ // ==UserScript== // @name XMOJ -// @version 2.5.2 +// @version 2.5.3 // @description XMOJ增强脚本 // @author @XMOJ-Script-dev, @langningchen and the community // @namespace https://github/langningchen @@ -3002,8 +3002,14 @@ async function main() { for (let i = 0; i < ACCode.length; i++) { let CurrentCode = ACCode[i]; if (CurrentCode != "") { - let CurrentQuestionID = CurrentCode.substring(7, 11); - CurrentCode = CurrentCode.substring(14); + let lineBreakPos = CurrentCode.search(/[\r\n]/); + if (lineBreakPos === -1) continue; + let headerLine = CurrentCode.slice(0, lineBreakPos); + let digitMatch = headerLine.match(/\d+/); + if (!digitMatch) continue; + let CurrentQuestionID = digitMatch[0]; + let newlinePos = CurrentCode.indexOf('\n'); + CurrentCode = CurrentCode.slice(newlinePos + 1); CurrentCode = CurrentCode.replaceAll("\r", ""); Zip.file(CurrentQuestionID + ".cpp", CurrentCode); } diff --git a/package.json b/package.json index b70e2ba31..442a50857 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "xmoj-script", - "version": "2.5.2", + "version": "2.5.3", "description": "an improvement script for xmoj.tech", "main": "AddonScript.js", "scripts": {