From: Davide Beatrici git@davidebeatrici.dev
--- dlls/winecoreaudio.drv/coreaudio.c | 14 +++++++------- dlls/winecoreaudio.drv/mmdevdrv.c | 2 +- dlls/winecoreaudio.drv/unixlib.h | 4 ++-- 3 files changed, 10 insertions(+), 10 deletions(-)
diff --git a/dlls/winecoreaudio.drv/coreaudio.c b/dlls/winecoreaudio.drv/coreaudio.c index abc8713b9ec..bba3a805f33 100644 --- a/dlls/winecoreaudio.drv/coreaudio.c +++ b/dlls/winecoreaudio.drv/coreaudio.c @@ -1412,12 +1412,12 @@ static NTSTATUS unix_release_render_buffer(void *args)
OSSpinLockLock(&stream->lock);
- if(!params->frames){ + if(!params->written_frames){ stream->getbuf_last = 0; params->result = S_OK; }else if(!stream->getbuf_last) params->result = AUDCLNT_E_OUT_OF_ORDER; - else if(params->frames > (stream->getbuf_last >= 0 ? stream->getbuf_last : -stream->getbuf_last)) + else if(params->written_frames > (stream->getbuf_last >= 0 ? stream->getbuf_last : -stream->getbuf_last)) params->result = AUDCLNT_E_INVALID_SIZE; else{ if(stream->getbuf_last >= 0) @@ -1426,18 +1426,18 @@ static NTSTATUS unix_release_render_buffer(void *args) buffer = stream->tmp_buffer;
if(params->flags & AUDCLNT_BUFFERFLAGS_SILENT) - silence_buffer(stream, buffer, params->frames); + silence_buffer(stream, buffer, params->written_frames);
if(stream->getbuf_last < 0) ca_wrap_buffer(stream->local_buffer, stream->wri_offs_frames * stream->fmt->nBlockAlign, stream->bufsize_frames * stream->fmt->nBlockAlign, - buffer, params->frames * stream->fmt->nBlockAlign); + buffer, params->written_frames * stream->fmt->nBlockAlign);
- stream->wri_offs_frames += params->frames; + stream->wri_offs_frames += params->written_frames; stream->wri_offs_frames %= stream->bufsize_frames; - stream->held_frames += params->frames; - stream->written_frames += params->frames; + stream->held_frames += params->written_frames; + stream->written_frames += params->written_frames; stream->getbuf_last = 0;
params->result = S_OK; diff --git a/dlls/winecoreaudio.drv/mmdevdrv.c b/dlls/winecoreaudio.drv/mmdevdrv.c index 8bbeb3b8fe4..dfad4d7527c 100644 --- a/dlls/winecoreaudio.drv/mmdevdrv.c +++ b/dlls/winecoreaudio.drv/mmdevdrv.c @@ -1286,7 +1286,7 @@ static HRESULT WINAPI AudioRenderClient_ReleaseBuffer( TRACE("(%p)->(%u, %lx)\n", This, frames, flags);
params.stream = This->stream; - params.frames = frames; + params.written_frames = frames; params.flags = flags; UNIX_CALL(release_render_buffer, ¶ms); return params.result; diff --git a/dlls/winecoreaudio.drv/unixlib.h b/dlls/winecoreaudio.drv/unixlib.h index 55ff88b37ae..3386217fddc 100644 --- a/dlls/winecoreaudio.drv/unixlib.h +++ b/dlls/winecoreaudio.drv/unixlib.h @@ -88,8 +88,8 @@ struct get_render_buffer_params struct release_render_buffer_params { stream_handle stream; - UINT32 frames; - DWORD flags; + UINT32 written_frames; + UINT flags; HRESULT result; };