)]}'
{
  "commit": "470f45bf29f4147d6fbd7dfd0a02a848e49f5bf4",
  "tree": "289fb8f4919c179420c13536cbbde06a4b8c27d3",
  "parents": [
    "a9a820217f98f7c8a207ec1e45a874e1fe12c478"
  ],
  "author": {
    "name": "Marcel van Lohuizen",
    "email": "mpvl@golang.org",
    "time": "Tue Apr 25 20:31:26 2017 +0200"
  },
  "committer": {
    "name": "Marcel van Lohuizen",
    "email": "mpvl@golang.org",
    "time": "Thu Apr 27 09:35:21 2017 +0000"
  },
  "message": "unicode/norm: fix panic in composition\n\nFixes golang/go#20079\n\nThe problem is not the bound check (something must have gone wrong\nif this condition is reached).  And indeed it is.  The problem is\nthat false start of a Hangul UTF-8 sequence is interpreted as a\ncorrect Hangul sequence. The single byte is then correctly\ntransformed to U+FFFD, but happily interpreted and decomposed as\nHangul. This is then fills up the reorder buffer with two spurious\nmodifier runes that are not accounted for, causing a large sequence\nof trailing modifiers to overflow the buffer without being caught.\n\nChange-Id: Ib5c7b5bc247388dffe87c0a2ba42fd1e2bb7479a\nReviewed-on: https://go-review.googlesource.com/41697\nRun-TryBot: Marcel van Lohuizen \u003cmpvl@golang.org\u003e\nTryBot-Result: Gobot Gobot \u003cgobot@golang.org\u003e\nReviewed-by: Sam Whited \u003csam@samwhited.com\u003e\nReviewed-by: Nigel Tao \u003cnigeltao@golang.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "045d4ccce2ee1cf4824517d9cdc85eaa96228e9e",
      "old_mode": 33188,
      "old_path": "unicode/norm/input.go",
      "new_id": "479e35bc2585b332a9a8806d49cb198d1f2b8576",
      "new_mode": 33188,
      "new_path": "unicode/norm/input.go"
    },
    {
      "type": "modify",
      "old_id": "69a84bfaa61c0dc8dad096b18bc43a2d08e4dc54",
      "old_mode": 33188,
      "old_path": "unicode/norm/normalize_test.go",
      "new_id": "4f837372ca2ff30a0d26aab8fcfbdde6e2c047d1",
      "new_mode": 33188,
      "new_path": "unicode/norm/normalize_test.go"
    }
  ]
}
