Blob Blame History Raw
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