mshtml: Support argument type conversion for functions with dual interface return type.
Signed-off-by: Jacek Caban <jacek@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
0a942e5d49
commit
40c74cf336
|
@ -302,12 +302,11 @@ static void add_func_info(dispex_data_t *data, tid_t tid, const FUNCDESC *desc,
|
|||
if(!info->arg_types)
|
||||
return;
|
||||
|
||||
|
||||
for(i=0; i < info->argc; i++)
|
||||
info->arg_types[i] = desc->lprgelemdescParam[i].tdesc.vt;
|
||||
|
||||
info->prop_vt = desc->elemdescFunc.tdesc.vt;
|
||||
if(info->prop_vt != VT_VOID && !is_arg_type_supported(info->prop_vt)) {
|
||||
if(info->prop_vt != VT_VOID && info->prop_vt != VT_PTR && !is_arg_type_supported(info->prop_vt)) {
|
||||
TRACE("%s: return type %d\n", debugstr_w(info->name), info->prop_vt);
|
||||
return; /* Fallback to ITypeInfo::Invoke */
|
||||
}
|
||||
|
@ -1197,8 +1196,13 @@ static HRESULT invoke_builtin_function(DispatchEx *This, func_info_t *func, DISP
|
|||
case vt: \
|
||||
V_BYREF(&ret_ref) = &access(&retv); \
|
||||
break
|
||||
BUILTIN_TYPES_SWITCH;
|
||||
BUILTIN_ARG_TYPES_SWITCH;
|
||||
#undef CASE_VT
|
||||
case VT_PTR:
|
||||
V_VT(&retv) = VT_DISPATCH;
|
||||
V_VT(&ret_ref) = VT_BYREF | VT_DISPATCH;
|
||||
V_BYREF(&ret_ref) = &V_DISPATCH(&retv);
|
||||
break;
|
||||
default:
|
||||
assert(0);
|
||||
}
|
||||
|
|
|
@ -374,6 +374,8 @@ function test_style_properties() {
|
|||
elem.style.zIndex = 4;
|
||||
ok(computed_style.zIndex === 4, "computed_style.zIndex = " + computed_style.zIndex);
|
||||
|
||||
window.getComputedStyle(elem, null);
|
||||
|
||||
next_test();
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue