mirror of
https://git.ffmpeg.org/ffmpeg.git
synced 2026-10-24 02:09:03 +03:00
avcodec/rv34: do not copy an unused reference line in the edge emulation
The luma interpolation filters read two lines above and three lines below a block, so rv34_mc() needs 8 * height + 5 reference lines, but it had emulated_edge_mc() copy one more. Fixes: data race between rv40_loop_filter() and rv34_mc() under frame threading
This commit is contained in:
committed by
michaelni
parent
9e17d6c9f1
commit
709f8fecec
@@ -755,7 +755,7 @@ static inline void rv34_mc(RV34DecContext *r, const int block_type,
|
||||
srcY -= 2 + 2*s->linesize;
|
||||
s->vdsp.emulated_edge_mc(s->sc.edge_emu_buffer, srcY,
|
||||
s->linesize, s->linesize,
|
||||
(width << 3) + 6, (height << 3) + 6,
|
||||
(width << 3) + 6, (height << 3) + 5,
|
||||
src_x - 2, src_y - 2,
|
||||
s->h_edge_pos, s->v_edge_pos);
|
||||
srcY = s->sc.edge_emu_buffer + 2 + 2*s->linesize;
|
||||
|
||||
Reference in New Issue
Block a user