)]}'
{
  "commit": "cf1eb5a35107f25e5fbf1922a55264df79256d16",
  "tree": "d19fbeb362a2162dec613f2d80ac1c58fcdf013d",
  "parents": [
    "b76e451261845a087460986794e65e162cbb6482"
  ],
  "author": {
    "name": "Tom Sepez",
    "email": "tsepez@chromium.org",
    "time": "Mon Jan 14 20:12:23 2019 +0000"
  },
  "committer": {
    "name": "Chromium commit bot",
    "email": "commit-bot@chromium.org",
    "time": "Mon Jan 14 20:12:23 2019 +0000"
  },
  "message": "Dis-entangle cfx_char.h from fx_bidi.h.\n\nThe one function in fx_bidi.h that references cfx_chars becomes a\nstatic method in cfx_char.h. Then all of the other XFA-only code\nmoves to cfx_char.cpp, which is appropriate since it is twiddling\nvectors of CFX_Char anyways. Some ifdef XFAs go away in the process.\n\nChange-Id: I70c21be4865ceaa35852df77017f47cf1c58f440\nReviewed-on: https://pdfium-review.googlesource.com/c/48230\nCommit-Queue: Tom Sepez \u003ctsepez@chromium.org\u003e\nReviewed-by: Lei Zhang \u003cthestig@chromium.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "15fe47dae476fcad1228c56582bfb8191cd57821",
      "old_mode": 33188,
      "old_path": "core/fxcrt/cfx_char.cpp",
      "new_id": "02d051f1c834e1721c78c5e72722f20cbdc153fc",
      "new_mode": 33188,
      "new_path": "core/fxcrt/cfx_char.cpp"
    },
    {
      "type": "modify",
      "old_id": "5a5268ffbe2616556bd2e86f6596ee55b57a3f8b",
      "old_mode": 33188,
      "old_path": "core/fxcrt/cfx_char.h",
      "new_id": "e6c69781ad81c628f593f7aba892cecc89ac4dc7",
      "new_mode": 33188,
      "new_path": "core/fxcrt/cfx_char.h"
    },
    {
      "type": "modify",
      "old_id": "9fee05ddf4df29cd7c124e94a90e3e35ffd3eb74",
      "old_mode": 33188,
      "old_path": "core/fxcrt/fx_bidi.cpp",
      "new_id": "c5fb5c6f301886a26a67bb5df1c89cea082ff345",
      "new_mode": 33188,
      "new_path": "core/fxcrt/fx_bidi.cpp"
    },
    {
      "type": "modify",
      "old_id": "f64fc67e2ef536adf7a9c3b4a1b7937104cdee11",
      "old_mode": 33188,
      "old_path": "core/fxcrt/fx_bidi.h",
      "new_id": "ade9a2a8f66ac6d56182e70a6f410b52605371c2",
      "new_mode": 33188,
      "new_path": "core/fxcrt/fx_bidi.h"
    },
    {
      "type": "modify",
      "old_id": "fb3209c46d6b555349a92c9104045fdbb61a48b8",
      "old_mode": 33188,
      "old_path": "testing/fuzzers/pdf_bidi_fuzzer.cc",
      "new_id": "276e3df55f0cd2c9495cbe7ae3742445ecd6cd50",
      "new_mode": 33188,
      "new_path": "testing/fuzzers/pdf_bidi_fuzzer.cc"
    },
    {
      "type": "modify",
      "old_id": "61fb9d96dbb063f136a6cea41e4dcf877cac2d90",
      "old_mode": 33188,
      "old_path": "xfa/fgas/layout/cfx_rtfbreak.cpp",
      "new_id": "40f73fb282e680f9d7eebe1ce5185ae1667c9a44",
      "new_mode": 33188,
      "new_path": "xfa/fgas/layout/cfx_rtfbreak.cpp"
    },
    {
      "type": "modify",
      "old_id": "e7146c06eb490ee9a12437c43d62a11db66af819",
      "old_mode": 33188,
      "old_path": "xfa/fgas/layout/cfx_rtfbreak_unittest.cpp",
      "new_id": "307fc8cdee866682de0a233d2dc48faf9c49f4b3",
      "new_mode": 33188,
      "new_path": "xfa/fgas/layout/cfx_rtfbreak_unittest.cpp"
    },
    {
      "type": "modify",
      "old_id": "d5a6cb47edb4ee3e3ddaed2476739db6a85f7544",
      "old_mode": 33188,
      "old_path": "xfa/fgas/layout/cfx_txtbreak.cpp",
      "new_id": "f2a3f67a65804b89356edf7007506e4fb879c1bc",
      "new_mode": 33188,
      "new_path": "xfa/fgas/layout/cfx_txtbreak.cpp"
    },
    {
      "type": "modify",
      "old_id": "fcfc1d929179a2d84c88ce2c695dfab554701c26",
      "old_mode": 33188,
      "old_path": "xfa/fgas/layout/cfx_txtbreak_unittest.cpp",
      "new_id": "4b71df3a32a98b5440ad1fbe2d0911d820e8c30b",
      "new_mode": 33188,
      "new_path": "xfa/fgas/layout/cfx_txtbreak_unittest.cpp"
    }
  ]
}
