Change REFIID to IID* for stack declarations in oaidl_p.c to avoid initializers being discarded
marcus at jet.franken.de
Sun Jun 27 14:13:17 CDT 2004
On Sun, Jun 27, 2004 at 05:23:27PM +0100, Mike Hearn wrote:
> This can cause a subtle marshalling failure in some cases
> (inter-thread IDispatch, native MSI, etc)
> Mike Hearn <mh at codeweavers.com>
> Change REFIID to IID* for stack declarations in oaidl_p.c to avoid
> initializers being discarded
> Index: oaidl_p.c
> RCS file: /home/wine/wine/dlls/oleaut32/oaidl_p.c,v
> retrieving revision 1.2
> diff -u -p -w -r1.2 oaidl_p.c
> --- oaidl_p.c 5 Sep 2003 23:08:33 -0000 1.2
> +++ oaidl_p.c 27 Jun 2004 16:17:04 -0000
> @@ -1,5 +1,14 @@
> -/* this ALWAYS GENERATED file contains the proxy stub code */
> +/* This file contains the proxy/stub code for core COM interfaces.
> + It is usually generated directly by MIDL, however this file has
> + been tweaked since then to account for slight differences in the way
> + gcc and MSVC++ compile it. In particular, in some functions REFIIDs
> + declared on the stack have been converted to plain IID* in order to eliminate
> + the constness of the REFIID type, ensuring that the zero initializer is not
> + discarded.
> + Therefore, please do not regenerate this file.
The comment is not understandable.
Shouldn't it read '"REFIID" should not be used, because the value is not "const"'?
More information about the wine-devel