summaryrefslogtreecommitdiff
path: root/libs/backends/alsa
diff options
context:
space:
mode:
Diffstat (limited to 'libs/backends/alsa')
-rw-r--r--libs/backends/alsa/zita-alsa-pcmi.cc8
1 files changed, 6 insertions, 2 deletions
diff --git a/libs/backends/alsa/zita-alsa-pcmi.cc b/libs/backends/alsa/zita-alsa-pcmi.cc
index 4c5298f0d9..534d183025 100644
--- a/libs/backends/alsa/zita-alsa-pcmi.cc
+++ b/libs/backends/alsa/zita-alsa-pcmi.cc
@@ -229,14 +229,18 @@ snd_pcm_sframes_t Alsa_pcmi::pcm_wait (void)
if (_play_handle && (play_av = snd_pcm_avail_update (_play_handle)) < 0)
{
_state = -1;
- recover ();
+ if (!recover ()) {
+ _state = 1;
+ }
return 0;
}
capt_av = 999999999;
if (_capt_handle && (capt_av = snd_pcm_avail_update (_capt_handle)) < 0)
{
_state = -1;
- recover ();
+ if (!recover ()) {
+ _state = 1;
+ }
return 0;
}