Fixed some errors detecting, parsing, and transforming urls in resolve_css_imports
This commit is contained in:
parent
550e4cc83f
commit
a2bf7e3345
1 changed files with 7 additions and 7 deletions
14
src/utils.rs
14
src/utils.rs
|
@ -91,16 +91,16 @@ pub fn resolve_css_imports(
|
||||||
opt_insecure: bool,
|
opt_insecure: bool,
|
||||||
) -> Result<String, String> {
|
) -> Result<String, String> {
|
||||||
let mut resolved_css = String::from(css_string);
|
let mut resolved_css = String::from(css_string);
|
||||||
let re =
|
let re = Regex::new(r###"url\("?([^"]+)"?\)"###).unwrap();
|
||||||
Regex::new(r###"url\((?:(?:https?|ftp)://)?"?[\w/\-?=%.]+\.[\w/\-?=%.]+"?\)"###).unwrap();
|
|
||||||
|
|
||||||
for link in re.captures_iter(&css_string) {
|
for link in re.captures_iter(&css_string) {
|
||||||
let target_link = if link[0].chars().nth(4) == Some('"') {
|
let target_link = dbg!(link.get(1).unwrap().as_str());
|
||||||
&link[0][5..link[0].len() - 2]
|
|
||||||
} else {
|
// Generate absolute URL for content
|
||||||
&link[0][4..link[0].len() - 1]
|
let embedded_url = match resolve_url(href, target_link) {
|
||||||
|
Ok(url) => url,
|
||||||
|
Err(_) => continue, // Malformed URL
|
||||||
};
|
};
|
||||||
let embedded_url = String::from([href, "/../", &target_link.to_string()].concat());
|
|
||||||
|
|
||||||
let (css_dataurl, _) = retrieve_asset(
|
let (css_dataurl, _) = retrieve_asset(
|
||||||
&embedded_url,
|
&embedded_url,
|
||||||
|
|
Loading…
Add table
Reference in a new issue