[v2 PATCH 8/9] mfplat: Keep stream descriptor identifier.
Nikolay Sivov
nsivov at codeweavers.com
Mon Mar 4 04:33:48 CST 2019
Signed-off-by: Nikolay Sivov <nsivov at codeweavers.com>
---
dlls/mfplat/mediatype.c | 11 +++++++++--
1 file changed, 9 insertions(+), 2 deletions(-)
diff --git a/dlls/mfplat/mediatype.c b/dlls/mfplat/mediatype.c
index 79d34405fe..1bd32cd8b0 100644
--- a/dlls/mfplat/mediatype.c
+++ b/dlls/mfplat/mediatype.c
@@ -36,6 +36,7 @@ struct stream_desc
struct attributes attributes;
IMFStreamDescriptor IMFStreamDescriptor_iface;
IMFMediaTypeHandler IMFMediaTypeHandler_iface;
+ DWORD identifier;
};
static inline struct media_type *impl_from_IMFMediaType(IMFMediaType *iface)
@@ -615,9 +616,13 @@ static HRESULT WINAPI stream_descriptor_CopyAllItems(IMFStreamDescriptor *iface,
static HRESULT WINAPI stream_descriptor_GetStreamIdentifier(IMFStreamDescriptor *iface, DWORD *identifier)
{
- FIXME("%p, %p.\n", iface, identifier);
+ struct stream_desc *stream_desc = impl_from_IMFStreamDescriptor(iface);
- return E_NOTIMPL;
+ TRACE("%p, %p.\n", iface, identifier);
+
+ *identifier = stream_desc->identifier;
+
+ return S_OK;
}
static HRESULT WINAPI stream_descriptor_GetMediaTypeHandler(IMFStreamDescriptor *iface, IMFMediaTypeHandler **handler)
@@ -774,6 +779,8 @@ HRESULT WINAPI MFCreateStreamDescriptor(DWORD identifier, DWORD count,
init_attribute_object(&object->attributes, 0);
object->IMFStreamDescriptor_iface.lpVtbl = &streamdescriptorvtbl;
object->IMFMediaTypeHandler_iface.lpVtbl = &mediatypehandlervtbl;
+ object->identifier = identifier;
+
*descriptor = &object->IMFStreamDescriptor_iface;
return S_OK;
--
2.20.1
More information about the wine-devel
mailing list