mirror of
https://gitlab.winehq.org/wine/wine-staging.git
synced 2024-09-13 09:17:20 -07:00
Rebase against 3db7506221e44e8091887d7eb42fe1666d422166.
This commit is contained in:
parent
b7b4fbcd32
commit
82924e9a17
@ -1,4 +1,4 @@
|
||||
From cdbd2714d5454e6518b699e3cdbedd3e0a1243c5 Mon Sep 17 00:00:00 2001
|
||||
From aa953a66080d49a697101fb55a1bd950de4a59db Mon Sep 17 00:00:00 2001
|
||||
From: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
|
||||
Date: Fri, 2 Dec 2022 14:41:30 +1100
|
||||
Subject: [PATCH] dmime: Implement IDirectMusicSegment8 Download
|
||||
@ -6,8 +6,8 @@ Subject: [PATCH] dmime: Implement IDirectMusicSegment8 Download
|
||||
---
|
||||
dlls/dmime/dmime_private.h | 2 +
|
||||
dlls/dmime/performance.c | 7 ++++
|
||||
dlls/dmime/segment.c | 80 +++++++++++++++++++++++++++++++++++++-
|
||||
3 files changed, 88 insertions(+), 1 deletion(-)
|
||||
dlls/dmime/segment.c | 84 +++++++++++++++++++++++++++++++++++++-
|
||||
3 files changed, 92 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/dlls/dmime/dmime_private.h b/dlls/dmime/dmime_private.h
|
||||
index eacde4b46be..cd34378b66e 100644
|
||||
@ -23,7 +23,7 @@ index eacde4b46be..cd34378b66e 100644
|
||||
* Auxiliary definitions
|
||||
*/
|
||||
diff --git a/dlls/dmime/performance.c b/dlls/dmime/performance.c
|
||||
index d8624427423..a707de39d50 100644
|
||||
index 111d7c60568..8a418b8df13 100644
|
||||
--- a/dlls/dmime/performance.c
|
||||
+++ b/dlls/dmime/performance.c
|
||||
@@ -251,6 +251,13 @@ static inline struct performance *impl_from_IDirectMusicPerformance8(IDirectMusi
|
||||
@ -41,7 +41,7 @@ index d8624427423..a707de39d50 100644
|
||||
static HRESULT WINAPI performance_QueryInterface(IDirectMusicPerformance8 *iface, REFIID riid, void **ret_iface)
|
||||
{
|
||||
diff --git a/dlls/dmime/segment.c b/dlls/dmime/segment.c
|
||||
index a72ec786623..ebee90eee92 100644
|
||||
index af7729f34b9..284564749df 100644
|
||||
--- a/dlls/dmime/segment.c
|
||||
+++ b/dlls/dmime/segment.c
|
||||
@@ -54,6 +54,7 @@ struct segment
|
||||
@ -61,11 +61,10 @@ index a72ec786623..ebee90eee92 100644
|
||||
if (This->wave_data)
|
||||
free(This->wave_data);
|
||||
|
||||
@@ -517,7 +520,82 @@ static HRESULT WINAPI segment_Compose(IDirectMusicSegment8 *iface, MUSIC_TIME mt
|
||||
static HRESULT WINAPI segment_Download(IDirectMusicSegment8 *iface, IUnknown *pAudioPath)
|
||||
@@ -533,8 +536,87 @@ static HRESULT WINAPI segment_Compose(IDirectMusicSegment8 *iface, MUSIC_TIME mt
|
||||
static HRESULT WINAPI segment_Download(IDirectMusicSegment8 *iface, IUnknown *audio_path)
|
||||
{
|
||||
struct segment *This = impl_from_IDirectMusicSegment8(iface);
|
||||
- FIXME("(%p, %p): stub\n", This, pAudioPath);
|
||||
+ IDirectMusicPerformance8 *perf;
|
||||
+ IDirectMusicAudioPath *audio;
|
||||
+ IDirectSound *dsound;
|
||||
@ -75,11 +74,16 @@ index a72ec786623..ebee90eee92 100644
|
||||
+ DWORD size;
|
||||
+ DWORD buffer = 0;
|
||||
+
|
||||
+ TRACE("(%p, %p)\n", This, pAudioPath);
|
||||
TRACE("(%p, %p)\n", This, audio_path);
|
||||
- return IDirectMusicSegment8_SetParam(iface, &GUID_DownloadToAudioPath, -1, DMUS_SEG_ALLTRACKS, 0, audio_path);
|
||||
+
|
||||
+ if (!pAudioPath)
|
||||
+ if (!audio_path)
|
||||
+ return E_INVALIDARG;
|
||||
+
|
||||
+ hr = IDirectMusicSegment8_SetParam(iface, &GUID_DownloadToAudioPath, -1, DMUS_SEG_ALLTRACKS, 0, audio_path);
|
||||
+ if (FAILED(hr))
|
||||
+ return hr;
|
||||
+
|
||||
+ if (This->buffer)
|
||||
+ {
|
||||
+ TRACE("Using Cached buffer\n");
|
||||
@ -87,11 +91,11 @@ index a72ec786623..ebee90eee92 100644
|
||||
+ }
|
||||
+
|
||||
+ /* pAudioPath can either be IDirectMusicAudioPath or IDirectMusicPerformance */
|
||||
+ hr = IUnknown_QueryInterface(pAudioPath, &IID_IDirectMusicPerformance8, (void**)&perf);
|
||||
+ hr = IUnknown_QueryInterface(audio_path, &IID_IDirectMusicPerformance8, (void**)&perf);
|
||||
+ if (FAILED(hr))
|
||||
+ {
|
||||
+ TRACE("Checking for IDirectMusicAudioPath interface\n");
|
||||
+ hr = IUnknown_QueryInterface(pAudioPath, &IID_IDirectMusicAudioPath, (void**)&audio);
|
||||
+ hr = IUnknown_QueryInterface(audio_path, &IID_IDirectMusicAudioPath, (void**)&audio);
|
||||
+ if (FAILED(hr))
|
||||
+ {
|
||||
+ WARN("Cannot query for IDirectMusicAudioPath\n");
|
||||
@ -142,9 +146,10 @@ index a72ec786623..ebee90eee92 100644
|
||||
+ hr = IDirectSoundBuffer_Unlock(This->buffer, data, This->data_size, NULL, 0);
|
||||
+ TRACE("IDirectSoundBuffer_Unlock hr 0x%08lx\n", hr);
|
||||
+
|
||||
return S_OK;
|
||||
+ return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI segment_Unload(IDirectMusicSegment8 *iface, IUnknown *audio_path)
|
||||
--
|
||||
2.40.1
|
||||
2.42.0
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From ea9bd0ec85254305b5783e1890ded6b21d200f41 Mon Sep 17 00:00:00 2001
|
||||
From 5c84cc44881073aa756e4797a776acbde4d063ae Mon Sep 17 00:00:00 2001
|
||||
From: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
|
||||
Date: Mon, 12 Dec 2022 15:20:10 +1100
|
||||
Subject: [PATCH] dmime: Play a sound in IDirectMusicPerformance8 PlaySegmentEx
|
||||
@ -22,10 +22,10 @@ index cd34378b66e..c83f6675333 100644
|
||||
/*****************************************************************************
|
||||
* Auxiliary definitions
|
||||
diff --git a/dlls/dmime/performance.c b/dlls/dmime/performance.c
|
||||
index a707de39d50..2b09814cd6b 100644
|
||||
index 8a418b8df13..a0dbdbd5aad 100644
|
||||
--- a/dlls/dmime/performance.c
|
||||
+++ b/dlls/dmime/performance.c
|
||||
@@ -1053,13 +1053,26 @@ static HRESULT WINAPI performance_PlaySegmentEx(IDirectMusicPerformance8 *iface,
|
||||
@@ -1075,13 +1075,26 @@ static HRESULT WINAPI performance_PlaySegmentEx(IDirectMusicPerformance8 *iface,
|
||||
WCHAR *pwzSegmentName, IUnknown *pTransition, DWORD dwFlags, __int64 i64StartTime,
|
||||
IDirectMusicSegmentState **ppSegmentState, IUnknown *pFrom, IUnknown *pAudioPath)
|
||||
{
|
||||
@ -59,7 +59,7 @@ index a707de39d50..2b09814cd6b 100644
|
||||
|
||||
static HRESULT WINAPI performance_StopEx(IDirectMusicPerformance8 *iface, IUnknown *pObjectToStop,
|
||||
diff --git a/dlls/dmime/segment.c b/dlls/dmime/segment.c
|
||||
index ebee90eee92..8482cb21d34 100644
|
||||
index 284564749df..af76258c979 100644
|
||||
--- a/dlls/dmime/segment.c
|
||||
+++ b/dlls/dmime/segment.c
|
||||
@@ -64,6 +64,12 @@ static inline struct segment *impl_from_IDirectMusicSegment8(IDirectMusicSegment
|
||||
@ -76,5 +76,5 @@ index ebee90eee92..8482cb21d34 100644
|
||||
{
|
||||
struct segment *This = impl_from_IDirectMusicSegment8(iface);
|
||||
--
|
||||
2.40.1
|
||||
2.42.0
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 70e0b924b2c89bae3f5723c6397fb00df6283586 Mon Sep 17 00:00:00 2001
|
||||
From 79fbd3342a3e5c7cb2198bf2f0412db1df4b1fce Mon Sep 17 00:00:00 2001
|
||||
From: Louis Lenders <xerox.xerox2000x@gmail.com>
|
||||
Date: Thu, 4 Nov 2021 21:01:24 +1100
|
||||
Subject: [PATCH] shell32: Append .exe when registry lookup fails first time
|
||||
@ -8,12 +8,12 @@ Subject: [PATCH] shell32: Append .exe when registry lookup fails first time
|
||||
1 file changed, 4 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/dlls/shell32/shlexec.c b/dlls/shell32/shlexec.c
|
||||
index d24b597181f..674e1e3b0c4 100644
|
||||
index 069b96a51a1..5033330b60c 100644
|
||||
--- a/dlls/shell32/shlexec.c
|
||||
+++ b/dlls/shell32/shlexec.c
|
||||
@@ -457,7 +457,10 @@ static BOOL SHELL_TryAppPathW( LPCWSTR szName, LPWSTR lpResult, WCHAR **env)
|
||||
lstrcpyW(buffer, L"Software\\Microsoft\\Windows\\CurrentVersion\\App Paths\\");
|
||||
lstrcatW(buffer, szName);
|
||||
@@ -459,7 +459,10 @@ static BOOL SHELL_TryAppPathW( LPCWSTR szName, LPWSTR lpResult, WCHAR **env)
|
||||
|
||||
wcscat(buffer, szName);
|
||||
res = RegOpenKeyExW(HKEY_LOCAL_MACHINE, buffer, 0, KEY_READ, &hkApp);
|
||||
- if (res) goto end;
|
||||
+ if (res)
|
||||
@ -24,5 +24,5 @@ index d24b597181f..674e1e3b0c4 100644
|
||||
len = MAX_PATH*sizeof(WCHAR);
|
||||
res = RegQueryValueW(hkApp, NULL, lpResult, &len);
|
||||
--
|
||||
2.33.0
|
||||
2.42.0
|
||||
|
||||
|
@ -1 +1 @@
|
||||
9e0487c4cc36cdbf915d35222c875d23f54958ae
|
||||
3db7506221e44e8091887d7eb42fe1666d422166
|
||||
|
Loading…
Reference in New Issue
Block a user