Kaynağa Gözat

fix(tauri/asset): escape octal sequences in css (#1166)

* fix(tauri/asset): escape octal sequences in css

* chore(package): add .changes file
Noah Klayman 4 yıl önce
ebeveyn
işleme
4491c70790
2 değiştirilmiş dosya ile 7 ekleme ve 1 silme
  1. 5 0
      .changes/css-inliner-octal.md
  2. 2 1
      tauri/src/endpoints/asset.rs

+ 5 - 0
.changes/css-inliner-octal.md

@@ -0,0 +1,5 @@
+---
+"tauri": patch
+---
+
+Replace `\` with `\\` in css assets that are lazy loaded. Since these are injected in a template literal, backslashes must be escaped. Backslashes are sometimes used for octal sequences in CSS.

+ 2 - 1
tauri/src/endpoints/asset.rs

@@ -76,7 +76,8 @@ pub fn load(
                   document.getElementsByTagName("head")[0].appendChild(css);
                 }})(`{css}`)
               "#,
-              css = asset_str
+              // Escape octal sequences, which aren't allowed in template literals
+              css = asset_str.replace("\\", "\\\\").as_str()
             ));
           } else {
             webview_ref.eval(asset_str);