diff --git a/packages/mrml-core/src/mj_font/parse.rs b/packages/mrml-core/src/mj_font/parse.rs index e6642880..29ee15a4 100644 --- a/packages/mrml-core/src/mj_font/parse.rs +++ b/packages/mrml-core/src/mj_font/parse.rs @@ -38,7 +38,7 @@ fn parse(cursor: &mut MrmlCursor<'_>) -> Result { let attributes = parse_attributes(cursor)?; let ending = cursor.assert_element_end()?; if !ending.empty { - return Err(Error::InvalidFormat(ending.span.into())); + cursor.assert_element_close()?; } Ok(MjFont { attributes }) diff --git a/packages/mrml-core/tests/issue-119.rs b/packages/mrml-core/tests/issue-119.rs new file mode 100644 index 00000000..373ff84c --- /dev/null +++ b/packages/mrml-core/tests/issue-119.rs @@ -0,0 +1,30 @@ +#![cfg(feature = "parse")] + +#[test] +fn should_parse_mjfont() { + let template = r#" + + + + + + +
Hello World
+
+
"#; + let _ = mrml::parse(template).unwrap(); +} + +#[test] +fn should_parse_mjimage() { + let template = r#" + +
Hello World
+ + + + +
+
"#; + let _ = mrml::parse(template).unwrap(); +}