ChangeSet ID: 21171 CVSROOT: /opt/cvs-commit Module name: wine Changes by: julliard@winehq.org 2005/11/08 10:10:13
Modified files: dlls/msxml3/tests: domdoc.c dlls/msxml3 : node.c
Log message: Huw Davies huw@codeweavers.com Implement selectSingleNode.
Patch: http://cvs.winehq.org/patch.py?id=21171
Old revision New revision Changes Path 1.7 1.8 +7 -0 wine/dlls/msxml3/tests/domdoc.c 1.13 1.14 +13 -2 wine/dlls/msxml3/node.c
Index: wine/dlls/msxml3/tests/domdoc.c diff -u -p wine/dlls/msxml3/tests/domdoc.c:1.7 wine/dlls/msxml3/tests/domdoc.c:1.8 --- wine/dlls/msxml3/tests/domdoc.c:1.7 8 Nov 2005 16:10:13 -0000 +++ wine/dlls/msxml3/tests/domdoc.c 8 Nov 2005 16:10:13 -0000 @@ -447,6 +447,13 @@ void test_domnode( void ) else ok( FALSE, "no element\n");
+ r = IXMLDOMNode_selectSingleNode( element, (BSTR)szdl, &node ); + ok( r == S_FALSE, "ret %08lx\n", r ); + r = IXMLDOMNode_selectSingleNode( element, (BSTR)szbs, &node ); + ok( r == S_OK, "ret %08lx\n", r ); + r = IXMLDOMNode_Release( node ); + ok( r == 0, "ret %08lx\n", r ); + if (list) { r = IXMLDOMNodeList_get_length( list, &count ); Index: wine/dlls/msxml3/node.c diff -u -p wine/dlls/msxml3/node.c:1.13 wine/dlls/msxml3/node.c:1.14 --- wine/dlls/msxml3/node.c:1.13 8 Nov 2005 16:10:13 -0000 +++ wine/dlls/msxml3/node.c 8 Nov 2005 16:10:13 -0000 @@ -586,8 +586,19 @@ static HRESULT WINAPI xmlnode_selectSing BSTR queryString, IXMLDOMNode** resultNode) { - FIXME("\n"); - return E_NOTIMPL; + xmlnode *This = impl_from_IXMLDOMNode( iface ); + IXMLDOMNodeList *list; + HRESULT r; + + TRACE("%p %s %p\n", This, debugstr_w(queryString), resultNode ); + + r = IXMLDOMNode_selectNodes(iface, queryString, &list); + if(SUCCEEDED(r)) + { + r = IXMLDOMNodeList_nextNode(list, resultNode); + IXMLDOMNodeList_Release(list); + } + return r; }
static HRESULT WINAPI xmlnode_get_parsed(