avfilter/w3fdif: do not write to line before start line

That line has been written by previous job.
Fix tsan warning.

Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Muhammad Faiz <mfcc64@gmail.com>
This commit is contained in:
Muhammad Faiz 2017-07-22 18:46:07 +07:00
parent 6a6eec485d
commit 7e9f550003

View File

@ -366,7 +366,7 @@ static int deinterlace_slice(AVFilterContext *ctx, void *arg, int jobnr, int nb_
int j, y_in, y_out;
/* copy unchanged the lines of the field */
y_out = start + (s->field == cur->top_field_first) - (start & 1);
y_out = start + ((s->field == cur->top_field_first) ^ (start & 1));
in_line = cur_data + (y_out * cur_line_stride);
out_line = dst_data + (y_out * dst_line_stride);
@ -379,7 +379,7 @@ static int deinterlace_slice(AVFilterContext *ctx, void *arg, int jobnr, int nb_
}
/* interpolate other lines of the field */
y_out = start + (s->field != cur->top_field_first) - (start & 1);
y_out = start + ((s->field != cur->top_field_first) ^ (start & 1));
out_line = dst_data + (y_out * dst_line_stride);