This is very close to 8379ea5e9f6bf3d50663ffb655ba5dd6a11652b4 and same
description applies. The issue probably warrants further investigation,
but for now this fix seems to work without breaking anything else.
---
libavcodec/vc1dec.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/libavcodec/vc1dec.c b/libavcodec/vc1dec.c
index 5f709ed..871c033 100644
--- a/libavcodec/vc1dec.c
+++ b/libavcodec/vc1dec.c
@@ -429,8 +429,8 @@ static void vc1_mc_1mv(VC1Context *v, int dir)
if (v->rangeredfrm || (v->mv_mode == MV_PMODE_INTENSITY_COMP)
|| s->h_edge_pos < 22 || v_edge_pos < 22
- || (unsigned)(src_x - s->mspel) > s->h_edge_pos - (mx&3) - 16 -
s->mspel * 3
- || (unsigned)(src_y - s->mspel) > v_edge_pos - (my&3) - 16 -
s->mspel * 3) {
+ || (unsigned)(src_x - 1) > s->h_edge_pos - (mx&3) - 16 - 3
+ || (unsigned)(src_y - 1) > v_edge_pos - (my&3) - 16 - 3) {
uint8_t *uvbuf = s->edge_emu_buffer + 19 * s->linesize;
srcY -= s->mspel * (1 + s->linesize);
--
1.7.4
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel