White Snake wrote:
Hallo, patch goes in typelib.c and is attached as a diff file against typelib.c 1.167.
Patch is divided in 3 parts:
- in MSFT_DoFuncs: "reclength" of the function information record is stored
in a 16 bit int and not in a 8 bit int as previously supposed, using a 0x1ff mask. Upper 16 bits contains the ordinal number of the function. Allocation of the "recbuf" must be modified, to support larger data.
- Supporting a larger number of parameters means that the function "_invoke"
must be updated too. Maybe there is a smarter way than the one i've found.
- This is a "new" bug I discovered: in ITypeInfo_fnInvoke, after
_invoke, when you copy data back to pVarResult, you must not always do it. Sometimes pVarResult is passet to the called function, so data is already in the exit buffer. Check the comment few lines above "If pointer to variant, pass reference it."
Hi,
As these are 3 different bug fixes, can you submit patches separately for each?