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@xxxxxxxxxxxxxxx>
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;