From ebdb320cc7c5a2f65a0865a736c1f1fc8e7f8c07 Mon Sep 17 00:00:00 2001 From: Daniel Brinkers Date: Thu, 27 Nov 2025 20:51:45 +0100 Subject: [PATCH] Fix path replacement in scoreboard.zip --- webapp/src/Service/DOMJudgeService.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/webapp/src/Service/DOMJudgeService.php b/webapp/src/Service/DOMJudgeService.php index 5101285bf8..9d6da728a6 100644 --- a/webapp/src/Service/DOMJudgeService.php +++ b/webapp/src/Service/DOMJudgeService.php @@ -1547,7 +1547,8 @@ public function getScoreboardZip( $assetRegex = '|/CHANGE_ME/([/a-z0-9_\-\.]*)(\??[/a-z0-9_\-\.=]*)|i'; preg_match_all($assetRegex, $contestPage, $assetMatches); $contestPage = preg_replace($assetRegex, '$1$2', $contestPage); - $contestPage = str_replace('/public/submissions-data.json', 'submissions-data.json', $contestPage); + $contestPage = preg_replace('|data-submissions-url="[^"]*/public/submissions-data\.json"|', + 'data-submissions-url="submissions-data.json"', $contestPage); $zip = new ZipArchive(); if (!($tempFilename = tempnam($this->getDomjudgeTmpDir(), "contest-"))) {