[MPlayer-dev-eng] Compiling MPlayer under Wine

Reimar Döffinger Reimar.Doeffinger at gmx.de
Sun Oct 9 00:45:43 CEST 2011


On Sat, Oct 08, 2011 at 03:13:43PM +0200, Ingo Brückl wrote:
> +#define NONAMELESSUNION

Uh, this is what causes this:

> +#ifdef __WINE__
> +    var.n1.n2.vt = VT_BSTR;
> +#else
>      var.vt = VT_BSTR;
> +#endif

So at the very least adding the NONAMELESSUNION define without
explaining its purpose is really, really bad for maintainability.

> --- loader/dshow/DS_Filter.c	2011-01-18 11:38:59.000000000 +0100
> +++ /home/ib/mplayer/loader/dshow/DS_Filter.c	2011-10-08 17:47:25.000000000 +0200
> @@ -16,6 +16,7 @@
>  typedef long STDCALL (*GETCLASS) (const GUID*, const GUID*, void**);
>  
>  #ifndef WIN32_LOADER
> +#ifndef __WINE__
>  const GUID IID_IUnknown =
>  {
>      0x00000000, 0x0000, 0x0000,
> @@ -26,6 +27,7 @@
>      0x00000001, 0x0000, 0x0000,
>      {0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46}
>  };
> +#endif

Seems like a wine bug if it works on Windows but not with wine...
But see the previous file how to "fix" this using define hacks and a
static copy of IID_IUnknown.


More information about the MPlayer-dev-eng mailing list