[PATCH 3/7] winegstreamer: Use a union in struct sample to keep API pointers.

Zebediah Figura zfigura at codeweavers.com
Fri Jun 10 18:34:52 CDT 2022


On 6/10/22 02:53, Rémi Bernon wrote:
> +    switch (sample->type)
> +    {
> +        case WG_SAMPLE_TYPE_MF:
> +            TRACE("wg_sample %p\n", wg_sample);
> +
> +            IMFMediaBuffer_Unlock(sample->u.mf.buffer);
> +            IMFMediaBuffer_Release(sample->u.mf.buffer);
> +            IMFSample_Release(sample->u.mf.sample);
> +            break;
> +
> +        default:
> +            FIXME("Unknown wg_sample %p, type %u\n", wg_sample, sample->type);
> +            break;
> +    }
Have you considered using a destruction callback instead (especially 
since it'd just be the one callback?)

I haven't tried it, so maybe it ends up being less pretty, but it'd at 
least make it easier to avoid mixing multiple frontends in the same file.



More information about the wine-devel mailing list