aboutsummaryrefslogtreecommitdiffstats
path: root/src/components/script/dom/element.rs
diff options
context:
space:
mode:
authorMatt Brubeck <mbrubeck@limpet.net>2014-08-25 16:11:12 -0700
committerMatt Brubeck <mbrubeck@limpet.net>2014-08-28 15:25:04 -0700
commite01569834c45337487ebb30a9c77bc2e67743a5f (patch)
tree122cbbf67ac8401607919d5190d644cf5a6b0302 /src/components/script/dom/element.rs
parent9060772af99bcdf7b7a1fe2b1d7bedfcbf65ad4d (diff)
downloadservo-e01569834c45337487ebb30a9c77bc2e67743a5f.tar.gz
servo-e01569834c45337487ebb30a9c77bc2e67743a5f.zip
Uppercase element.tagName for HTML elements only
Fixes #3146
Diffstat (limited to 'src/components/script/dom/element.rs')
-rw-r--r--src/components/script/dom/element.rs16
1 files changed, 8 insertions, 8 deletions
diff --git a/src/components/script/dom/element.rs b/src/components/script/dom/element.rs
index 37889c861f1..203b0099116 100644
--- a/src/components/script/dom/element.rs
+++ b/src/components/script/dom/element.rs
@@ -491,14 +491,14 @@ impl<'a> ElementMethods for JSRef<'a, Element> {
// http://dom.spec.whatwg.org/#dom-element-tagname
fn TagName(&self) -> DOMString {
- match self.prefix {
- None => {
- self.local_name.as_slice().to_ascii_upper()
- }
- Some(ref prefix_str) => {
- let s = format!("{}:{}", prefix_str, self.local_name);
- s.as_slice().to_ascii_upper()
- }
+ let qualified_name = match self.prefix {
+ Some(ref prefix) => format!("{}:{}", prefix, self.local_name).into_maybe_owned(),
+ None => self.local_name.as_slice().into_maybe_owned()
+ };
+ if self.html_element_in_html_document() {
+ qualified_name.as_slice().to_ascii_upper()
+ } else {
+ qualified_name.into_string()
}
}