From: Yaowu Xu Date: Wed, 22 Jan 2014 17:10:44 +0000 (-0800) Subject: Prevent invaid memory access X-Git-Tag: v1.4.0~2614^2 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=ebe160568b163bfae72f654ee517a12d838d8595;p=libvpx Prevent invaid memory access Reading second motion vector only when it has a second ref_frame Change-Id: Ica72c1cd955832e15ceccda5e5a17b0bfcd83044 --- diff --git a/vp9/encoder/vp9_encodeframe.c b/vp9/encoder/vp9_encodeframe.c index 9966cb6ae..9d02c8f95 100644 --- a/vp9/encoder/vp9_encodeframe.c +++ b/vp9/encoder/vp9_encodeframe.c @@ -500,7 +500,7 @@ static void update_state(VP9_COMP *cpi, PICK_MODE_CONTEXT *ctx, if (is_inter_block(mbmi) && (mbmi->sb_type < BLOCK_8X8 || mbmi->mode == NEWMV)) { int_mv best_mv[2]; - for (i = 0; i < 2; ++i) + for (i = 0; i < 1 + has_second_ref(mbmi); ++i) best_mv[i].as_int = mbmi->ref_mvs[mbmi->ref_frame[i]][0].as_int; vp9_update_mv_count(cpi, x, best_mv); }