[PATCH 7/9] Implement IXMLDocument::get_version()
Nikolay Sivov
bunglehead at gmail.com
Sun Jan 10 12:08:21 CST 2010
---
dlls/msxml3/tests/xmldoc.c | 10 ++++++++++
dlls/msxml3/xmldoc.c | 10 ++++++++--
2 files changed, 18 insertions(+), 2 deletions(-)
diff --git a/dlls/msxml3/tests/xmldoc.c b/dlls/msxml3/tests/xmldoc.c
index d2d99fc..8a9ae78 100644
--- a/dlls/msxml3/tests/xmldoc.c
+++ b/dlls/msxml3/tests/xmldoc.c
@@ -70,6 +70,7 @@ static void test_xmldoc(void)
static const WCHAR szNumVal[] = {'1','2','3','4',0};
static const WCHAR szName[] = {'N','A','M','E',0};
static const WCHAR szNameVal[] = {'C','a','p','t','a','i','n',' ','A','h','a','b',0};
+ static const WCHAR szVersion[] = {'1','.','0',0};
hr = CoCreateInstance(&CLSID_XMLDocument, NULL, CLSCTX_INPROC_SERVER,
&IID_IXMLDocument, (LPVOID*)&doc);
@@ -115,6 +116,15 @@ static void test_xmldoc(void)
ok(stream != NULL, "Expected non-NULL stream\n");
+ /* version field */
+ hr = IXMLDocument_get_version(doc, NULL);
+ ok(hr == E_INVALIDARG, "Expected E_INVALIDARG, got %08x\n", hr);
+
+ hr = IXMLDocument_get_version(doc, &name);
+ ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
+ ok(!lstrcmpW(name, szVersion), "Expected 1.0, got %s\n", wine_dbgstr_w(name));
+ SysFreeString(name);
+
hr = IXMLDocument_get_root(doc, &element);
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
ok(element != NULL, "Expected non-NULL element\n");
diff --git a/dlls/msxml3/xmldoc.c b/dlls/msxml3/xmldoc.c
index 1a8c894..227afc2 100644
--- a/dlls/msxml3/xmldoc.c
+++ b/dlls/msxml3/xmldoc.c
@@ -439,8 +439,14 @@ static HRESULT WINAPI xmldoc_put_charset(IXMLDocument *iface, BSTR p)
static HRESULT WINAPI xmldoc_get_version(IXMLDocument *iface, BSTR *p)
{
- FIXME("(%p, %p): stub\n", iface, p);
- return E_NOTIMPL;
+ xmldoc *This = impl_from_IXMLDocument(iface);
+
+ TRACE("(%p, %p)\n", This, p);
+
+ if (!p) return E_INVALIDARG;
+ *p = bstr_from_xmlChar(This->xmldoc->version);
+
+ return S_OK;
}
static HRESULT WINAPI xmldoc_get_doctype(IXMLDocument *iface, BSTR *p)
--
1.5.6.5
--=-6tX+sNeZf4MKNWxaCxKX--
More information about the wine-patches
mailing list