From af61307c9f2602c1cd6dc09d39345cd8d0ec6528 Mon Sep 17 00:00:00 2001 From: Joscha Date: Wed, 27 Nov 2024 17:40:29 +0100 Subject: [PATCH] Fix element capitalization normalization --- src/element.rs | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/element.rs b/src/element.rs index 39c7158..997db89 100644 --- a/src/element.rs +++ b/src/element.rs @@ -66,7 +66,7 @@ pub struct Element { impl Element { pub fn new(name: impl ToString, kind: ElementKind) -> Self { let mut name = name.to_string(); - if kind == ElementKind::Foreign { + if kind != ElementKind::Foreign { name = name.to_ascii_lowercase() } @@ -106,7 +106,7 @@ pub struct Attr { impl Attr { pub fn new(name: impl ToString, value: impl ToString) -> Self { Self { - name: name.to_string().to_ascii_lowercase(), + name: name.to_string(), value: value.to_string(), } } @@ -129,7 +129,10 @@ impl Attr { } impl ElementComponent for Attr { - fn add_to_element(self, element: &mut Element) { + fn add_to_element(mut self, element: &mut Element) { + if element.kind != ElementKind::Foreign { + self.name = self.name.to_ascii_lowercase(); + } element.attributes.insert(self.name, self.value); } }