[PATCH] dsound: Correctly report hardware audio buffers as unsupported.
Eduard Permyakov
epermyakov at codeweavers.com
Thu Oct 21 04:55:44 CDT 2021
Signed-off-by: Eduard Permyakov <epermyakov at codeweavers.com>
---
dlls/dsound/dsound.c | 9 ++++-----
1 file changed, 4 insertions(+), 5 deletions(-)
diff --git a/dlls/dsound/dsound.c b/dlls/dsound/dsound.c
index 3085d86e5b5..6a94d1a6670 100644
--- a/dlls/dsound/dsound.c
+++ b/dlls/dsound/dsound.c
@@ -373,7 +373,7 @@ static HRESULT DirectSoundDevice_Initialize(DirectSoundDevice ** ppDevice, LPCGU
device->drvcaps.dwPrimaryBuffers = 1;
device->drvcaps.dwMinSecondarySampleRate = DSBFREQUENCY_MIN;
device->drvcaps.dwMaxSecondarySampleRate = DSBFREQUENCY_MAX;
- device->drvcaps.dwMaxHwMixingAllBuffers = 16;
+ device->drvcaps.dwMaxHwMixingAllBuffers = 1;
device->drvcaps.dwMaxHwMixingStaticBuffers = device->drvcaps.dwMaxHwMixingAllBuffers;
device->drvcaps.dwMaxHwMixingStreamingBuffers = device->drvcaps.dwMaxHwMixingAllBuffers;
device->drvcaps.dwFreeHwMixingAllBuffers = device->drvcaps.dwMaxHwMixingAllBuffers;
@@ -435,11 +435,10 @@ static HRESULT DirectSoundDevice_CreateSoundBuffer(
}
if (!(dsbd->dwFlags & DSBCAPS_PRIMARYBUFFER) &&
- dsbd->dwFlags & DSBCAPS_LOCHARDWARE &&
- device->drvcaps.dwFreeHwMixingAllBuffers == 0)
+ dsbd->dwFlags & DSBCAPS_LOCHARDWARE)
{
- WARN("ran out of emulated hardware buffers\n");
- return DSERR_ALLOCATED;
+ WARN("unable to create hardware buffer\n");
+ return DSERR_UNSUPPORTED;
}
if (dsbd->dwFlags & DSBCAPS_PRIMARYBUFFER) {
--
2.25.1
More information about the wine-devel
mailing list