Fix audio sync issue with fullscreen toggling

This commit is contained in:
Zoran Vuckovic 2017-04-28 22:58:06 +02:00
parent aed6fd8082
commit f3a55f1036

View File

@ -560,12 +560,13 @@ static void *wasapi_init(const char *dev_id, unsigned rate, unsigned latency,
AUDCLNT_BUFFERFLAGS_SILENT);
WASAPI_HR_CHECK(hr, "IAudioRenderClient::ReleaseBuffer", goto error);
/* TODO: remove next three lines after
/* TODO: remove next four lines after
"Pause when menu activated" option and
fullscreen toggling are fixed */
hr = w->client->lpVtbl->Start(w->client);
WASAPI_HR_CHECK(hr, "IAudioClient::Start", goto error);
w->running = true;
w->blocking = settings->bools.audio_sync;
return w;
@ -723,7 +724,7 @@ static ssize_t wasapi_write(void *wh, const void *data, size_t size)
if (w->blocking)
{
for (writen = 0, ir = -1; writen < size && ir; writen += ir)
for (writen = 0, ir = -1; writen < size; writen += ir)
{
if (w->exclusive)
ir = wasapi_write_ex(w, data + writen, size - writen);