summaryrefslogtreecommitdiff
path: root/libavformat/flvenc.c
diff options
context:
space:
mode:
authorAndreas Rheinhardt <andreas.rheinhardt@gmail.com>2019-12-26 11:53:35 +0100
committerMichael Niedermayer <michael@niedermayer.cc>2019-12-26 22:48:44 +0100
commitb0d0d7e4d0581ccfeea37cc3fd0d3ca9d999fbfc (patch)
tree9774329e2cf427819319126d5f73c644e05ec827 /libavformat/flvenc.c
parent28d02524a04d401fa7fca9823e3b7261a25613ab (diff)
downloadffmpeg-b0d0d7e4d0581ccfeea37cc3fd0d3ca9d999fbfc.tar.gz
avformat/flvenc: Fix leak of oversized packets
Might happen for annex B H.264. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Diffstat (limited to 'libavformat/flvenc.c')
-rw-r--r--libavformat/flvenc.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/libavformat/flvenc.c b/libavformat/flvenc.c
index f6379cbe05..1aaf0333ca 100644
--- a/libavformat/flvenc.c
+++ b/libavformat/flvenc.c
@@ -992,7 +992,8 @@ static int flv_write_packet(AVFormatContext *s, AVPacket *pkt)
if (size + flags_size >= 1<<24) {
av_log(s, AV_LOG_ERROR, "Too large packet with size %u >= %u\n",
size + flags_size, 1<<24);
- return AVERROR(EINVAL);
+ ret = AVERROR(EINVAL);
+ goto fail;
}
avio_wb24(pb, size + flags_size);