It was reallocated even if the exisiting buffer is larger than needed
one, thus unnecessary shrinking it.
>From 2b8cea72a69abe6564367fb2149be936d2ffb916 Mon Sep 17 00:00:00 2001
From: Artyom Lebedev <vagran....@gmail.com>
Date: Wed, 19 Dec 2018 11:49:22 +0200
Subject: [PATCH] Fix unnecessary buffer reallocotion in
ffio_ensure_seekback().
To: ffmpeg-devel@ffmpeg.org
---
libavformat/aviobuf.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/libavformat/aviobuf.c b/libavformat/aviobuf.c
index 5a33f82..b867fdd 100644
--- a/libavformat/aviobuf.c
+++ b/libavformat/aviobuf.c
@@ -1063,6 +1063,9 @@ int ffio_ensure_seekback(AVIOContext *s, int64_t buf_size)
return 0;
av_assert0(!s->write_flag);
+ if (s->buffer_size >= buf_size)
+ return 0;
+
buffer = av_malloc(buf_size);
if (!buffer)
return AVERROR(ENOMEM);
--
2.7.4
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel