DO NOT MERGE libvpx: Cherry-pick 8b4c315 from upstream

Description from upstream:
vp9_alloc_context_buffers: clear cm->mi* on failure

this fixes a crash in vp9_dec_setup_mi() via
vp9_init_context_buffers() should decoding continue and the decoder
resyncs on a smaller frame

Bug: 30593752
Change-Id: Iafbf1c4114062bf796f51a6b03be71328f7bcc69
(cherry picked from commit 737c8493693243838128788fe9c3abc51f17338e)
(cherry picked from commit 3e88ffac8c80b76e15286ef8a7b3bd8fa246c761)

static int alloc_seg_map(VP9_COMMON *cm, int seg_map_size) {
 int i;

 for (i = 0; i < NUM_PING_PONG_BUFFERS; ++i) {
    cm->seg_map_array[i] = (uint8_t *)vpx_calloc(seg_map_size, 1);
 if (cm->seg_map_array[i] == NULL)
 return 1;
 }
  cm->seg_map_alloc_size = seg_map_size;

  cm->seg_map_idx = 0;
  cm->prev_seg_map_idx = 1;

  cm->current_frame_seg_map = cm->seg_map_array[cm->seg_map_idx];
 if (!cm->frame_parallel_decode)
    cm->last_frame_seg_map = cm->seg_map_array[cm->prev_seg_map_idx];

 return 0;
}

static int alloc_seg_map(VP9_COMMON *cm, int seg_map_size) {
 int i;

 for (i = 0; i < NUM_PING_PONG_BUFFERS; ++i) {
    cm->seg_map_array[i] = (uint8_t *)vpx_calloc(seg_map_size, 1);
 if (cm->seg_map_array[i] == NULL)
 return 1;
 }
  cm->seg_map_alloc_size = seg_map_size;

  cm->seg_map_idx = 0;
  cm->prev_seg_map_idx = 1;

  cm->current_frame_seg_map = cm->seg_map_array[cm->seg_map_idx];
 if (!cm->frame_parallel_decode)
    cm->last_frame_seg_map = cm->seg_map_array[cm->prev_seg_map_idx];

 return 0;
}
