Jacek Caban : msxml3: Return NULL instead of empty string in IXMLElement:: get_tagName.

Alexandre Julliard julliard at winehq.org
Mon Nov 18 14:51:39 CST 2013


Module: wine
Branch: master
Commit: fe0f945769ca3e6204baa8089bdb205c75aa02ad
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=fe0f945769ca3e6204baa8089bdb205c75aa02ad

Author: Jacek Caban <jacek at codeweavers.com>
Date:   Sat Nov 16 16:06:51 2013 +0100

msxml3: Return NULL instead of empty string in IXMLElement::get_tagName.

---

 dlls/msxml3/tests/xmldoc.c |    2 +-
 dlls/msxml3/xmlelem.c      |    8 ++++++--
 2 files changed, 7 insertions(+), 3 deletions(-)

diff --git a/dlls/msxml3/tests/xmldoc.c b/dlls/msxml3/tests/xmldoc.c
index 7bf5062..701b1bb 100644
--- a/dlls/msxml3/tests/xmldoc.c
+++ b/dlls/msxml3/tests/xmldoc.c
@@ -893,7 +893,7 @@ static void test_xmlelem(void)
 
     hr = IXMLElement_get_tagName(element, &str);
     EXPECT_HR(hr, S_OK);
-    ok(lstrlenW(str) == 0, "Expected empty tag name\n");
+    ok(!str, "Expected empty tag name, got %s\n", wine_dbgstr_w(str));
     SysFreeString(str);
 
     parent = (IXMLElement *)0xdeadbeef;
diff --git a/dlls/msxml3/xmlelem.c b/dlls/msxml3/xmlelem.c
index 679e159..a932397 100644
--- a/dlls/msxml3/xmlelem.c
+++ b/dlls/msxml3/xmlelem.c
@@ -189,8 +189,12 @@ static HRESULT WINAPI xmlelem_get_tagName(IXMLElement *iface, BSTR *p)
     if (!p)
         return E_INVALIDARG;
 
-    *p = bstr_from_xmlChar(This->node->name);
-    CharUpperBuffW(*p, SysStringLen(*p));
+    if (*This->node->name) {
+        *p = bstr_from_xmlChar(This->node->name);
+        CharUpperBuffW(*p, SysStringLen(*p));
+    }else {
+        *p = NULL;
+    }
 
     TRACE("returning %s\n", debugstr_w(*p));
 




More information about the wine-cvs mailing list