Fix preload finder regex in StyleCompiler::extractPreloadRequests()
authorTim Düsterhus <duesterhus@woltlab.com>
Wed, 28 Apr 2021 13:08:31 +0000 (15:08 +0200)
committerGitHub <noreply@github.com>
Wed, 28 Apr 2021 13:08:31 +0000 (15:08 +0200)
The previous one did not match preload requests without a trailing semicolon, because a closing brace immediately follows.

wcfsetup/install/files/lib/system/style/StyleCompiler.class.php

index 979df096e15fde4cce92e4c59fe1d0b83c481e44..c1d925c2133f5a13ccf29c791e79f8ffcfed5594 100644 (file)
@@ -353,7 +353,7 @@ final class StyleCompiler extends SingletonFactory
      */
     private function extractPreloadRequests(string $css): iterable
     {
-        $regex = '/--woltlab-suite-preload:\\s*preload_dummy\\(((?:"(?:\\\\.|[^\\\\"])*"|[^")])+)\\);/';
+        $regex = '/--woltlab-suite-preload:\\s*preload_dummy\\(((?:"(?:\\\\.|[^\\\\"])*"|[^")])+)\\)\\s*[;\\}]/';
         if (!\preg_match_all($regex, $css, $requests)) {
             return [];
         }