diff --git a/.eslintrc b/.eslintrc index 21860cbe..fde12817 100644 --- a/.eslintrc +++ b/.eslintrc @@ -37,6 +37,7 @@ "GoogleDomains": true, "ReqAnalyzer": true, "MathJax3Files": true, + "RedirectMap": true, "fileGuard": true, "files": true, diff --git a/core/constants.js b/core/constants.js index d75fb9d8..f88f72e4 100644 --- a/core/constants.js +++ b/core/constants.js @@ -466,6 +466,13 @@ const LogString = { 'IFRAME': 'Possible iframe request:', }; +const RedirectMap = { + 'resources/font-awesome/3.2.1/css/all.min.css': 'resources/font-awesome/3.2.1/css/font-awesome.min.css', + 'resources/font-awesome/3.2.1/css/all.css': 'resources/font-awesome/3.2.1/css/font-awesome.min.css', + 'resources/font-awesome/4.7.0/css/all.min.css': 'resources/font-awesome/4.7.0/css/font-awesome.min.css', + 'resources/font-awesome/4.7.0/css/all.css': 'resources/font-awesome/4.7.0/css/font-awesome.min.css' +}; + /** * https://codeberg.org/nobody/LocalCDN/issues/1560 */ diff --git a/core/request-analyzer.js b/core/request-analyzer.js index 222bf6e7..0814bfd9 100644 --- a/core/request-analyzer.js +++ b/core/request-analyzer.js @@ -223,6 +223,8 @@ requestAnalyzer._findLocalTarget = function (resourceMappings, basePath, channel break; } + targetPath = requestAnalyzer._redirectTargetFile(targetPath); + // Prepare and return a local target. return { 'source': channelHost, @@ -248,6 +250,11 @@ requestAnalyzer._findLocalTarget = function (resourceMappings, basePath, channel }; }; +requestAnalyzer._redirectTargetFile = function (targetPath) { + return RedirectMap[targetPath] || targetPath; +}; + + requestAnalyzer._getPathOfBundle = function (initiator, channelHost, channelPath, targetPath, bundle) { let filename = channelPath.split('/').pop(); diff --git a/pages/updates/updates.html b/pages/updates/updates.html index 375523f1..4252839b 100644 --- a/pages/updates/updates.html +++ b/pages/updates/updates.html @@ -25,9 +25,9 @@
Improved