diff --git a/Audio/Output/OutputCoreAudio.m b/Audio/Output/OutputCoreAudio.m index 065e65c0d..af251097e 100644 --- a/Audio/Output/OutputCoreAudio.m +++ b/Audio/Output/OutputCoreAudio.m @@ -733,8 +733,11 @@ default_device_changed(AudioObjectID inObjectID, UInt32 inNumberAddresses, const - (void)stop { if (stopNext && started && !paused) { - while (![[outputController buffer] isEmpty]) + while (![[outputController buffer] isEmpty]) { + [writeSemaphore signal]; + [readSemaphore signal]; usleep(500); + } } if (stopNext) { stopNext = NO;