diff --git a/src/html.rs b/src/html.rs index df197e4..d34f599 100644 --- a/src/html.rs +++ b/src/html.rs @@ -299,7 +299,14 @@ pub fn walk_and_embed_assets( "iframe" => { for attr in attrs_mut.iter_mut() { if &attr.name.local == "src" { - let src_full_url: String = resolve_url(&url, &attr.value.to_string()) + let value = attr.value.to_string(); + // Ignore iframes with empty source (they cause infinite loops) + if value == EMPTY_STRING.clone() { + continue; + } + + + let src_full_url: String = resolve_url(&url, &value) .unwrap_or(EMPTY_STRING.clone()); let iframe_data = retrieve_asset( &src_full_url,