Simplify conversions that go from a QStringRef to a WebCore::String to not use a...
authorlars <lars@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 27 Jul 2007 13:58:12 +0000 (13:58 +0000)
committerlars <lars@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 27 Jul 2007 13:58:12 +0000 (13:58 +0000)
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24732 268f45cc-cd09-0410-ab3c-d52691b4dbfc

WebCore/ChangeLog
WebCore/dom/XMLTokenizer.cpp

index ef047cfcf39a933154530c68611528359e70cfcb..47128e2789b5408ce17851647e9653faaa1794d6 100644 (file)
@@ -1,3 +1,12 @@
+2007-07-27  Lars Knoll  <lars@trolltech.com>
+
+        Reviewed by Zack and Lars.
+
+        Simplify conversions that go from a QStringRef to a WebCore::String to not use a temporary QString.
+
+        * dom/XMLTokenizer.cpp:
+        (WebCore::):
+
 2007-07-27  Zack Rusin  <zack@kde.org>
 
         Reviewed by Zack and Lars.
index 381c8f7aa5d511a71b4cb47ac1ee4608d1b825fc..d4aa151243b0d76ff5678fc3e804b8909d41c580 100644 (file)
@@ -1553,10 +1553,10 @@ static void attributesStartElementNsHandler(AttributeParseState* state, const QX
 
     for(int i = 0; i < attrs.count(); i++) {
         const QXmlStreamAttribute& attr = attrs[i];
-        String attrLocalName = attr.name().toString();
-        String attrValue     = attr.value().toString();
-        String attrURI       = attr.namespaceUri().toString();
-        String attrQName     = attr.qualifiedName().toString();
+        String attrLocalName = attr.name();
+        String attrValue     = attr.value();
+        String attrURI       = attr.namespaceUri();
+        String attrQName     = attr.qualifiedName();
         state->attributes.set(attrQName, attrValue);
     }
 }
@@ -1602,15 +1602,14 @@ static inline String prefixFromQName(const QString& qName)
     else
         return qName.left(offset);
 }
+
 static inline void handleElementNamespaces(Element* newElement, const QXmlStreamNamespaceDeclarations &ns,
                                            ExceptionCode& ec)
 {
     for (int i = 0; i < ns.count(); ++i) {
         const QXmlStreamNamespaceDeclaration &decl = ns[i];
-        String namespaceQName = "xmlns";
-        String namespaceURI = decl.namespaceUri().toString();
-        if (!decl.prefix().isEmpty())
-            namespaceQName = QLatin1String("xmlns:") + decl.prefix().toString();
+        String namespaceURI = decl.namespaceUri();
+        String namespaceQName = decl.prefix().isEmpty() ? String("xmlns") : String("xmlns:") + decl.prefix();
         newElement->setAttributeNS("http://www.w3.org/2000/xmlns/", namespaceQName, namespaceURI, ec);
         if (ec) // exception setting attributes
             return;
@@ -1621,10 +1620,10 @@ static inline void handleElementAttributes(Element* newElement, const QXmlStream
 {
     for (int i = 0; i < attrs.count(); ++i) {
         const QXmlStreamAttribute &attr = attrs[i];
-        String attrLocalName = attr.name().toString();
-        String attrValue     = attr.value().toString();
-        String attrURI       = attr.namespaceUri().isEmpty() ? String() : String(attr.namespaceUri().toString());
-        String attrQName     = attr.qualifiedName().toString();
+        String attrLocalName = attr.name();
+        String attrValue     = attr.value();
+        String attrURI       = attr.namespaceUri().isEmpty() ? String() : String(attr.namespaceUri());
+        String attrQName     = attr.qualifiedName();
         newElement->setAttributeNS(attrURI, attrQName, attrValue, ec);
         if (ec) // exception setting attributes
             return;
@@ -1717,8 +1716,8 @@ void XMLTokenizer::parseStartElement()
 
     exitText();
 
-    String localName = m_stream.name().toString();
-    String uri       = m_stream.namespaceUri().toString();
+    String localName = m_stream.name();
+    String uri       = m_stream.namespaceUri();
     String prefix    = prefixFromQName(m_stream.qualifiedName().toString());
 
     if (m_parsingFragment && uri.isNull()) {
@@ -1729,7 +1728,6 @@ void XMLTokenizer::parseStartElement()
     }
 
     ExceptionCode ec = 0;
-    qDebug() << prefix << prefix.isNull() << localName << localName.isNull() << uri;
     QualifiedName qName(prefix, localName, uri);
     RefPtr<Element> newElement = m_doc->createElement(qName, true, ec);
     if (!newElement) {
@@ -1829,7 +1827,7 @@ void XMLTokenizer::parseCharacters()
 {
     if (m_currentNode->isTextNode() || enterText()) {
         ExceptionCode ec = 0;
-        static_cast<Text*>(m_currentNode)->appendData(m_stream.text().toString(), ec);
+        static_cast<Text*>(m_currentNode)->appendData(m_stream.text(), ec);
     }
 }
 
@@ -1840,8 +1838,8 @@ void XMLTokenizer::parseProcessingInstruction()
     // ### handle exceptions
     int exception = 0;
     RefPtr<ProcessingInstruction> pi = m_doc->createProcessingInstruction(
-        m_stream.processingInstructionTarget().toString(),
-        m_stream.processingInstructionData().toString(), exception);
+        m_stream.processingInstructionTarget(),
+        m_stream.processingInstructionData(), exception);
     if (exception)
         return;
 
@@ -1862,7 +1860,7 @@ void XMLTokenizer::parseCdata()
 {
     exitText();
 
-    RefPtr<Node> newNode = new CDATASection(m_doc, m_stream.text().toString());
+    RefPtr<Node> newNode = new CDATASection(m_doc, m_stream.text());
     if (!m_currentNode->addChild(newNode.get()))
         return;
     if (m_view && !newNode->attached())
@@ -1873,7 +1871,7 @@ void XMLTokenizer::parseComment()
 {
     exitText();
 
-    RefPtr<Node> newNode = new Comment(m_doc, m_stream.text().toString());
+    RefPtr<Node> newNode = new Comment(m_doc, m_stream.text());
     m_currentNode->addChild(newNode.get());
     if (m_view && !newNode->attached())
         newNode->attach();