Răsfoiți Sursa

fixed regression when testing relative URLs

Gildas 7 ani în urmă
părinte
comite
44afc66329
1 a modificat fișierele cu 3 adăugiri și 2 ștergeri
  1. 3 2
      lib/single-file/single-file-core.js

+ 3 - 2
lib/single-file/single-file-core.js

@@ -832,8 +832,9 @@ this.SingleFileCore = this.SingleFileCore || (() => {
 	// -------
 	const DATA_URI_PREFIX = "data:";
 	const BLOB_URI_PREFIX = "blob:";
+	const HTTP_URI_PREFIX = /^https?:\/\//;
 	const ABOUT_BLANK_URI = "about:blank";
-	const NOT_EMPTY_URL = /https?:\/\/.+/;
+	const NOT_EMPTY_URL = /^https?:\/\/.+/;
 	const REGEXP_URL_FN = /(url\s*\(\s*'(.*?)'\s*\))|(url\s*\(\s*"(.*?)"\s*\))|(url\s*\(\s*(.*?)\s*\))/gi;
 	const REGEXP_URL_SIMPLE_QUOTES_FN = /^url\s*\(\s*'(.*?)'\s*\)$/i;
 	const REGEXP_URL_DOUBLE_QUOTES_FN = /^url\s*\(\s*"(.*?)"\s*\)$/i;
@@ -871,7 +872,7 @@ this.SingleFileCore = this.SingleFileCore || (() => {
 		}
 
 		static testValidPath(resourceURL) {
-			return !resourceURL.startsWith(DATA_URI_PREFIX) && !resourceURL.startsWith(BLOB_URI_PREFIX) && resourceURL != ABOUT_BLANK_URI && resourceURL.match(NOT_EMPTY_URL);
+			return !resourceURL.startsWith(DATA_URI_PREFIX) && !resourceURL.startsWith(BLOB_URI_PREFIX) && resourceURL != ABOUT_BLANK_URI && (!resourceURL.match(HTTP_URI_PREFIX) || resourceURL.match(NOT_EMPTY_URL));
 		}
 
 		static matchImport(stylesheetContent) {