summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Niedermayer <michael@niedermayer.cc>2018-07-06 22:23:25 +0200
committerMichael Niedermayer <michael@niedermayer.cc>2018-07-08 19:45:47 +0200
commit3571bec56eb302dfe01732cc0cdcf75b35ae8211 (patch)
treee41e12e8d84cfde5a233cecc97f6cbc261167288
parent64993b613b3a296dcdc7e9b7037756bed4732b68 (diff)
downloadffmpeg-3571bec56eb302dfe01732cc0cdcf75b35ae8211.tar.gz
avformat/movenc: Check input sample count
Fixes: division by 0 Fixes: fpe_movenc.c_199_1.wav Fixes: fpe_movenc.c_199_2.wav Fixes: fpe_movenc.c_199_3.wav Fixes: fpe_movenc.c_199_4.wav Fixes: fpe_movenc.c_199_5.wav Fixes: fpe_movenc.c_199_6.wav Fixes: fpe_movenc.c_199_7.wav Found-by: #CHEN HONGXU# <HCHEN017@e.ntu.edu.sg> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc> (cherry picked from commit 3a2d21bc5f97aa0161db3ae731fc2732be6108b8) Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-rw-r--r--libavformat/movenc.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/libavformat/movenc.c b/libavformat/movenc.c
index b6cea27440..1e4b7a1309 100644
--- a/libavformat/movenc.c
+++ b/libavformat/movenc.c
@@ -4785,6 +4785,11 @@ int ff_mov_write_packet(AVFormatContext *s, AVPacket *pkt)
else
samples_in_chunk = 1;
+ if (samples_in_chunk < 1) {
+ av_log(s, AV_LOG_ERROR, "fatal error, input packet contains no samples\n");
+ return AVERROR_PATCHWELCOME;
+ }
+
/* copy extradata if it exists */
if (trk->vos_len == 0 && par->extradata_size > 0 &&
!TAG_IS_AVCI(trk->tag) &&