Nikolay Sivov (@nsivov) commented about dlls/evr/mixer.c:
mixer->inputs[i].media_type = NULL; } video_mixer_flush_input(mixer); - for (i = 0; i < mixer->output.rt_formats_count; ++i) + if (mixer->output.rt_formats) { - IMFMediaType_Release(mixer->output.rt_formats[i].media_type); + for (i = 0; i < mixer->output.rt_formats_count; ++i) + { + IMFMediaType_Release(mixer->output.rt_formats[i].media_type); + } + free(mixer->output.rt_formats); + mixer->output.rt_formats = NULL; } - free(mixer->output.rt_formats);
There should be no need to check for null 'rt_formats', counter should be 0 if this pointer is null. -- https://gitlab.winehq.org/wine/wine/-/merge_requests/2263#note_25262