From 9c9ec9f327163c628e861534f5e7522893291d39 Mon Sep 17 00:00:00 2001 From: Nicky Gerritsen Date: Sun, 25 May 2025 15:13:53 -0400 Subject: [PATCH] When we shadow, trust the filenames and file sizes, but treat them as import-error Fixes #3005 --- webapp/src/Service/SubmissionService.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/webapp/src/Service/SubmissionService.php b/webapp/src/Service/SubmissionService.php index 04410c3c25..1a2b4cbd8c 100644 --- a/webapp/src/Service/SubmissionService.php +++ b/webapp/src/Service/SubmissionService.php @@ -569,7 +569,7 @@ public function submitSolution( if (!empty($entryPoint) && !preg_match(self::FILENAME_REGEX, $entryPoint)) { $message = sprintf("Entry point '%s' contains illegal characters.", $entryPoint); - if ($forceImportInvalid) { + if ($forceImportInvalid || $source === 'shadowing') { $importError = $message; } else { return null; @@ -610,7 +610,7 @@ public function submitSolution( } if (!preg_match(self::FILENAME_REGEX, $file->getClientOriginalName())) { $message = sprintf("Illegal filename '%s'.", $file->getClientOriginalName()); - if ($forceImportInvalid) { + if ($forceImportInvalid || $source === 'shadowing') { $importError = $message; } else { return null; @@ -647,7 +647,7 @@ public function submitSolution( if ($totalSize > $sourceSize * 1024) { $message = sprintf("Submission file(s) are larger than %d kB.", $sourceSize); - if ($forceImportInvalid) { + if ($forceImportInvalid || $source === 'shadowing') { $importError = $message; } else { return null;