Le sam 05/02/2005 à 12:53, Rob Shearman a écrit :
Vincent Béron wrote:
Since the typedef patch to widl, typedef enum foo {A, B} FOO; was rejected by get_type_vt (unknown-type: 13).
Changelog: A RPC_FC_ENUM16 is a VT_I2.
Are you sure about this? Elsewhere RPC_FC_ENUM16 is equivalent to a VT_I4 or VT_UI4 (although it is actually only 16-bits on the wire).
Where elsewhere? I only found (in widl) proxy.c:marshall_size_arg(), in which it's size is 2. I haven't looked in the rest of Wine source.
So no, I'm not 100% sure (no hard proof to lean on), but it was lacking a type and VT_I2 looked like the proper one.
A type16 which is actually 4 bytes would indeed surprise me, especially when a type32 does exist.
Vincent