X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~mdw/git/disorder/blobdiff_plain/b1f6ca8ccc002bc4529fb1f1fef562cf59a25bd5..c7a422cbe672d7ec8ef9572f00d8230e0e69f23a:/lib/uaudio-thread.c diff --git a/lib/uaudio-thread.c b/lib/uaudio-thread.c index 12a8636..e42980c 100644 --- a/lib/uaudio-thread.c +++ b/lib/uaudio-thread.c @@ -153,7 +153,7 @@ static void *uaudio_collect_thread_fn(void attribute((unused)) *arg) { static void *uaudio_play_thread_fn(void attribute((unused)) *arg) { int resync = 1; unsigned last_flags = 0; - unsigned char zero[uaudio_thread_min * uaudio_sample_size]; + unsigned char zero[uaudio_thread_max * uaudio_sample_size]; memset(zero, 0, sizeof zero); while(uaudio_thread_started) { @@ -163,7 +163,7 @@ static void *uaudio_play_thread_fn(void attribute((unused)) *arg) { unsigned flags = UAUDIO_PAUSED; if(last_flags & UAUDIO_PLAYING) flags |= UAUDIO_PAUSE; - uaudio_thread_play_callback(zero, uaudio_thread_min, + uaudio_thread_play_callback(zero, uaudio_thread_max, last_flags = flags); /* We expect the play callback to block for a reasonable period */ pthread_mutex_lock(&uaudio_thread_lock); @@ -245,12 +245,12 @@ void uaudio_thread_start(uaudio_callback *callback, NULL, uaudio_collect_thread_fn, NULL))) - fatal(e, "pthread_create"); + disorder_fatal(e, "pthread_create"); if((e = pthread_create(&uaudio_play_thread, NULL, uaudio_play_thread_fn, NULL))) - fatal(e, "pthread_create"); + disorder_fatal(e, "pthread_create"); } /** @brief Shut down background threads for audio processing */