oleaut32: Copy BYREF args directly if they have the same variant type.

This commit is contained in:
James Hawkins 2006-06-05 17:47:00 -05:00 committed by Alexandre Julliard
parent 1660c504ca
commit 0e5bd51d28
1 changed files with 5 additions and 0 deletions

View File

@ -5264,6 +5264,11 @@ static HRESULT WINAPI ITypeInfo_fnInvoke(
V_BYREF(&rgvarg[i]) = &V_NONE(&missing_arg[i]);
V_VT(&rgvarg[i]) = rgvt[i];
}
else if ((rgvt[i] & VT_BYREF) && (rgvt[i] == V_VT(src_arg)))
{
V_BYREF(&rgvarg[i]) = V_BYREF(src_arg);
V_VT(&rgvarg[i]) = rgvt[i];
}
else
{
/* FIXME: this doesn't work for VT_BYREF arguments if