[PATCH] Implement IXMLDOMText get_data
Alistair Leslie-Hughes
leslie_alistair at hotmail.com
Thu Feb 28 04:36:02 CST 2008
---
dlls/msxml3/tests/domdoc.c | 6 ++++++
dlls/msxml3/text.c | 16 ++++++++++++++--
2 files changed, 20 insertions(+), 2 deletions(-)
diff --git a/dlls/msxml3/tests/domdoc.c b/dlls/msxml3/tests/domdoc.c
index ce694d1..cac6430 100644
--- a/dlls/msxml3/tests/domdoc.c
+++ b/dlls/msxml3/tests/domdoc.c
@@ -573,6 +573,12 @@ static void test_domdoc( void )
/* put data Tests */
r = IXMLDOMText_put_data(nodetext, _bstr_("This &is a ; test <>\\"));
ok(r == S_OK, "ret %08x\n", r );
+
+ /* get data Tests */
+ r = IXMLDOMText_get_data(nodetext, &str);
+ ok(r == S_OK, "ret %08x\n", r );
+ ok( !lstrcmpW( str, _bstr_("This &is a ; test <>\\") ), "incorrect put_data string\n");
+ SysFreeString(str);
/* Confirm XML text is good */
r = IXMLDOMText_get_xml(nodetext, &str);
diff --git a/dlls/msxml3/text.c b/dlls/msxml3/text.c
index d3a1542..af91449 100644
--- a/dlls/msxml3/text.c
+++ b/dlls/msxml3/text.c
@@ -475,8 +475,20 @@ static HRESULT WINAPI domtext_get_data(
IXMLDOMText *iface,
BSTR *p)
{
- FIXME("\n");
- return E_NOTIMPL;
+ domtext *This = impl_from_IXMLDOMText( 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 domtext_put_data(
--
1.5.4.1
--------------060805070903010904020804--
More information about the wine-patches
mailing list