diff --git a/src/alsa.cpp b/src/alsa.cpp index d1f675c..c9a60e1 100644 --- a/src/alsa.cpp +++ b/src/alsa.cpp @@ -1047,6 +1047,8 @@ static void outstream_thread_run(void *arg) { if ((snd_pcm_uframes_t)avail == osa->buffer_size_frames) { outstream->write_callback(outstream, 0, avail); + if (!osa->thread_exit_flag.test_and_set()) + return; continue; }