)]}'
{
  "commit": "29071a418e1a12fb2f614f962c24f1417153d7fc",
  "tree": "5e4397233cd86f562f35369b2380a53bae8b2bab",
  "parents": [
    "c731d6a4f19eea861ceb2ff31399420b2452eb74"
  ],
  "author": {
    "name": "Alexander Voronov",
    "email": "avoronov@graphics.cs.msu.ru",
    "time": "Tue Sep 09 14:56:00 2014 +0400"
  },
  "committer": {
    "name": "Alexander Voronov",
    "email": "avoronov@graphics.cs.msu.ru",
    "time": "Mon Sep 15 17:50:20 2014 +0400"
  },
  "message": "Fix invalid memory access on 2x downscale.\n\nThe issue was discovered on bitstream with 2x vertical downscale. For\nzero MVs, y_pad is set to 1 only when vertical convolution is\nrequired. The original code assumes that for y_step_q4 \u003d\u003d 32 we don\u0027t\nperform vertical convolution. But vp9_setup_scale_factors_for_frame()\nsets convolve functions so that when x_step and y_step are both not\nequal to 16, convolve in both directions is performed. And convolve()\nunconditionally subtracts one stride from source pointer when calls\nconvolve_horiz(). This leads to invalid memory access.\n\nChange-Id: I882dfa6081a58e172b5ffa55842bfcd6727f10bf\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "86ae64839130d7c8f5bb35cf71c2aa8d84694e28",
      "old_mode": 33188,
      "old_path": "vp9/common/vp9_reconinter.c",
      "new_id": "65c87596bd66cacbc99ea70703889504e1088d12",
      "new_mode": 33188,
      "new_path": "vp9/common/vp9_reconinter.c"
    }
  ]
}
