diff options
author | Anton Khirnov <anton@khirnov.net> | 2013-08-04 18:57:39 +0200 |
---|---|---|
committer | Anton Khirnov <anton@khirnov.net> | 2013-08-04 18:57:39 +0200 |
commit | 3f5824aa18aa7b18016701123efc7e1714d56001 (patch) | |
tree | c6f1b762bb49fa8d25be7f6734dea7fab10c166c | |
parent | c2c9b7297fe6ee95788c27728b0073e38e33b94d (diff) | |
download | ffmpeg-3f5824aa18aa7b18016701123efc7e1714d56001.tar.gz |
avconv: do not use lavfi direct rendering with -deinterlace
-deinterlace allocates a temporary buffer that is freed immediately
after the frame is sent to lavfi, which results in use after free.
Disable direct rendering when -deinterlace is used.
CC:libav-stable@libav.org
Bug-id: 479
-rw-r--r-- | avconv.c | 2 |
1 files changed, 1 insertions, 1 deletions
@@ -1215,7 +1215,7 @@ static int decode_video(InputStream *ist, AVPacket *pkt, int *got_output) } for (i = 0; i < ist->nb_filters; i++) { - if (ist->st->codec->codec->capabilities & CODEC_CAP_DR1) { + if (ist->st->codec->codec->capabilities & CODEC_CAP_DR1 && !do_deinterlace) { FrameBuffer *buf = decoded_frame->opaque; AVFilterBufferRef *fb = avfilter_get_video_buffer_ref_from_arrays( decoded_frame->data, decoded_frame->linesize, |