diff options
author | Muhammad Faiz <mfcc64@gmail.com> | 2017-07-22 18:46:07 +0700 |
---|---|---|
committer | Muhammad Faiz <mfcc64@gmail.com> | 2017-07-23 20:32:42 +0700 |
commit | 7e9f5500039a31148dc971270ab569015e0ea247 (patch) | |
tree | cc8720781deaf0f19ab6586143e144a7b5d32457 | |
parent | 6a6eec485d23b0c47a7cfeb94995db1be91c0e1a (diff) | |
download | ffmpeg-7e9f5500039a31148dc971270ab569015e0ea247.tar.gz |
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>
-rw-r--r-- | libavfilter/vf_w3fdif.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/libavfilter/vf_w3fdif.c b/libavfilter/vf_w3fdif.c index b7872db341..c6a6550778 100644 --- a/libavfilter/vf_w3fdif.c +++ b/libavfilter/vf_w3fdif.c @@ -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); |