From: Zhiyi Zhang zzhang@codeweavers.com
Signed-off-by: Zhiyi Zhang zzhang@codeweavers.com --- dlls/winegstreamer/mfplat.c | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-)
diff --git a/dlls/winegstreamer/mfplat.c b/dlls/winegstreamer/mfplat.c index 55f9ae6323d..7d2ec634248 100644 --- a/dlls/winegstreamer/mfplat.c +++ b/dlls/winegstreamer/mfplat.c @@ -483,6 +483,8 @@ static IMFMediaType *mf_media_type_from_wg_format_video(const struct wg_format *
IMFMediaType *mf_media_type_from_wg_format(const struct wg_format *format) { + IMFMediaType *type = NULL; + switch (format->major_type) { case WG_MAJOR_TYPE_H264: @@ -491,17 +493,24 @@ IMFMediaType *mf_media_type_from_wg_format(const struct wg_format *format) FIXME("Format %u not implemented!\n", format->major_type); /* fallthrough */ case WG_MAJOR_TYPE_UNKNOWN: - return NULL; + break;
case WG_MAJOR_TYPE_AUDIO: - return mf_media_type_from_wg_format_audio(format); + type = mf_media_type_from_wg_format_audio(format); + break;
case WG_MAJOR_TYPE_VIDEO: - return mf_media_type_from_wg_format_video(format); + type = mf_media_type_from_wg_format_video(format); + break; + + default: + assert(0); + break; }
- assert(0); - return NULL; + if (!type) + WARN("Failed to get media type! wg_format major type %d.", format->major_type); + return type; }
static void mf_media_type_to_wg_format_audio(IMFMediaType *type, const GUID *subtype, struct wg_format *format)