Jacek Caban : mshtml: Improved IHTMLWindow::GetIDsOfNames implementation.
Alexandre Julliard
julliard at winehq.org
Mon Jan 25 11:21:08 CST 2010
Module: wine
Branch: master
Commit: e54062d6c7aa0f39dc71a2b898bd1ee806177b9f
URL: http://source.winehq.org/git/wine.git/?a=commit;h=e54062d6c7aa0f39dc71a2b898bd1ee806177b9f
Author: Jacek Caban <jacek at 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,
More information about the wine-cvs
mailing list