[PATCH v2 1/3] xmllite: Qualified and Local names match for xml declaration.

Jeff Smith whydoubt at gmail.com
Mon Oct 28 00:04:57 CDT 2019


Signed-off-by: Jeff Smith <whydoubt at gmail.com>
---
 dlls/xmllite/reader.c       | 5 ++++-
 dlls/xmllite/tests/reader.c | 3 ++-
 2 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/dlls/xmllite/reader.c b/dlls/xmllite/reader.c
index e813ca37fe..02097d0789 100644
--- a/dlls/xmllite/reader.c
+++ b/dlls/xmllite/reader.c
@@ -1415,7 +1415,6 @@ static HRESULT reader_parse_xmldecl(xmlreader *reader)
     reader->nodetype = XmlNodeType_XmlDeclaration;
     reader->empty_element.position = position;
     reader_set_strvalue(reader, StringValue_LocalName, &strval_xml);
-    reader_set_strvalue(reader, StringValue_QualifiedName, &strval_xml);
 
     return S_OK;
 }
@@ -3184,6 +3183,10 @@ static HRESULT WINAPI xmlreader_GetQualifiedName(IXmlReader* iface, LPCWSTR *nam
             *len = attribute->localname.len;
         }
         break;
+    case XmlNodeType_XmlDeclaration:
+        *name = This->strvalues[StringValue_LocalName].str;
+        *len = This->strvalues[StringValue_LocalName].len;
+        break;
     default:
         *name = This->strvalues[StringValue_QualifiedName].str;
         *len = This->strvalues[StringValue_QualifiedName].len;
diff --git a/dlls/xmllite/tests/reader.c b/dlls/xmllite/tests/reader.c
index 41adad1598..64ae6191a6 100644
--- a/dlls/xmllite/tests/reader.c
+++ b/dlls/xmllite/tests/reader.c
@@ -2537,7 +2537,8 @@ static void test_string_pointers(void)
     ok(empty == reader_value(reader, ""), "empty != value\n");
     ok(empty == reader_prefix(reader, ""), "empty != prefix\n");
     xml = reader_name(reader, "xml");
-    ptr = reader_qname(reader, "xml"); todo_wine ok(xml == ptr, "xml != qname\n");
+    ptr = reader_qname(reader, "xml");
+    ok(xml == ptr, "xml != qname\n");
     ok(empty == reader_namespace(reader, ""), "empty != namespace\n");
 
     next_attribute(reader);
-- 
2.21.0




More information about the wine-devel mailing list