Added patch to implement AMStream GetMultiMediaStream functions.

This commit is contained in:
Sebastian Lackner 2015-07-28 18:31:47 +02:00
parent 02879c0800
commit 2393fd2c7e
5 changed files with 128 additions and 18 deletions

View File

@ -39,7 +39,7 @@ Wine. All those differences are also documented on the
Included bug fixes and improvements
-----------------------------------
**Bug fixes and features included in the next upcoming release [12]:**
**Bug fixes and features included in the next upcoming release [13]:**
* Add stubs for d3dx10_43.D3DX10CreateEffectFromFileA/W ([Wine Bug #27739](https://bugs.winehq.org/show_bug.cgi?id=27739))
* Add support for ThreadQuerySetWin32StartAddress info class ([Wine Bug #8277](https://bugs.winehq.org/show_bug.cgi?id=8277))
@ -49,6 +49,7 @@ Included bug fixes and improvements
* Fix loading of libraries with incomplete IMAGE_LOAD_CONFIG_DIRECTORY struct
* Fix security cookie handling for UPX compressed executables ([Wine Bug #38949](https://bugs.winehq.org/show_bug.cgi?id=38949))
* Forward exitcode from child process when in wineconsole
* Implement AMStream GetMultiMediaStream functions ([Wine Bug #37090](https://bugs.winehq.org/show_bug.cgi?id=37090))
* Return dummy ID3DXSkinInfo interface when skinning info not present ([Wine Bug #33904](https://bugs.winehq.org/show_bug.cgi?id=33904))
* Share source of d3dx9_36 with d3dx9_33 to avoid Wine DLL forwards ([Wine Bug #21817](https://bugs.winehq.org/show_bug.cgi?id=21817))
* Silence repeated LocaleNameToLCID/LCIDToLocaleName unsupported flags FIXMEs ([Wine Bug #30076](https://bugs.winehq.org/show_bug.cgi?id=30076))

1
debian/changelog vendored
View File

@ -18,6 +18,7 @@ wine-staging (1.7.48) UNRELEASED; urgency=low
* Added patch to return dummy ID3DXSkinInfo interface when skinning info not
present.
* Added patch to store registry timestamps with nanoseconds precision.
* Added patch to implement AMStream GetMultiMediaStream functions.
* Removed patch to allow to enable/disable InsertMode in wineconsole settings
(accepted upstream).
* Removed patch to improve IoGetDeviceObjectPointer stub to appease SecuROM

View File

@ -0,0 +1,88 @@
From 4d0e6bbc00bd49b8dcfce494bd7380c49f58f92b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Tue, 28 Jul 2015 18:21:20 +0200
Subject: amstream: Implement IAMMediaStream::GetMultiMediaStream.
---
dlls/amstream/mediastream.c | 40 ++++++++++++++++++++++++++++++++--------
1 file changed, 32 insertions(+), 8 deletions(-)
diff --git a/dlls/amstream/mediastream.c b/dlls/amstream/mediastream.c
index 947be1e..e4e15d7 100644
--- a/dlls/amstream/mediastream.c
+++ b/dlls/amstream/mediastream.c
@@ -110,9 +110,15 @@ static HRESULT WINAPI DirectDrawMediaStreamImpl_IAMMediaStream_GetMultiMediaStre
{
DirectDrawMediaStreamImpl *This = impl_from_DirectDrawMediaStream_IAMMediaStream(iface);
- FIXME("(%p/%p)->(%p) stub!\n", This, iface, multi_media_stream);
+ TRACE("(%p/%p)->(%p) stub!\n", This, iface, multi_media_stream);
- return S_FALSE;
+ if (!multi_media_stream)
+ return E_POINTER;
+
+ IMultiMediaStream_AddRef(This->parent);
+ *multi_media_stream = This->parent;
+
+ return S_OK;
}
static HRESULT WINAPI DirectDrawMediaStreamImpl_IAMMediaStream_GetInformation(IAMMediaStream *iface,
@@ -271,9 +277,15 @@ static HRESULT WINAPI DirectDrawMediaStreamImpl_IDirectDrawMediaStream_GetMultiM
{
DirectDrawMediaStreamImpl *This = impl_from_IDirectDrawMediaStream(iface);
- FIXME("(%p/%p)->(%p) stub!\n", This, iface, ppMultiMediaStream);
+ TRACE("(%p/%p)->(%p) stub!\n", This, iface, ppMultiMediaStream);
- return S_FALSE;
+ if (!ppMultiMediaStream)
+ return E_POINTER;
+
+ IMultiMediaStream_AddRef(This->parent);
+ *ppMultiMediaStream = This->parent;
+
+ return S_OK;
}
static HRESULT WINAPI DirectDrawMediaStreamImpl_IDirectDrawMediaStream_GetInformation(IDirectDrawMediaStream *iface,
@@ -511,9 +523,15 @@ static HRESULT WINAPI AudioMediaStreamImpl_IAMMediaStream_GetMultiMediaStream(IA
{
AudioMediaStreamImpl *This = impl_from_AudioMediaStream_IAMMediaStream(iface);
- FIXME("(%p/%p)->(%p) stub!\n", This, iface, multi_media_stream);
+ TRACE("(%p/%p)->(%p)\n", This, iface, multi_media_stream);
- return S_FALSE;
+ if (!multi_media_stream)
+ return E_POINTER;
+
+ IMultiMediaStream_AddRef(This->parent);
+ *multi_media_stream = This->parent;
+
+ return S_OK;
}
static HRESULT WINAPI AudioMediaStreamImpl_IAMMediaStream_GetInformation(IAMMediaStream *iface,
@@ -672,9 +690,15 @@ static HRESULT WINAPI AudioMediaStreamImpl_IAudioMediaStream_GetMultiMediaStream
{
AudioMediaStreamImpl *This = impl_from_IAudioMediaStream(iface);
- FIXME("(%p/%p)->(%p) stub!\n", iface, This, multimedia_stream);
+ TRACE("(%p/%p)->(%p)\n", iface, This, multimedia_stream);
- return S_FALSE;
+ if (!multimedia_stream)
+ return E_POINTER;
+
+ IMultiMediaStream_AddRef(This->parent);
+ *multimedia_stream = This->parent;
+
+ return S_OK;
}
static HRESULT WINAPI AudioMediaStreamImpl_IAudioMediaStream_GetInformation(IAudioMediaStream *iface,
--
2.4.5

View File

@ -0,0 +1 @@
Fixes: [37090] Implement AMStream GetMultiMediaStream functions

View File

@ -80,6 +80,7 @@ patch_enable_all ()
enable_Pipelight="$1"
enable_Staging="$1"
enable_advapi32_LsaLookupSids="$1"
enable_amstream_GetMultiMediaStream="$1"
enable_browseui_Progress_Dialog="$1"
enable_combase_String="$1"
enable_comctl32_LoadIconMetric="$1"
@ -313,6 +314,9 @@ patch_enable ()
advapi32-LsaLookupSids)
enable_advapi32_LsaLookupSids="$2"
;;
amstream-GetMultiMediaStream)
enable_amstream_GetMultiMediaStream="$2"
;;
browseui-Progress_Dialog)
enable_browseui_Progress_Dialog="$2"
;;
@ -1996,23 +2000,6 @@ if test "$enable_Staging" -eq 1; then
) >> "$patchlist"
fi
# Patchset server-Misc_ACL
# |
# | This patchset fixes the following Wine bugs:
# | * [#15980] GetSecurityInfo returns NULL DACL for process object
# |
# | Modified files:
# | * dlls/advapi32/tests/security.c, server/process.c, server/security.h, server/token.c
# |
if test "$enable_server_Misc_ACL" -eq 1; then
patch_apply server-Misc_ACL/0001-server-Add-default-security-descriptor-ownership-for.patch
patch_apply server-Misc_ACL/0002-server-Add-default-security-descriptor-DACL-for-proc.patch
(
echo '+ { "Erich E. Hoover", "server: Add default security descriptor ownership for processes.", 1 },';
echo '+ { "Erich E. Hoover", "server: Add default security descriptor DACL for processes.", 1 },';
) >> "$patchlist"
fi
# Patchset server-CreateProcess_ACLs
# |
# | This patchset fixes the following Wine bugs:
@ -2032,6 +2019,23 @@ if test "$enable_server_CreateProcess_ACLs" -eq 1; then
) >> "$patchlist"
fi
# Patchset server-Misc_ACL
# |
# | This patchset fixes the following Wine bugs:
# | * [#15980] GetSecurityInfo returns NULL DACL for process object
# |
# | Modified files:
# | * dlls/advapi32/tests/security.c, server/process.c, server/security.h, server/token.c
# |
if test "$enable_server_Misc_ACL" -eq 1; then
patch_apply server-Misc_ACL/0001-server-Add-default-security-descriptor-ownership-for.patch
patch_apply server-Misc_ACL/0002-server-Add-default-security-descriptor-DACL-for-proc.patch
(
echo '+ { "Erich E. Hoover", "server: Add default security descriptor ownership for processes.", 1 },';
echo '+ { "Erich E. Hoover", "server: Add default security descriptor DACL for processes.", 1 },';
) >> "$patchlist"
fi
# Patchset advapi32-LsaLookupSids
# |
# | Modified files:
@ -2056,6 +2060,21 @@ if test "$enable_advapi32_LsaLookupSids" -eq 1; then
) >> "$patchlist"
fi
# Patchset amstream-GetMultiMediaStream
# |
# | This patchset fixes the following Wine bugs:
# | * [#37090] Implement AMStream GetMultiMediaStream functions
# |
# | Modified files:
# | * dlls/amstream/mediastream.c
# |
if test "$enable_amstream_GetMultiMediaStream" -eq 1; then
patch_apply amstream-GetMultiMediaStream/0001-amstream-Implement-IAMMediaStream-GetMultiMediaStrea.patch
(
echo '+ { "Michael Müller", "amstream: Implement IAMMediaStream::GetMultiMediaStream.", 1 },';
) >> "$patchlist"
fi
# Patchset browseui-Progress_Dialog
# |
# | Modified files: