diff --git a/src/tests/mod.rs b/src/tests/mod.rs index 1a009b2..ee5d63a 100644 --- a/src/tests/mod.rs +++ b/src/tests/mod.rs @@ -93,6 +93,19 @@ fn test_no_whitespace_minification() { eval(b"
1 2
", b" 1 2
");
eval(b" 1 \n
2
", b" 1 \n
2
");
eval(b" 1 \n
2
1 \n
2
fn main() {
+ println!("Hello, world!");
+ loop {
+ println!("Hello, world!");
+ }
+}
+
"#, br#"fn main() {
+ println!("Hello, world!");
+ loop {
+ println!("Hello, world!");
+ }
+}
+
"#);
}
#[test]
diff --git a/src/unit/content.rs b/src/unit/content.rs
index af1824c..9b1c0a8 100644
--- a/src/unit/content.rs
+++ b/src/unit/content.rs
@@ -134,7 +134,7 @@ pub fn process_content(proc: &mut Processor, cfg: &Cfg, ns: Namespace, parent: O
});
};
- let new_closing_tag = process_tag(proc, cfg, ns, parent, ns == Namespace::Html && parent.filter(|p| &proc[*p] == b"pre").is_some(), prev_sibling_closing_tag, tag_name)?;
+ let new_closing_tag = process_tag(proc, cfg, ns, parent, descendant_of_pre || ns == Namespace::Html && parent.filter(|p| &proc[*p] == b"pre").is_some(), prev_sibling_closing_tag, tag_name)?;
prev_sibling_closing_tag.replace(new_closing_tag);
}
ContentType::End => {