You've already forked wine-staging
mirror of
https://gitlab.winehq.org/wine/wine-staging.git
synced 2025-09-12 18:50:20 -07:00
Rebase against b8719736c5a022fa9c50f64adfc3ef58b40460f2.
This commit is contained in:
@@ -1,60 +0,0 @@
|
||||
From 34fad63be385d80ebee850eb4ae613ea23f758b3 Mon Sep 17 00:00:00 2001
|
||||
From: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
|
||||
Date: Fri, 14 Aug 2020 17:16:07 +1000
|
||||
Subject: [PATCH 1/3] xactengine3_7: Implement IXACT3Engine PrepareWave
|
||||
|
||||
v2: Deal with FACTAudioEngine_PrepareWave isn't implemented.
|
||||
|
||||
Wine-bug: https://bugs.winehq.org/show_bug.cgi?id=49689
|
||||
|
||||
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
|
||||
---
|
||||
dlls/xactengine3_7/xact_dll.c | 32 ++++++++++++++++++++++++++++++--
|
||||
1 file changed, 30 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/dlls/xactengine3_7/xact_dll.c b/dlls/xactengine3_7/xact_dll.c
|
||||
index c5f96decb72..5bcd8a6202c 100644
|
||||
--- a/dlls/xactengine3_7/xact_dll.c
|
||||
+++ b/dlls/xactengine3_7/xact_dll.c
|
||||
@@ -986,8 +986,36 @@ static HRESULT WINAPI IXACT3EngineImpl_PrepareWave(IXACT3Engine *iface,
|
||||
IXACT3Wave **ppWave)
|
||||
{
|
||||
XACT3EngineImpl *This = impl_from_IXACT3Engine(iface);
|
||||
- FIXME("(%p): stub!\n", This);
|
||||
- return E_NOTIMPL;
|
||||
+ XACT3WaveImpl *wave;
|
||||
+ FACTWave *fwave = NULL;
|
||||
+ UINT ret;
|
||||
+
|
||||
+ TRACE("(%p)->(0x%08x, %s, %d, %d, %d, %d, %p)\n", This, dwFlags, debugstr_a(szWavePath),
|
||||
+ wStreamingPacketSize, dwAlignment, dwPlayOffset, nLoopCount, ppWave);
|
||||
+
|
||||
+ ret = FACTAudioEngine_PrepareWave(This->fact_engine, dwFlags, szWavePath, wStreamingPacketSize,
|
||||
+ dwAlignment, dwPlayOffset, nLoopCount, &fwave);
|
||||
+ if(ret != 0 || !fwave)
|
||||
+ {
|
||||
+ ERR("Failed to CreateWave: %d (%p)\n", ret, fwave);
|
||||
+ return E_FAIL;
|
||||
+ }
|
||||
+
|
||||
+ wave = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(*wave));
|
||||
+ if (!wave)
|
||||
+ {
|
||||
+ FACTWave_Destroy(fwave);
|
||||
+ ERR("Failed to allocate XACT3WaveImpl!");
|
||||
+ return E_OUTOFMEMORY;
|
||||
+ }
|
||||
+
|
||||
+ wave->IXACT3Wave_iface.lpVtbl = &XACT3Wave_Vtbl;
|
||||
+ wave->fact_wave = fwave;
|
||||
+ *ppWave = &wave->IXACT3Wave_iface;
|
||||
+
|
||||
+ TRACE("Created Wave: %p\n", wave);
|
||||
+
|
||||
+ return S_OK;
|
||||
}
|
||||
|
||||
enum {
|
||||
--
|
||||
2.28.0
|
||||
|
Reference in New Issue
Block a user