patch for bug 2830 "MSFT_GetTdesc fails on methods with >= 30
whitesnake78 at mail.com
Tue Sep 6 14:11:01 CDT 2005
patch goes in typelib.c and is attached as a diff file against
Patch is divided in 3 parts:
1) 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.
2) 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.
3) 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
Sign-up for Ads Free at Mail.com
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 14046 bytes
Desc: not available
Url : http://www.winehq.org/pipermail/wine-patches/attachments/20050906/e44cfffc/typelib-0001.obj
More information about the wine-patches