Jacek Caban : vbscript: Ignore version flags in GetDispID.

Alexandre Julliard julliard at winehq.org
Tue Jul 10 19:01:42 CDT 2012


Module: wine
Branch: master
Commit: edab5d85c771648cdf798f75bda729edaac917aa
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=edab5d85c771648cdf798f75bda729edaac917aa

Author: Jacek Caban <jacek at codeweavers.com>
Date:   Tue Jul 10 12:17:32 2012 +0200

vbscript: Ignore version flags in GetDispID.

---

 dlls/vbscript/tests/run.c |    5 +++++
 dlls/vbscript/vbdisp.c    |    4 ++++
 2 files changed, 9 insertions(+), 0 deletions(-)

diff --git a/dlls/vbscript/tests/run.c b/dlls/vbscript/tests/run.c
index 0e6d6ed..91c45e6 100644
--- a/dlls/vbscript/tests/run.c
+++ b/dlls/vbscript/tests/run.c
@@ -333,6 +333,11 @@ static void test_disp(IDispatch *disp)
     ok(id == -1, "id = %d\n", id);
     SysFreeString(str);
 
+    str = a2bstr("publicProp");
+    hres = IDispatchEx_GetDispID(dispex, str, 0x80000000|fdexNameCaseInsensitive, &public_prop_id);
+    SysFreeString(str);
+    ok(hres == S_OK, "GetDispID(publicProp) failed: %08x\n", hres);
+
     IDispatchEx_Release(dispex);
 }
 
diff --git a/dlls/vbscript/vbdisp.c b/dlls/vbscript/vbdisp.c
index 9005aa8..5f9d70a 100644
--- a/dlls/vbscript/vbdisp.c
+++ b/dlls/vbscript/vbdisp.c
@@ -24,6 +24,8 @@
 
 WINE_DEFAULT_DEBUG_CHANNEL(vbscript);
 
+#define FDEX_VERSION_MASK 0xf0000000
+
 static inline BOOL is_func_id(vbdisp_t *This, DISPID id)
 {
     return id < This->desc->func_cnt;
@@ -326,6 +328,8 @@ static HRESULT WINAPI DispatchEx_GetDispID(IDispatchEx *iface, BSTR bstrName, DW
 
     TRACE("(%p)->(%s %x %p)\n", This, debugstr_w(bstrName), grfdex, pid);
 
+    grfdex &= ~FDEX_VERSION_MASK;
+
     if(!This->desc)
         return E_UNEXPECTED;
 




More information about the wine-cvs mailing list