Jacek Caban (@jacek) commented about dlls/mshtml/tests/script.c:
* and querying for IDispatchEx gives different interfaces on both these *and* our window_dispex!
* That said, querying for IHTMLWindow2 *does* give the same interface for both?!?
*/
- hres = IDispatchEx_QueryInterface(window_dispex, &IID_IHTMLWindow2, (void**)&window);
- ok(hres == S_OK, "Could not get IHTMLWindow2 interface: %08lx\n", hres);
- hres = IUnknown_QueryInterface(unk, &IID_IHTMLWindow2, (void**)&window2);
- ok(hres == S_OK, "Could not get IHTMLWindow2 interface: %08lx\n", hres);
- ok(window == window2, "first site window != second site window\n");
- IHTMLWindow2_Release(window2);
- IHTMLWindow2_Release(window);
- IUnknown_Release(unk);
- /* IE8 */
- CHECK_CALLED_BROKEN(SetProperty_ABBREVIATE_GLOBALNAME_RESOLUTION_TRUE);
- SET_EXPECT(SetProperty2_ABBREVIATE_GLOBALNAME_RESOLUTION_FALSE);
Such things make it hard to follow, could we just append the second script element dynamically, after document is loaded? We also no longer care about IE7, so you could probably just use CHECK_CALLED instead of all those CHECK_CALLED_BROKEN (and get rid of IE8 comments).