rpcrt4: Support sizing of a few more argument types.
This commit is contained in:
parent
2bdff69733
commit
976cd5c9fe
|
@ -150,6 +150,7 @@ static DWORD calc_arg_size(MIDL_STUB_MESSAGE *pStubMsg, PFORMAT_STRING pFormat)
|
|||
switch(*pFormat)
|
||||
{
|
||||
case RPC_FC_STRUCT:
|
||||
case RPC_FC_PSTRUCT:
|
||||
size = *(const WORD*)(pFormat + 2);
|
||||
break;
|
||||
case RPC_FC_BOGUS_STRUCT:
|
||||
|
@ -178,6 +179,15 @@ static DWORD calc_arg_size(MIDL_STUB_MESSAGE *pStubMsg, PFORMAT_STRING pFormat)
|
|||
size = ComplexStructSize(pStubMsg, pFormat);
|
||||
size *= pStubMsg->MaxCount;
|
||||
break;
|
||||
case RPC_FC_USER_MARSHAL:
|
||||
size = *(const WORD*)(pFormat + 4);
|
||||
break;
|
||||
case RPC_FC_CSTRING:
|
||||
size = *(const WORD*)(pFormat + 2);
|
||||
break;
|
||||
case RPC_FC_WSTRING:
|
||||
size = *(const WORD*)(pFormat + 2) * sizeof(WCHAR);
|
||||
break;
|
||||
case RPC_FC_C_CSTRING:
|
||||
case RPC_FC_C_WSTRING:
|
||||
if (*pFormat == RPC_FC_C_CSTRING)
|
||||
|
|
Loading…
Reference in New Issue