[FFmpeg-cvslog] avformat/westwood_vqa: Check ffio_ensure_seekback()

Andreas Rheinhardt git at videolan.org
Sat May 25 15:09:16 EEST 2024


ffmpeg | branch: master | Andreas Rheinhardt <andreas.rheinhardt at outlook.com> | Wed May 22 06:51:26 2024 +0200| [6dc8d4eea828c119c49b7b5742f7a6f9989b720b] | committer: Andreas Rheinhardt

avformat/westwood_vqa: Check ffio_ensure_seekback()

Fixes Coverity issue #1598405.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at outlook.com>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=6dc8d4eea828c119c49b7b5742f7a6f9989b720b
---

 libavformat/westwood_vqa.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/libavformat/westwood_vqa.c b/libavformat/westwood_vqa.c
index 3a31e3f5e8..9755fcc9c1 100644
--- a/libavformat/westwood_vqa.c
+++ b/libavformat/westwood_vqa.c
@@ -201,8 +201,10 @@ static int wsvqa_read_packet(AVFormatContext *s,
             /* We need a big seekback buffer because there can be SNxx, VIEW and ZBUF
              * chunks (<512 KiB total) in the stream before we read VQFR (<256 KiB) and
              * seek back here. */
-            ffio_ensure_seekback(pb, wsvqa->vqfl_chunk_size + (512 + 256) * 1024);
+            ret = ffio_ensure_seekback(pb, wsvqa->vqfl_chunk_size + (512 + 256) * 1024);
             avio_skip(pb, chunk_size + skip_byte);
+            if (ret < 0)
+                return ret;
             continue;
         } else if ((chunk_type == SND0_TAG) || (chunk_type == SND1_TAG) ||
             (chunk_type == SND2_TAG) || (chunk_type == VQFR_TAG)) {



More information about the ffmpeg-cvslog mailing list