Jacek Caban : mshtml: Improved IHTMLWindow::GetIDsOfNames implementation.
Module: wine Branch: master Commit: e54062d6c7aa0f39dc71a2b898bd1ee806177b9f URL: http://source.winehq.org/git/wine.git/?a=commit;h=e54062d6c7aa0f39dc71a2b898... Author: Jacek Caban <jacek(a)codeweavers.com> Date: Sun Jan 24 21:39:01 2010 +0100 mshtml: Improved IHTMLWindow::GetIDsOfNames implementation. --- dlls/mshtml/htmlwindow.c | 13 ++++++++++--- 1 files changed, 10 insertions(+), 3 deletions(-) diff --git a/dlls/mshtml/htmlwindow.c b/dlls/mshtml/htmlwindow.c index 4a2babe..d6a249a 100644 --- a/dlls/mshtml/htmlwindow.c +++ b/dlls/mshtml/htmlwindow.c @@ -1688,13 +1688,20 @@ static HRESULT WINAPI WindowDispEx_GetIDsOfNames(IDispatchEx *iface, REFIID riid LCID lcid, DISPID *rgDispId) { HTMLWindow *This = DISPEX_THIS(iface); + UINT i; + HRESULT hres; - TRACE("(%p)->(%s %p %u %u %p)\n", This, debugstr_guid(riid), rgszNames, cNames, + WARN("(%p)->(%s %p %u %u %p)\n", This, debugstr_guid(riid), rgszNames, cNames, lcid, rgDispId); - /* FIXME: Use script dispatch */ + for(i=0; i < cNames; i++) { + /* We shouldn't use script's IDispatchEx here, so we shouldn't use GetDispID */ + hres = IDispatchEx_GetDispID(DISPATCHEX(This), rgszNames[i], 0, rgDispId+i); + if(FAILED(hres)) + return hres; + } - return IDispatchEx_GetIDsOfNames(DISPATCHEX(&This->dispex), riid, rgszNames, cNames, lcid, rgDispId); + return S_OK; } static HRESULT WINAPI WindowDispEx_Invoke(IDispatchEx *iface, DISPID dispIdMember,
participants (1)
-
Alexandre Julliard