mshtml: Handle DISPATCH_PROPERTYPUT | DISPATCH_PROPERTYPUTREF in invoke_builtin_prop.
This commit is contained in:
parent
a9d347cb24
commit
cdd28b0aca
|
@ -1230,6 +1230,7 @@ static HRESULT invoke_builtin_prop(DispatchEx *This, DISPID id, LCID lcid, WORD
|
||||||
|
|
||||||
switch(flags) {
|
switch(flags) {
|
||||||
case DISPATCH_PROPERTYPUT:
|
case DISPATCH_PROPERTYPUT:
|
||||||
|
case DISPATCH_PROPERTYPUT | DISPATCH_PROPERTYPUTREF:
|
||||||
if(res)
|
if(res)
|
||||||
V_VT(res) = VT_EMPTY;
|
V_VT(res) = VT_EMPTY;
|
||||||
hres = builtin_propput(This, func, dp, caller);
|
hres = builtin_propput(This, func, dp, caller);
|
||||||
|
@ -1249,7 +1250,7 @@ static HRESULT invoke_builtin_prop(DispatchEx *This, DISPID id, LCID lcid, WORD
|
||||||
|
|
||||||
if(flags != (DISPATCH_PROPERTYGET|DISPATCH_METHOD) || dp->cArgs) {
|
if(flags != (DISPATCH_PROPERTYGET|DISPATCH_METHOD) || dp->cArgs) {
|
||||||
if(V_VT(&v) != VT_DISPATCH) {
|
if(V_VT(&v) != VT_DISPATCH) {
|
||||||
FIXME("Not a function %s\n", debugstr_variant(&v));
|
FIXME("Not a function %s flags %08x\n", debugstr_variant(&v), flags);
|
||||||
VariantClear(&v);
|
VariantClear(&v);
|
||||||
return E_FAIL;
|
return E_FAIL;
|
||||||
}
|
}
|
||||||
|
|
|
@ -2091,6 +2091,13 @@ static void test_default_arg_conv(IHTMLWindow2 *window)
|
||||||
|
|
||||||
test_elem_disabled(elem, VARIANT_FALSE);
|
test_elem_disabled(elem, VARIANT_FALSE);
|
||||||
|
|
||||||
|
V_VT(&v) = VT_I4;
|
||||||
|
V_I4(&v) = 1;
|
||||||
|
hres = dispex_propput(dispex, DISPID_IHTMLELEMENT3_DISABLED, DISPATCH_PROPERTYPUTREF, &v, NULL);
|
||||||
|
ok(hres == S_OK, "InvokeEx failed: %08x\n", hres);
|
||||||
|
|
||||||
|
test_elem_disabled(elem, VARIANT_TRUE);
|
||||||
|
|
||||||
IHTMLElement_Release(elem);
|
IHTMLElement_Release(elem);
|
||||||
IDispatchEx_Release(dispex);
|
IDispatchEx_Release(dispex);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue