diff options
-rw-r--r-- | aplay/aplay.c | 5 |
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; } |