From: Michael Stefaniuc Subject: [PATCH 3/4] dsound: A version 1 3d secondary buffer allows SetPan(). Message-Id: <20151201130034.GC5454@redhat.com> Date: Tue, 1 Dec 2015 14:00:34 +0100 For version 8 DSBCAPS_CTRL3D and DSBCAPS_CTRLPAN are mutually exclusive and a secondary sound buffer cannot be created when both flags are set. Fixes https://bugs.winehq.org/show_bug.cgi?id=15866 Signed-off-by: Michael Stefaniuc --- dlls/dsound/buffer.c | 4 +--- dlls/dsound/tests/ds3d.c | 1 - 2 files changed, 1 insertion(+), 4 deletions(-) diff --git a/dlls/dsound/buffer.c b/dlls/dsound/buffer.c index d735dc3..5aa2834 100644 --- a/dlls/dsound/buffer.c +++ b/dlls/dsound/buffer.c @@ -586,9 +586,7 @@ static HRESULT WINAPI IDirectSoundBufferImpl_SetPan(IDirectSoundBuffer8 *iface, return DSERR_INVALIDPARAM; } - /* You cannot use both pan and 3D controls */ - if (!(This->dsbd.dwFlags & DSBCAPS_CTRLPAN) || - (This->dsbd.dwFlags & DSBCAPS_CTRL3D)) { + if (!(This->dsbd.dwFlags & DSBCAPS_CTRLPAN)) { WARN("control unavailable\n"); return DSERR_CONTROLUNAVAIL; } diff --git a/dlls/dsound/tests/ds3d.c b/dlls/dsound/tests/ds3d.c index 9b15aed..e18f7eb 100644 --- a/dlls/dsound/tests/ds3d.c +++ b/dlls/dsound/tests/ds3d.c @@ -894,7 +894,6 @@ static HRESULT test_secondary(LPGUID lpGuid, int play, ok(rc==DSERR_CONTROLUNAVAIL,"IDirectSoundBuffer_GetPan() " "should have returned DSERR_CONTROLUNAVAIL, returned: %08x\n", rc); rc=IDirectSoundBuffer_SetPan(secondary,0); - todo_wine ok(rc==DS_OK,"IDirectSoundBuffer_SetPan() failed, returned: %08x\n", rc); } -- 2.1.0