diff --git a/dlls/mshtml/htmldoc.c b/dlls/mshtml/htmldoc.c index a9db9202108..6992c93b5ac 100644 --- a/dlls/mshtml/htmldoc.c +++ b/dlls/mshtml/htmldoc.c @@ -1578,8 +1578,17 @@ static HRESULT WINAPI HTMLDocument_get_onerrorupdate(IHTMLDocument2 *iface, VARI static HRESULT WINAPI HTMLDocument_toString(IHTMLDocument2 *iface, BSTR *String) { HTMLDocument *This = impl_from_IHTMLDocument2(iface); - FIXME("(%p)->(%p)\n", This, String); - return E_NOTIMPL; + + static const WCHAR objectW[] = {'[','o','b','j','e','c','t',']',0}; + + TRACE("(%p)->(%p)\n", This, String); + + if(!String) + return E_INVALIDARG; + + *String = SysAllocString(objectW); + return *String ? S_OK : E_OUTOFMEMORY; + } static HRESULT WINAPI HTMLDocument_createStyleSheet(IHTMLDocument2 *iface, BSTR bstrHref, diff --git a/dlls/mshtml/tests/dom.c b/dlls/mshtml/tests/dom.c index cb1e7be588a..c16e0739f9b 100644 --- a/dlls/mshtml/tests/dom.c +++ b/dlls/mshtml/tests/dom.c @@ -5243,10 +5243,17 @@ static void test_doc_elem(IHTMLDocument2 *doc) IHTMLElement *elem; IHTMLDocument3 *doc3; HRESULT hres; + BSTR bstr; hres = IHTMLDocument2_QueryInterface(doc, &IID_IHTMLDocument3, (void**)&doc3); ok(hres == S_OK, "QueryInterface(IID_IHTMLDocument3) failed: %08x\n", hres); + hres = IHTMLDocument2_toString(doc, &bstr); + ok(hres == S_OK, "toString failed: %08x\n", hres); + ok(!strcmp_wa(bstr, "[object]"), + "toString returned %s, expected [object]\n", wine_dbgstr_w(bstr)); + SysFreeString(bstr); + hres = IHTMLDocument3_get_documentElement(doc3, &elem); IHTMLDocument3_Release(doc3); ok(hres == S_OK, "get_documentElement failed: %08x\n", hres);