Hi Alistair, Alistair Leslie-Hughes wrote:
Hi,
Changelog: mshtml: Pass IID_IHTMLBodyElement to the IDispatchEx interface
Look at other elements implementation how to do it properly. Your patch will break scripts that use body element.
+static const tid_t HTMLBodyElement_iface_tids[] = { + IHTMLBodyElement_tid, + 0 +}; +
You should add IHTMLDOMNode_tid, IHTMLDOMNode2_tid, IHTMLElement_tid, IHTMLElement2_tid, here.
+static dispex_static_data_t HTMLBodyElement_dispex = { + NULL, + IHTMLBodyElement_tid,
You should use DispHTMLBodyElement here.
@@ -601,6 +613,7 @@ HTMLElement *HTMLBodyElement_Create(nsIDOMHTMLElement *nselem) HTMLTextContainer_Init(&ret->textcont);
ret->lpHTMLBodyElementVtbl = &HTMLBodyElementVtbl; + ret->textcont.element.node.dispex.data = &HTMLBodyElement_dispex;
You should call init_dispex here. Jacek