Support for a small handful more return value/argument/variable types.
This commit is contained in:
parent
f0b082b354
commit
e9b36904df
|
@ -815,6 +815,17 @@ static int ctl2_encode_typedesc(
|
||||||
*alignment = 1;
|
*alignment = 1;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case VT_INT:
|
||||||
|
*encoded_tdesc = 0x80000000 | (VT_I4 << 16) | VT_INT;
|
||||||
|
if ((This->typelib_header.varflags & 0x0f) == SYS_WIN16) {
|
||||||
|
*width = 2;
|
||||||
|
*alignment = 2;
|
||||||
|
} else {
|
||||||
|
*width = 4;
|
||||||
|
*alignment = 4;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
case VT_UINT:
|
case VT_UINT:
|
||||||
*encoded_tdesc = 0x80000000 | (VT_UI4 << 16) | VT_UINT;
|
*encoded_tdesc = 0x80000000 | (VT_UI4 << 16) | VT_UINT;
|
||||||
if ((This->typelib_header.varflags & 0x0f) == SYS_WIN16) {
|
if ((This->typelib_header.varflags & 0x0f) == SYS_WIN16) {
|
||||||
|
@ -827,6 +838,8 @@ static int ctl2_encode_typedesc(
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case VT_UI2:
|
case VT_UI2:
|
||||||
|
case VT_I2:
|
||||||
|
case VT_BOOL:
|
||||||
*encoded_tdesc = default_tdesc;
|
*encoded_tdesc = default_tdesc;
|
||||||
*width = 2;
|
*width = 2;
|
||||||
*alignment = 2;
|
*alignment = 2;
|
||||||
|
@ -834,6 +847,7 @@ static int ctl2_encode_typedesc(
|
||||||
|
|
||||||
case VT_I4:
|
case VT_I4:
|
||||||
case VT_UI4:
|
case VT_UI4:
|
||||||
|
case VT_R4:
|
||||||
case VT_ERROR:
|
case VT_ERROR:
|
||||||
case VT_BSTR:
|
case VT_BSTR:
|
||||||
case VT_HRESULT:
|
case VT_HRESULT:
|
||||||
|
@ -842,6 +856,12 @@ static int ctl2_encode_typedesc(
|
||||||
*alignment = 4;
|
*alignment = 4;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case VT_CY:
|
||||||
|
*encoded_tdesc = default_tdesc;
|
||||||
|
*width = 8;
|
||||||
|
*alignment = 4; /* guess? */
|
||||||
|
break;
|
||||||
|
|
||||||
case VT_VOID:
|
case VT_VOID:
|
||||||
*encoded_tdesc = 0x80000000 | (VT_EMPTY << 16) | tdesc->vt;
|
*encoded_tdesc = 0x80000000 | (VT_EMPTY << 16) | tdesc->vt;
|
||||||
*width = 0;
|
*width = 0;
|
||||||
|
|
Loading…
Reference in New Issue