From a43074ba17dd46878c7be447a50f9c4b5311929b Mon Sep 17 00:00:00 2001
From: Jaroslav Kysela <perex@perex.cz>
Date: Thu, 23 Apr 2020 13:43:32 +0200
Subject: [PATCH 17/21] pcm: rate - fix the remaining size calculation in
snd_pcm_rate_drain()
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
---
src/pcm/pcm_rate.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/src/pcm/pcm_rate.c b/src/pcm/pcm_rate.c
index fdcaa8de7382..21611f62c370 100644
--- a/src/pcm/pcm_rate.c
+++ b/src/pcm/pcm_rate.c
@@ -1060,6 +1060,8 @@ static int snd_pcm_rate_drain(snd_pcm_t *pcm)
snd_pcm_sw_params(rate->gen.slave, &sw_params);
size = rate->appl_ptr - rate->last_commit_ptr;
+ if (size > pcm->boundary)
+ size -= pcm->boundary;
ofs = rate->last_commit_ptr % pcm->buffer_size;
while (size > 0) {
snd_pcm_uframes_t psize, spsize;
--
2.16.4