[PATCH] Aplay: pcm_readv(): return read samples instead of requested upon abort
aplay: pcm_readv(): return read samples instead of requested upon abort
This patch changes the logic of pcm_readv() when abort signal has been detected. During such condition we should return the amount of frames actually read instead of the size requested by caller.
Signed-off-by: Marcin Rajwa marcin.rajwa@linux.intel.com
diff --git a/aplay/aplay.c b/aplay/aplay.c index e8714d8..5d4b56e 100644 --- a/aplay/aplay.c +++ b/aplay/aplay.c @@ -2174,7 +2174,9 @@ static ssize_t pcm_readv(u_char **data, unsigned int channels, size_t rcount) count = chunk_size; }
- while (count > 0 && !in_aborting) { + while (count > 0) { + if (in_aborting) + return result; unsigned int channel; void *bufs[channels]; size_t offset = result;
aplay: pcm_read(): return read samples instead of requested upon abort
This patch changes the logic of pcm_read() when abort signal has been detected. During such condition we should return the amount of frames actually read instead of the size requested by caller.
Signed-off-by: Marcin Rajwa marcin.rajwa@linux.intel.com
diff --git a/aplay/aplay.c b/aplay/aplay.c index 5d4b56e..6836558 100644 --- a/aplay/aplay.c +++ b/aplay/aplay.c @@ -2135,7 +2135,9 @@ static ssize_t pcm_read(u_char *data, size_t rcount) count = chunk_size; }
- while (count > 0 && !in_aborting) { + while (count > 0) { + if (in_aborting) + return result; if (test_position) do_test_position(); check_stdin();
participants (1)
-
Rajwa, Marcin