[PATCH 3/5] xmllite/reader: Reset node type to XmlNodeType_None on EOF

Nikolay Sivov nsivov at codeweavers.com
Mon Mar 6 03:35:57 CST 2017


Signed-off-by: Nikolay Sivov <nsivov at codeweavers.com>
---
 dlls/xmllite/reader.c       | 3 +++
 dlls/xmllite/tests/reader.c | 4 +---
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/dlls/xmllite/reader.c b/dlls/xmllite/reader.c
index 43dae30384..ae5d9eaef8 100644
--- a/dlls/xmllite/reader.c
+++ b/dlls/xmllite/reader.c
@@ -2552,7 +2552,10 @@ static HRESULT reader_parse_nextnode(xmlreader *reader)
             if (FAILED(hr)) return hr;
 
             if (hr == S_FALSE)
+            {
                 reader->instate = XmlReadInState_Eof;
+                reader->nodetype = XmlNodeType_None;
+            }
             return hr;
         case XmlReadInState_Eof:
             return S_FALSE;
diff --git a/dlls/xmllite/tests/reader.c b/dlls/xmllite/tests/reader.c
index 4685bec443..f41375a507 100644
--- a/dlls/xmllite/tests/reader.c
+++ b/dlls/xmllite/tests/reader.c
@@ -904,8 +904,7 @@ todo_wine
     hr = IXmlReader_Read(reader, &type);
 todo_wine
     ok(hr == WC_E_SYNTAX || hr == WC_E_XMLCHARACTER /* XP */, "expected WC_E_SYNTAX, got %08x\n", hr);
-todo_wine
-    ok(type == XmlNodeType_None, "expected None, got %s\n", type_to_str(type));
+    ok(type == XmlNodeType_None, "expected XmlNodeType_None, got %s\n", type_to_str(type));
     ok_pos(reader, 1, 41, -1, -1, TRUE);
     test_read_state(reader, XmlReadState_Error, -1, TRUE);
 
@@ -2065,7 +2064,6 @@ static void test_namespaceuri(void)
 
             j++;
         }
-    todo_wine
         ok(type == XmlNodeType_None, "Unexpected node type %d\n", type);
 
         IStream_Release(stream);
-- 
2.11.0




More information about the wine-patches mailing list