diff --git a/.changes/css-inliner-octal.md b/.changes/css-inliner-octal.md new file mode 100644 index 000000000..69971bcea --- /dev/null +++ b/.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. diff --git a/tauri/src/endpoints/asset.rs b/tauri/src/endpoints/asset.rs index 8c8e4940d..b1d54f32f 100644 --- a/tauri/src/endpoints/asset.rs +++ b/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);