[PATCH] Aplay: pcm_readv(): return read samples instead of requested upon abort

Rajwa, Marcin marcin.rajwa at linux.intel.com
Fri Aug 7 18:09:19 CEST 2020


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 at 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;



More information about the Alsa-devel mailing list