break;
}
state = snd_pcm_state(pcm);
+ if (state == SND_PCM_STATE_XRUN) {
+ err = xrun(pcm);
+ if (err < 0)
+ break;
+ state = snd_pcm_state(pcm);
+ }
if (state == SND_PCM_STATE_SUSPENDED) {
err = resume(pcm);
if (err < 0)
break;
}
state = snd_pcm_state(pcm);
+ if (state == SND_PCM_STATE_XRUN) {
+ err = xrun(pcm);
+ if (err < 0)
+ break;
+ state = snd_pcm_state(pcm);
+ }
if (state == SND_PCM_STATE_SUSPENDED) {
err = resume(pcm);
if (err < 0)
break;
}
state = snd_pcm_state(pcm);
+ if (state == SND_PCM_STATE_XRUN) {
+ err = xrun(pcm);
+ if (err < 0)
+ break;
+ state = snd_pcm_state(pcm);
+ }
if (state == SND_PCM_STATE_SUSPENDED) {
err = resume(pcm);
if (err < 0)
err = -EINVAL;
break;
}
+ if (state == SND_PCM_STATE_XRUN) {
+ err = xrun(pcm);
+ if (err < 0)
+ break;
+ state = snd_pcm_state(pcm);
+ }
state = snd_pcm_state(pcm);
if (state == SND_PCM_STATE_SUSPENDED) {
err = resume(pcm);