summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--aplay/aplay.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/aplay/aplay.c b/aplay/aplay.c
index e8714d8..6e7f4ae 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)
+ goto abort;
unsigned int channel;
void *bufs[channels];
size_t offset = result;
@@ -2206,6 +2208,7 @@ static ssize_t pcm_readv(u_char **data, unsigned int channels, size_t rcount)
count -= r;
}
}
+abort:
return rcount;
}