From 965002dc53f08d58a0f78184c3f6abb4a761375c Mon Sep 17 00:00:00 2001 From: Alistair Leslie-Hughes Date: Mon, 27 Aug 2018 09:33:40 +1000 Subject: [PATCH] Added mfplat-MFCreateMFByteStreamOnStream patchset --- ...dd-MFCreateMFByteStreamOnStream-stub.patch | 58 +++++++++++++++++++ .../definition | 1 + patches/patchinstall.sh | 19 ++++++ 3 files changed, 78 insertions(+) create mode 100644 patches/mfplat-MFCreateMFByteStreamOnStream/0001-mfplat-Add-MFCreateMFByteStreamOnStream-stub.patch create mode 100644 patches/mfplat-MFCreateMFByteStreamOnStream/definition diff --git a/patches/mfplat-MFCreateMFByteStreamOnStream/0001-mfplat-Add-MFCreateMFByteStreamOnStream-stub.patch b/patches/mfplat-MFCreateMFByteStreamOnStream/0001-mfplat-Add-MFCreateMFByteStreamOnStream-stub.patch new file mode 100644 index 00000000..c2031e29 --- /dev/null +++ b/patches/mfplat-MFCreateMFByteStreamOnStream/0001-mfplat-Add-MFCreateMFByteStreamOnStream-stub.patch @@ -0,0 +1,58 @@ +From 5708796535b498be35b1ea5be561bfaf7ea420ce Mon Sep 17 00:00:00 2001 +From: Alistair Leslie-Hughes +Date: Fri, 24 Aug 2018 11:20:54 +1000 +Subject: [PATCH] mfplat: Add MFCreateMFByteStreamOnStream stub + +Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45372 +Signed-off-by: Alistair Leslie-Hughes +--- + dlls/mfplat/main.c | 6 ++++++ + dlls/mfplat/mfplat.spec | 2 +- + include/mfidl.idl | 1 + + 3 files changed, 8 insertions(+), 1 deletion(-) + +diff --git a/dlls/mfplat/main.c b/dlls/mfplat/main.c +index 97b11e7..ff71ff7 100644 +--- a/dlls/mfplat/main.c ++++ b/dlls/mfplat/main.c +@@ -441,6 +441,12 @@ HRESULT WINAPI MFShutdown(void) + return S_OK; + } + ++HRESULT WINAPI MFCreateMFByteStreamOnStream(IStream *stream, IMFByteStream **bytestream) ++{ ++ FIXME("(%p, %p): stub\n", stream, bytestream); ++ return E_NOTIMPL; ++} ++ + static HRESULT WINAPI MFPluginControl_QueryInterface(IMFPluginControl *iface, REFIID riid, void **ppv) + { + if(IsEqualGUID(riid, &IID_IUnknown)) { +diff --git a/dlls/mfplat/mfplat.spec b/dlls/mfplat/mfplat.spec +index 2e2204e..2534b55 100644 +--- a/dlls/mfplat/mfplat.spec ++++ b/dlls/mfplat/mfplat.spec +@@ -45,7 +45,7 @@ + @ stdcall MFCreateEventQueue(ptr) + @ stub MFCreateFile + @ stub MFCreateLegacyMediaBufferOnMFMediaBuffer +-@ stub MFCreateMFByteStreamOnStream ++@ stdcall MFCreateMFByteStreamOnStream(ptr ptr) + @ stub MFCreateMFVideoFormatFromMFMediaType + @ stub MFCreateMediaBufferWrapper + @ stub MFCreateMediaEvent +diff --git a/include/mfidl.idl b/include/mfidl.idl +index 12b351d..84be055 100644 +--- a/include/mfidl.idl ++++ b/include/mfidl.idl +@@ -251,6 +251,7 @@ interface IMFGetService : IUnknown + } + + cpp_quote("HRESULT WINAPI MFCreateMediaSession(IMFAttributes *config, IMFMediaSession **session);") ++cpp_quote("HRESULT WINAPI MFCreateMFByteStreamOnStream(IStream *stream, IMFByteStream **bytestream);" ) + cpp_quote("HRESULT WINAPI MFCreateSourceResolver(IMFSourceResolver **resolver);") + cpp_quote("HRESULT WINAPI MFCreateStreamDescriptor(DWORD identifier, DWORD cMediaTypes,") + cpp_quote(" IMFMediaType **types, IMFStreamDescriptor **descriptor);") +-- +1.9.1 + diff --git a/patches/mfplat-MFCreateMFByteStreamOnStream/definition b/patches/mfplat-MFCreateMFByteStreamOnStream/definition new file mode 100644 index 00000000..988dad53 --- /dev/null +++ b/patches/mfplat-MFCreateMFByteStreamOnStream/definition @@ -0,0 +1 @@ +Fixes: [45372] Add MFCreateMFByteStreamOnStream stu diff --git a/patches/patchinstall.sh b/patches/patchinstall.sh index 23e7b13f..9494fe8c 100755 --- a/patches/patchinstall.sh +++ b/patches/patchinstall.sh @@ -183,6 +183,7 @@ patch_enable_all () enable_libs_Debug_Channel="$1" enable_libs_Unicode_Collation="$1" enable_loader_OSX_Preloader="$1" + enable_mfplat_MFCreateMFByteStreamOnStream="$1" enable_mfplat_MFTRegisterLocal="$1" enable_mmsystem_dll16_MIDIHDR_Refcount="$1" enable_mountmgr_DosDevices="$1" @@ -724,6 +725,9 @@ patch_enable () loader-OSX_Preloader) enable_loader_OSX_Preloader="$2" ;; + mfplat-MFCreateMFByteStreamOnStream) + enable_mfplat_MFCreateMFByteStreamOnStream="$2" + ;; mfplat-MFTRegisterLocal) enable_mfplat_MFTRegisterLocal="$2" ;; @@ -4375,6 +4379,21 @@ if test "$enable_loader_OSX_Preloader" -eq 1; then ) >> "$patchlist" fi +# Patchset mfplat-MFCreateMFByteStreamOnStream +# | +# | This patchset fixes the following Wine bugs: +# | * [#45372] Add MFCreateMFByteStreamOnStream stu +# | +# | Modified files: +# | * dlls/mfplat/main.c, dlls/mfplat/mfplat.spec, include/mfidl.idl +# | +if test "$enable_mfplat_MFCreateMFByteStreamOnStream" -eq 1; then + patch_apply mfplat-MFCreateMFByteStreamOnStream/0001-mfplat-Add-MFCreateMFByteStreamOnStream-stub.patch + ( + printf '%s\n' '+ { "Alistair Leslie-Hughes", "mfplat: Add MFCreateMFByteStreamOnStream stub.", 1 },'; + ) >> "$patchlist" +fi + # Patchset mfplat-MFTRegisterLocal # | # | This patchset fixes the following Wine bugs: