vf_fade: make sure the slice end is always in the frame
authorAnton Khirnov <anton@khirnov.net>
Thu, 24 Mar 2016 20:38:54 +0000 (21:38 +0100)
committerAnton Khirnov <anton@khirnov.net>
Fri, 25 Mar 2016 13:53:31 +0000 (14:53 +0100)
CC: libav-stable@libav.org
libavfilter/vf_fade.c

index eac0c2c..eb6d82a 100644 (file)
@@ -123,7 +123,7 @@ static int filter_slice_chroma(AVFilterContext *ctx, void *arg, int jobnr,
     AVFrame *frame = arg;
     int slice_h     = FFALIGN(frame->height / nb_jobs, 1 << s->vsub);
     int slice_start = jobnr * slice_h;
-    int slice_end   = (jobnr == nb_jobs - 1) ? frame->height : (jobnr + 1) * slice_h;
+    int slice_end   = FFMIN((jobnr + 1) * slice_h, frame->height);
     int i, j, plane;
 
     for (plane = 1; plane < 3; plane++) {