diff --git a/patches/dsound-EAX/0018-dsound-Various-improvements-to-EAX-support.patch b/patches/dsound-EAX/0018-dsound-Various-improvements-to-EAX-support.patch index 789e12fc..88b63285 100644 --- a/patches/dsound-EAX/0018-dsound-Various-improvements-to-EAX-support.patch +++ b/patches/dsound-EAX/0018-dsound-Various-improvements-to-EAX-support.patch @@ -1,4 +1,4 @@ -From 3b8dcd1ce62f9eed3e3571288101b4897ed42fc0 Mon Sep 17 00:00:00 2001 +From de001ceaf5bab22bacfd14c927bfa8c0f29c74a1 Mon Sep 17 00:00:00 2001 From: Sebastian Lackner Date: Sat, 4 Apr 2015 21:09:18 +0200 Subject: dsound: Various improvements to EAX support. @@ -16,12 +16,12 @@ update it later when necessary (-> much faster). Moreover, to avoid unnecessary locking, we initialize the EAX-specific properties always (for both the device and the buffers). --- - dlls/dsound/buffer.c | 11 ++++---- + dlls/dsound/buffer.c | 11 ++++--- dlls/dsound/dsound.c | 2 ++ dlls/dsound/dsound_eax.h | 1 + dlls/dsound/dsound_private.h | 1 + - dlls/dsound/eax.c | 66 +++++++++++++++++++------------------------- - 5 files changed, 38 insertions(+), 43 deletions(-) + dlls/dsound/eax.c | 68 +++++++++++++++++++------------------------- + 5 files changed, 39 insertions(+), 44 deletions(-) diff --git a/dlls/dsound/buffer.c b/dlls/dsound/buffer.c index c098043..3641e32 100644 @@ -74,7 +74,7 @@ index c098043..3641e32 100644 hres = DirectSoundDevice_AddBuffer(device, dsb); if (hres != DS_OK) { diff --git a/dlls/dsound/dsound.c b/dlls/dsound/dsound.c -index ed0bbba..48470b7 100644 +index 551c40a..4abb142 100644 --- a/dlls/dsound/dsound.c +++ b/dlls/dsound/dsound.c @@ -186,6 +186,8 @@ static HRESULT DirectSoundDevice_Create(DirectSoundDevice ** ppDevice) @@ -111,7 +111,7 @@ index cc55d70..a9987d0 100644 void init_eax_buffer(IDirectSoundBufferImpl *dsb) DECLSPEC_HIDDEN; void process_eax_buffer(IDirectSoundBufferImpl *dsb, float *buf, DWORD count) DECLSPEC_HIDDEN; diff --git a/dlls/dsound/eax.c b/dlls/dsound/eax.c -index a05b00e..4e98812 100644 +index a05b00e..e10156e 100644 --- a/dlls/dsound/eax.c +++ b/dlls/dsound/eax.c @@ -114,6 +114,8 @@ static const float LATE_LINE_MULTIPLIER = 4.0f; @@ -135,7 +135,15 @@ index a05b00e..4e98812 100644 out = HeapAlloc(GetProcessHeap(), 0, sizeof(float)*count*4); for (i = 0; i < count; i++) { -@@ -572,7 +579,7 @@ static unsigned int CalcLineLength(float length, unsigned int offset, unsigned i +@@ -565,14 +572,14 @@ static unsigned int CalcLineLength(float length, unsigned int offset, unsigned i + samples = NextPowerOf2(fastf2u(length * frequency) + 1); + /* All lines share a single sample buffer. */ + Delay->Mask = samples - 1; +- Delay->Line = (float*)offset; ++ Delay->Line = (float *)(ULONG_PTR)offset; + /* Return the sample count for accumulation. */ + return samples; + } static void RealizeLineOffset(float *sampleBuffer, DelayLine *Delay) { @@ -264,5 +272,5 @@ index a05b00e..4e98812 100644 switch (dwPropID) { case DSPROPERTY_EAXBUFFER_ALL: -- -2.3.3 +2.4.0