diff options
author | Colin Guthrie <cguthrie@mandriva.org> | 2010-06-06 21:19:34 +0100 |
---|---|---|
committer | Colin Guthrie <cguthrie@mandriva.org> | 2010-07-15 12:47:29 +0100 |
commit | 6c8660abd27b8e0c733fad0e03545fd9b9378f8b (patch) | |
tree | e78c55473b366b6d7ad6c64b0d37d18aa312f8de | |
parent | 65f89dca7ce1a7c65e78d452437eae6c9466d763 (diff) |
alsa: Fix assertion on mmap_write (triggered via a52 plugin)
-rw-r--r-- | src/modules/alsa/alsa-sink.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/modules/alsa/alsa-sink.c b/src/modules/alsa/alsa-sink.c index 02b5a02b..cc7baf2c 100644 --- a/src/modules/alsa/alsa-sink.c +++ b/src/modules/alsa/alsa-sink.c @@ -607,6 +607,9 @@ static int mmap_write(struct userdata *u, pa_usec_t *sleep_usec, pa_bool_t polle if (PA_UNLIKELY((sframes = snd_pcm_mmap_commit(u->pcm_handle, offset, frames)) < 0)) { + if (!after_avail && (int) sframes == -EAGAIN) + break; + if ((r = try_recover(u, "snd_pcm_mmap_commit", (int) sframes)) == 0) continue; |