)]}'
{
  "commit": "e161f898a072dc02b5327cd4e1b5ced4c6b93456",
  "tree": "d1f9ed4508e4f65815adb7edcbd891106ab00629",
  "parents": [
    "8fbd65b2f354e1d7059f8b1899f3f0373d1b3e2a"
  ],
  "author": {
    "name": "Marco Paniconi",
    "email": "marpan@google.com",
    "time": "Fri Oct 09 15:15:11 2026 +0000"
  },
  "committer": {
    "name": "Marco Paniconi",
    "email": "marpan@google.com",
    "time": "Mon Oct 12 08:39:30 2026 -0700"
  },
  "message": "rtc: Fix uninitialized mi fields in setup_planes\n\nIn setup_planes(), mi-\u003eref_frame, mi-\u003ebsize, mi-\u003emv[0].as_int, and\nmi-\u003einterp_filters were only initialized inside if (use_last_ref). When\nLAST_FRAME is not used as a reference (use_last_ref \u003d\u003d 0) after a\nresolution change, mi-\u003emv[0].as_int could retain INVALID_MV from\nalloc_mi(). In addition, in set_ref_frame_for_partition(), if\nGOLDEN_FRAME and ALTREF_FRAME had equal SADs (*y_sad_g \u003d\u003d *y_sad_alt),\nneither branch was taken, leaving mi-\u003emv[0].as_int as INVALID_MV and\ntriggering an out-of-bounds read in av1_enc_build_inter_predictor().\n\nInitialize the MB_MODE_INFO fields unconditionally in setup_planes(),\nand use \u003c\u003d when comparing *y_sad_g and *y_sad_alt in\nset_ref_frame_for_partition().\n\nUnittest added.\n\nBug: 567944558\nChange-Id: Ibe6873bd9646fd778930b73ab78d35735b64f242\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "ea2053fa432b49d6f29be6c72a3d0625350e869a",
      "old_mode": 33188,
      "old_path": "av1/encoder/var_based_part.c",
      "new_id": "2a30a1302da16e5fd4798d1891ee447b5a2fcc7e",
      "new_mode": 33188,
      "new_path": "av1/encoder/var_based_part.c"
    },
    {
      "type": "modify",
      "old_id": "3f1a290bf6aa52ba6d193e758f83951351c06730",
      "old_mode": 33188,
      "old_path": "test/encode_api_test.cc",
      "new_id": "d96d0eb5038e8b5e8dd6493594b549f0301d814a",
      "new_mode": 33188,
      "new_path": "test/encode_api_test.cc"
    }
  ]
}
