Module: wine Branch: master Commit: 56da338e5c00e5717a6d62bd523aad4cf94a284e URL: http://source.winehq.org/git/wine.git/?a=commit;h=56da338e5c00e5717a6d62bd52...
Author: Alistair Leslie-Hughes leslie_alistair@hotmail.com Date: Sat Mar 1 22:54:33 2008 +1100
msxml3: Implmented IXMLDOMCDATASection_get_data.
---
dlls/msxml3/cdata.c | 16 ++++++++++++++-- dlls/msxml3/tests/domdoc.c | 8 +++++++- 2 files changed, 21 insertions(+), 3 deletions(-)
diff --git a/dlls/msxml3/cdata.c b/dlls/msxml3/cdata.c index ce25bd8..21c8433 100644 --- a/dlls/msxml3/cdata.c +++ b/dlls/msxml3/cdata.c @@ -475,8 +475,20 @@ static HRESULT WINAPI domcdata_get_data( IXMLDOMCDATASection *iface, BSTR *p) { - FIXME("\n"); - return E_NOTIMPL; + domcdata *This = impl_from_IXMLDOMCDATASection( iface ); + HRESULT hr = E_FAIL; + VARIANT vRet; + + if(!p) + return E_INVALIDARG; + + hr = IXMLDOMNode_get_nodeValue( This->element, &vRet ); + if(hr == S_OK) + { + *p = V_BSTR(&vRet); + } + + return hr; }
static HRESULT WINAPI domcdata_put_data( diff --git a/dlls/msxml3/tests/domdoc.c b/dlls/msxml3/tests/domdoc.c index 0b9ab20..5f601d6 100644 --- a/dlls/msxml3/tests/domdoc.c +++ b/dlls/msxml3/tests/domdoc.c @@ -2389,12 +2389,18 @@ static void test_xmlTypes(void) ok(hr == S_OK, "ret %08x\n", hr ); ok(len == 21, "expected 21 got %ld\n", len);
- /* test length property */ + /* test get nodeValue */ hr = IXMLDOMCDATASection_get_nodeValue(pComment, &var); ok(hr == S_OK, "ret %08x\n", hr ); ok( !lstrcmpW( str, _bstr_("This &is a ; test <>\") ), "incorrect text string\n"); VariantClear(&var);
+ /* test get data */ + hr = IXMLDOMCDATASection_get_data(pComment, &str); + ok(hr == S_OK, "ret %08x\n", hr ); + ok( !lstrcmpW( str, _bstr_("This &is a ; test <>\") ), "incorrect text string\n"); + SysFreeString(str); + IXMLDOMCDATASection_Release(pCDataSec); }