diff --git a/dlls/msxml3/tests/xmlparser.c b/dlls/msxml3/tests/xmlparser.c index 51f2a271b84..32514e3e0e9 100644 --- a/dlls/msxml3/tests/xmlparser.c +++ b/dlls/msxml3/tests/xmlparser.c @@ -144,6 +144,9 @@ static void create_test(void) hr = IXMLParser_SetFlags(parser, 0); ok(hr == S_OK, "Expected S_OK got 0x%08x\n", hr); + hr = IXMLParser_GetParserState(parser); + ok(hr == XMLPARSER_IDLE, "got 0x%08x\n", hr); + IXMLParser_Release(parser); } diff --git a/dlls/msxml3/xmlparser.c b/dlls/msxml3/xmlparser.c index ca40b22e0e0..6fcdb82c56b 100644 --- a/dlls/msxml3/xmlparser.c +++ b/dlls/msxml3/xmlparser.c @@ -51,6 +51,7 @@ typedef struct _xmlparser LONG ref; int flags; + XML_PARSER_STATE state; } xmlparser; static inline xmlparser *impl_from_IXMLParser( IXMLParser *iface ) @@ -345,9 +346,9 @@ static HRESULT WINAPI xmlparser_GetParserState(IXMLParser *iface) { xmlparser *This = impl_from_IXMLParser( iface ); - FIXME("(%p)\n", This); + TRACE("(%p)\n", This); - return E_NOTIMPL; + return This->state; } static HRESULT WINAPI xmlparser_Suspend(IXMLParser *iface) @@ -447,6 +448,7 @@ HRESULT XMLParser_create(void **ppObj) This->nodefactory = NULL; This->input = NULL; This->flags = 0; + This->state = XMLPARSER_IDLE; This->ref = 1; *ppObj = &This->IXMLParser_iface;