From 9e95b337cc83c1a88360e3fe73838fac5f1ded56 Mon Sep 17 00:00:00 2001 From: Roman Artiukhin Date: Thu, 22 May 2025 21:25:20 +0300 Subject: [PATCH] Codecs: mp3: Skip attempts to recover from buffer errors when the stream has ended Change-Id: I81a636b48ea1e55de1dc8911a20d84f0f73c43ad --- lib/rbcodec/codecs/mpa.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/lib/rbcodec/codecs/mpa.c b/lib/rbcodec/codecs/mpa.c index 32afe7a90f..354e8ce5e2 100644 --- a/lib/rbcodec/codecs/mpa.c +++ b/lib/rbcodec/codecs/mpa.c @@ -559,7 +559,13 @@ enum codec_status codec_run(void) /* Fill the buffer */ if (stream.next_frame) - advance_stream_buffer(stream.next_frame - stream.buffer); + { + size_t frame_size = stream.next_frame - stream.buffer; + if (frame_size == 0) + break; + + advance_stream_buffer(frame_size); + } else advance_stream_buffer(size); stream.error = 0; /* Must get new inputbuffer next time */