Mercurial > audlegacy-plugins
diff src/alsa/audio.c @ 885:1d8d643134db trunk
[svn] - alsa: handle errors on snd_pcm_wait (xrun, supend)
| author | giacomo |
|---|---|
| date | Wed, 21 Mar 2007 05:18:25 -0700 |
| parents | c7daa70ffe7e |
| children | 7e24265fe540 |
line wrap: on
line diff
--- a/src/alsa/audio.c Wed Mar 21 02:32:49 2007 -0700 +++ b/src/alsa/audio.c Wed Mar 21 05:18:25 2007 -0700 @@ -837,10 +837,15 @@ if (!paused && !prebuffer && get_thread_buffer_filled() > hw_period_size_in) { - if (snd_pcm_wait(alsa_pcm, 10) > 0) + int wr = snd_pcm_wait(alsa_pcm, 10); + if (wr > 0) { alsa_write_out_thread_data(); } + else if (wr < 0) + { + alsa_handle_error(wr); + } } else xmms_usleep(10000);
