[PATCH 02/11] winecoreaudio: Release the correct stream on init failure.
Signed-off-by: Huw Davies <huw(a)codeweavers.com> --- dlls/winecoreaudio.drv/mmdevdrv.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/dlls/winecoreaudio.drv/mmdevdrv.c b/dlls/winecoreaudio.drv/mmdevdrv.c index aa051cb3d61..cc37bebdc77 100644 --- a/dlls/winecoreaudio.drv/mmdevdrv.c +++ b/dlls/winecoreaudio.drv/mmdevdrv.c @@ -764,6 +764,7 @@ static HRESULT WINAPI AudioClient_Initialize(IAudioClient3 *iface, params.duration = duration; params.period = period; params.fmt = fmt; + params.stream = NULL; UNIX_CALL(create_stream, ¶ms); if(FAILED(params.result)) goto end; @@ -791,7 +792,7 @@ static HRESULT WINAPI AudioClient_Initialize(IAudioClient3 *iface, end: if(FAILED(params.result)){ if(params.stream){ - release_params.stream = This->stream; + release_params.stream = params.stream; UNIX_CALL(release_stream, &release_params); } HeapFree(GetProcessHeap(), 0, This->vols); -- 2.23.0
Signed-off-by: Andrew Eikum <aeikum(a)codeweavers.com> On Wed, Nov 24, 2021 at 11:26:43AM +0000, Huw Davies wrote:
Signed-off-by: Huw Davies <huw(a)codeweavers.com> --- dlls/winecoreaudio.drv/mmdevdrv.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/dlls/winecoreaudio.drv/mmdevdrv.c b/dlls/winecoreaudio.drv/mmdevdrv.c index aa051cb3d61..cc37bebdc77 100644 --- a/dlls/winecoreaudio.drv/mmdevdrv.c +++ b/dlls/winecoreaudio.drv/mmdevdrv.c @@ -764,6 +764,7 @@ static HRESULT WINAPI AudioClient_Initialize(IAudioClient3 *iface, params.duration = duration; params.period = period; params.fmt = fmt; + params.stream = NULL;
UNIX_CALL(create_stream, ¶ms); if(FAILED(params.result)) goto end; @@ -791,7 +792,7 @@ static HRESULT WINAPI AudioClient_Initialize(IAudioClient3 *iface, end: if(FAILED(params.result)){ if(params.stream){ - release_params.stream = This->stream; + release_params.stream = params.stream; UNIX_CALL(release_stream, &release_params); } HeapFree(GetProcessHeap(), 0, This->vols); -- 2.23.0
participants (2)
-
Andrew Eikum -
Huw Davies