From f9d89ed36a88c047ccd32d9a6a8c031349a46f4f Mon Sep 17 00:00:00 2001 From: Alistair Leslie-Hughes Date: Thu, 28 Feb 2008 21:06:54 +1100 Subject: [PATCH] msxml3: Implement IXMLDOMComment_get_data. --- dlls/msxml3/comment.c | 16 ++++++++++++++-- dlls/msxml3/tests/domdoc.c | 6 ++++++ 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/dlls/msxml3/comment.c b/dlls/msxml3/comment.c index 8c86f4bd5f0..203faae5824 100644 --- a/dlls/msxml3/comment.c +++ b/dlls/msxml3/comment.c @@ -474,8 +474,20 @@ static HRESULT WINAPI domcomment_get_data( IXMLDOMComment *iface, BSTR *p) { - FIXME("\n"); - return E_NOTIMPL; + domcomment *This = impl_from_IXMLDOMComment( iface ); + HRESULT hr = E_FAIL; + VARIANT vRet; + + if(!p) + return E_INVALIDARG; + + hr = IXMLDOMNode_get_nodeValue( This->node, &vRet ); + if(hr == S_OK) + { + *p = V_BSTR(&vRet); + } + + return hr; } static HRESULT WINAPI domcomment_put_data( diff --git a/dlls/msxml3/tests/domdoc.c b/dlls/msxml3/tests/domdoc.c index 0930e11e7ae..2ced1cc2673 100644 --- a/dlls/msxml3/tests/domdoc.c +++ b/dlls/msxml3/tests/domdoc.c @@ -2105,6 +2105,12 @@ static void test_xmlTypes(void) ok(hr == S_OK, "ret %08x\n", hr ); /* get data Tests */ + hr = IXMLDOMComment_get_data(pComment, &str); + ok(hr == S_OK, "ret %08x\n", hr ); + ok( !lstrcmpW( str, _bstr_("This &is a ; test <>\\") ), "incorrect get_data string\n"); + SysFreeString(str); + + /* get data Tests */ hr = IXMLDOMComment_get_nodeValue(pComment, &v); ok(hr == S_OK, "ret %08x\n", hr ); ok( V_VT(&v) == VT_BSTR, "incorrect dataType type\n"); -- 2.11.4.GIT