Jacek Caban : mshtml: Always ignore DISPATCH_PROPERTYPUTREF in InvokeEx.

Alexandre Julliard julliard at wine.codeweavers.com
Fri Nov 28 12:49:04 CST 2014


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

Author: Jacek Caban <jacek at codeweavers.com>
Date:   Fri Nov 28 16:18:18 2014 +0100

mshtml: Always ignore DISPATCH_PROPERTYPUTREF in InvokeEx.

---

 dlls/mshtml/dispex.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/dlls/mshtml/dispex.c b/dlls/mshtml/dispex.c
index 4a872a8..f294d91 100644
--- a/dlls/mshtml/dispex.c
+++ b/dlls/mshtml/dispex.c
@@ -1230,7 +1230,6 @@ static HRESULT invoke_builtin_prop(DispatchEx *This, DISPID id, LCID lcid, WORD
 
     switch(flags) {
     case DISPATCH_PROPERTYPUT:
-    case DISPATCH_PROPERTYPUT | DISPATCH_PROPERTYPUTREF:
         if(res)
             V_VT(res) = VT_EMPTY;
         hres = builtin_propput(This, func, dp, caller);
@@ -1421,6 +1420,9 @@ static HRESULT WINAPI DispatchEx_InvokeEx(IDispatchEx *iface, DISPID id, LCID lc
 
     TRACE("(%p)->(%x %x %x %p %p %p %p)\n", This, id, lcid, wFlags, pdp, pvarRes, pei, pspCaller);
 
+    if(wFlags == (DISPATCH_PROPERTYPUT|DISPATCH_PROPERTYPUTREF))
+        wFlags = DISPATCH_PROPERTYPUT;
+
     switch(get_dispid_type(id)) {
     case DISPEXPROP_CUSTOM:
         if(!This->data->vtbl || !This->data->vtbl->invoke)
@@ -1453,7 +1455,6 @@ static HRESULT WINAPI DispatchEx_InvokeEx(IDispatchEx *iface, DISPID id, LCID lc
                 return DISP_E_UNKNOWNNAME;
             V_VT(pvarRes) = VT_EMPTY;
             return variant_copy(pvarRes, &prop->var);
-        case DISPATCH_PROPERTYPUT|DISPATCH_PROPERTYPUTREF:
         case DISPATCH_PROPERTYPUT:
             if(pdp->cArgs != 1 || (pdp->cNamedArgs == 1 && *pdp->rgdispidNamedArgs != DISPID_PROPERTYPUT)
                || pdp->cNamedArgs > 1) {




More information about the wine-cvs mailing list