summaryrefslogtreecommitdiff
path: root/libavfilter/vf_w3fdif.c
diff options
context:
space:
mode:
authorMuhammad Faiz <mfcc64@gmail.com>2017-07-22 18:46:07 +0700
committerMuhammad Faiz <mfcc64@gmail.com>2017-07-23 20:32:42 +0700
commit7e9f5500039a31148dc971270ab569015e0ea247 (patch)
treecc8720781deaf0f19ab6586143e144a7b5d32457 /libavfilter/vf_w3fdif.c
parent6a6eec485d23b0c47a7cfeb94995db1be91c0e1a (diff)
downloadffmpeg-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>
Diffstat (limited to 'libavfilter/vf_w3fdif.c')
-rw-r--r--libavfilter/vf_w3fdif.c4
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);