| Index: source/libvpx/vp9/common/vp9_entropymode.c
|
| ===================================================================
|
| --- source/libvpx/vp9/common/vp9_entropymode.c (revision 293081)
|
| +++ source/libvpx/vp9/common/vp9_entropymode.c (working copy)
|
| @@ -350,7 +350,7 @@
|
|
|
| void vp9_adapt_mode_probs(VP9_COMMON *cm) {
|
| int i, j;
|
| - FRAME_CONTEXT *fc = &cm->fc;
|
| + FRAME_CONTEXT *fc = cm->fc;
|
| const FRAME_CONTEXT *pre_fc = &cm->frame_contexts[cm->frame_context_idx];
|
| const FRAME_COUNTS *counts = &cm->counts;
|
|
|
| @@ -451,7 +451,7 @@
|
| lf->last_sharpness_level = -1;
|
|
|
| vp9_default_coef_probs(cm);
|
| - vp9_init_mode_probs(&cm->fc);
|
| + vp9_init_mode_probs(cm->fc);
|
| vp9_init_mv_probs(cm);
|
|
|
| if (cm->frame_type == KEY_FRAME ||
|
| @@ -458,13 +458,14 @@
|
| cm->error_resilient_mode || cm->reset_frame_context == 3) {
|
| // Reset all frame contexts.
|
| for (i = 0; i < FRAME_CONTEXTS; ++i)
|
| - cm->frame_contexts[i] = cm->fc;
|
| + cm->frame_contexts[i] = *cm->fc;
|
| } else if (cm->reset_frame_context == 2) {
|
| // Reset only the frame context specified in the frame header.
|
| - cm->frame_contexts[cm->frame_context_idx] = cm->fc;
|
| + cm->frame_contexts[cm->frame_context_idx] = *cm->fc;
|
| }
|
|
|
| - if (frame_is_intra_only(cm))
|
| + // prev_mip will only be allocated in encoder.
|
| + if (frame_is_intra_only(cm) && cm->prev_mip)
|
| vpx_memset(cm->prev_mip, 0, cm->mi_stride * (cm->mi_rows + 1) *
|
| sizeof(*cm->prev_mip));
|
|
|
|
|