From: Torge Matthies tmatthies@codeweavers.com
--- dlls/winegstreamer/media_sink.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-)
diff --git a/dlls/winegstreamer/media_sink.c b/dlls/winegstreamer/media_sink.c index 4ccf9b3bb51..fd734d9e739 100644 --- a/dlls/winegstreamer/media_sink.c +++ b/dlls/winegstreamer/media_sink.c @@ -469,9 +469,18 @@ static HRESULT WINAPI stream_sink_type_handler_GetCurrentMediaType(IMFMediaTypeH
static HRESULT WINAPI stream_sink_type_handler_GetMajorType(IMFMediaTypeHandler *iface, GUID *type) { - FIXME("iface %p, type %p.\n", iface, type); + struct stream_sink *stream_sink = impl_from_IMFMediaTypeHandler(iface); + struct media_sink *media_sink = impl_from_IMFFinalizableMediaSink(stream_sink->media_sink); + HRESULT hr = MF_E_ATTRIBUTENOTFOUND;
- return E_NOTIMPL; + TRACE("iface %p, type %p.\n", iface, type); + + EnterCriticalSection(&media_sink->cs); + if (stream_sink->type) + hr = IMFMediaType_GetGUID(stream_sink->type, &MF_MT_MAJOR_TYPE, type); + LeaveCriticalSection(&media_sink->cs); + + return hr; }
static const IMFMediaTypeHandlerVtbl stream_sink_type_handler_vtbl =