Alistair Leslie-Hughes : xactengine3_7: Explicity copy the XACT_RUNTIME_PARAMETERS members.
Alexandre Julliard
julliard at winehq.org
Mon Oct 5 15:54:59 CDT 2020
Module: wine
Branch: master
Commit: 8ea0607befc4c1ad349cd85c6587aa91a6d0220d
URL: https://source.winehq.org/git/wine.git/?a=commit;h=8ea0607befc4c1ad349cd85c6587aa91a6d0220d
Author: Alistair Leslie-Hughes <leslie_alistair at hotmail.com>
Date: Fri Oct 2 17:23:24 2020 +1000
xactengine3_7: Explicity copy the XACT_RUNTIME_PARAMETERS members.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49911
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair at hotmail.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
dlls/xactengine3_7/xact_dll.c | 17 ++++++++++++-----
1 file changed, 12 insertions(+), 5 deletions(-)
diff --git a/dlls/xactengine3_7/xact_dll.c b/dlls/xactengine3_7/xact_dll.c
index 84ed35d2c4..281aecc154 100644
--- a/dlls/xactengine3_7/xact_dll.c
+++ b/dlls/xactengine3_7/xact_dll.c
@@ -776,7 +776,16 @@ static HRESULT WINAPI IXACT3EngineImpl_Initialize(IXACT3Engine *iface,
TRACE("(%p)->(%p)\n", This, pParams);
- memcpy(¶ms, pParams, sizeof(FACTRuntimeParameters));
+ memset(¶ms, 0, sizeof(FACTRuntimeParameters));
+ /* Explicitly copy to the FAudio structure as the packing is wrong under 64 bits */
+ params.lookAheadTime = pParams->lookAheadTime;
+ params.pGlobalSettingsBuffer = pParams->pGlobalSettingsBuffer;
+ params.globalSettingsBufferSize = pParams->globalSettingsBufferSize;
+ params.globalSettingsFlags = pParams->globalSettingsFlags;
+ params.globalSettingsAllocAttributes = pParams->globalSettingsAllocAttributes;
+ params.pRendererID = (int16_t*)pParams->pRendererID;
+ params.pXAudio2 = NULL;
+ params.pMasteringVoice = NULL;
/* FIXME: pXAudio2 and pMasteringVoice are pointers to
* IXAudio2/IXAudio2MasteringVoice objects. FACT wants pointers to
@@ -789,12 +798,10 @@ static HRESULT WINAPI IXACT3EngineImpl_Initialize(IXACT3Engine *iface,
* -flibit
*/
if (pParams->pXAudio2 != NULL){
- FIXME("pXAudio2 parameter not supported! Falling back to NULL\n");
- params.pXAudio2 = NULL;
+ FIXME("pXAudio2 parameter not supported!\n");
if (pParams->pMasteringVoice != NULL){
- FIXME("pXAudio2 parameter not supported! Falling back to NULL\n");
- params.pMasteringVoice = NULL;
+ FIXME("pMasteringVoice parameter not supported!\n");
}
}
More information about the wine-cvs
mailing list