diff options
author | Michael Niedermayer <michael@niedermayer.cc> | 2015-08-21 03:02:55 +0200 |
---|---|---|
committer | Michael Niedermayer <michael@niedermayer.cc> | 2015-11-26 16:58:31 +0100 |
commit | 58e424cdeedcbdceadd9bc8444745ea2da277d13 (patch) | |
tree | 39648a91eadf8e5f3e5c594e23d107801cf64775 | |
parent | 5ab1f188534aaf44a43ccebccf0ffacd914beef5 (diff) | |
download | ffmpeg-58e424cdeedcbdceadd9bc8444745ea2da277d13.tar.gz |
ffmpeg: Check av_parser_change() for failure
No testcase known
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
(cherry picked from commit ac0ba6f233698f02ebb75b03242e94333dbe13d4)
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-rw-r--r-- | ffmpeg.c | 9 |
1 files changed, 7 insertions, 2 deletions
@@ -1743,10 +1743,15 @@ static void do_streamcopy(InputStream *ist, OutputStream *ost, const AVPacket *p && ost->enc_ctx->codec_id != AV_CODEC_ID_MPEG2VIDEO && ost->enc_ctx->codec_id != AV_CODEC_ID_VC1 ) { - if (av_parser_change(ost->parser, ost->st->codec, + int ret = av_parser_change(ost->parser, ost->st->codec, &opkt.data, &opkt.size, pkt->data, pkt->size, - pkt->flags & AV_PKT_FLAG_KEY)) { + pkt->flags & AV_PKT_FLAG_KEY); + if (ret < 0) { + av_log(NULL, AV_LOG_FATAL, "av_parser_change failed\n"); + exit_program(1); + } + if (ret) { opkt.buf = av_buffer_create(opkt.data, opkt.size, av_buffer_default_free, NULL, 0); if (!opkt.buf) exit_program(1); |