[v2 PATCH] include/wincodec.idl: Stop redefinition of ID2D1Image
Alistair Leslie-Hughes
leslie_alistair at hotmail.com
Fri Jun 16 04:34:10 CDT 2017
From: wine-devel <wine-devel-bounces at winehq.org> on behalf of Vincent Povirk <madewokherd at gmail.com>
Sent: Friday, 16 June 2017 2:49 AM
To: wine-devel at winehq.org
Subject: Re: [v2 PATCH] include/wincodec.idl: Stop redefinition of ID2D1Image
>Why can't we handle this the way that d2d1.idl does? It doesn't
>include wincodec.idl, but it declares the interfaces it uses from
>there.
We cannot use "interface ID2D1Image;" like in d2d1.idl. This is just a forward declare and causes compile errors when building d3dx* with
../../include/wincodec.h:5800:9: error: unknown type name ‘ID2D1Image’ ID2D1Image *image
I only see two options,
1. Use the d2d1.idl, which will include extra interfaces not in the original
or
2. Add the following to the wincodec.idl.
#ifndef __ID2D1Image_FWD_DEFINED__
#define __ID2D1Image_FWD_DEFINED__
typedef interface ID2D1Image ID2D1Image;
#ifdef __cplusplus
interface ID2D1Image;
#endif /* __cplusplus */
#endif
I've sent v3 using the second approach above.
Best Regards
Alistair Leslie-Hughes
More information about the wine-devel
mailing list