[PATCH 3/4 v2] dsound: A version 1 3d secondary buffer allows SetPan().

Andrew Eikum aeikum at codeweavers.com
Wed Dec 2 08:39:36 CST 2015


Signed-off-by: Andrew Eikum <aeikum at codeweavers.com>

On Tue, Dec 01, 2015 at 02:49:04PM +0100, Michael Stefaniuc wrote:
> For version 8 DSBCAPS_CTRL3D and DSBCAPS_CTRLPAN are mutually exclusive
> and a 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 <mstefani at redhat.de>
> ---
>  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 1a019dd..6c12f71 100644
> --- a/dlls/dsound/tests/ds3d.c
> +++ b/dlls/dsound/tests/ds3d.c
> @@ -892,7 +892,6 @@ static HRESULT test_secondary(LPGUID lpGuid, int play,
>                  rc=IDirectSoundBuffer_GetPan(secondary,&pan);
>                  ok(rc==DS_OK,"IDirectSoundBuffer_GetPan() failed, 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
> 
> 



More information about the wine-patches mailing list