aboutsummaryrefslogtreecommitdiffstats
path: root/libavfilter
diff options
context:
space:
mode:
authorPaul B Mahol <onemda@gmail.com>2019-10-13 23:10:16 +0200
committerMichael Niedermayer <michael@niedermayer.cc>2022-05-04 18:37:30 +0200
commitc72ed4f3ebffbd5ed9713caf694dc8687a35d1c0 (patch)
tree3a32e173fa1b7ae249662b0784c5b1f4b3180f6f /libavfilter
parent278f86ece9582fd321105a54be9b7cf26b499967 (diff)
downloadffmpeg-c72ed4f3ebffbd5ed9713caf694dc8687a35d1c0.tar.gz
avfilter/vf_fieldorder: fix heap-buffer overflow
Fixes #8264 (cherry picked from commit 07050d7bdc32d82e53ee5bb727f5882323d00dba) Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Diffstat (limited to 'libavfilter')
-rw-r--r--libavfilter/vf_fieldorder.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/libavfilter/vf_fieldorder.c b/libavfilter/vf_fieldorder.c
index ca55ff1f66..5707151f1b 100644
--- a/libavfilter/vf_fieldorder.c
+++ b/libavfilter/vf_fieldorder.c
@@ -108,8 +108,8 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *frame)
s->dst_tff ? "up" : "down");
h = frame->height;
for (plane = 0; plane < 4 && frame->data[plane] && frame->linesize[plane]; plane++) {
- dst_line_step = out->linesize[plane];
- src_line_step = frame->linesize[plane];
+ dst_line_step = out->linesize[plane] * (h > 2);
+ src_line_step = frame->linesize[plane] * (h > 2);
line_size = s->line_size[plane];
dst = out->data[plane];
src = frame->data[plane];