)]}'
{
  "commit": "ec05dd1dc96d2328b01a115b8e5c7e094115db30",
  "tree": "2f277b45f729a784fdf3007ef24104c2ab59a6cd",
  "parents": [
    "d7b4ec003740e42f374af39a7b7397c934de51d2"
  ],
  "author": {
    "name": "Tom Sepez",
    "email": "tsepez@chromium.org",
    "time": "Thu Apr 11 20:47:31 2019 +0000"
  },
  "committer": {
    "name": "Chromium commit bot",
    "email": "commit-bot@chromium.org",
    "time": "Thu Apr 11 20:47:31 2019 +0000"
  },
  "message": "Introduce fxcrt::RetainedTreeNode\n\nBuilds trees the way they were intended, almost. Similar to\nwhat Blink did prior to the Oilpan garbage collector.\n\nChange-Id: I24b0523bb6585d280e458254c3303ce9162b4654\nReviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/52331\nCommit-Queue: Tom Sepez \u003ctsepez@chromium.org\u003e\nReviewed-by: Lei Zhang \u003cthestig@chromium.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "d395e4d1e194d93a892631a9c5113588f2c1806e",
      "old_mode": 33188,
      "old_path": "core/fxcrt/BUILD.gn",
      "new_id": "2221af194ef9fe4a7d169b790973a591f2df7a11",
      "new_mode": 33188,
      "new_path": "core/fxcrt/BUILD.gn"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "8b29e698f9015c0c6a17b5e310c1de7a0edbde80",
      "new_mode": 33188,
      "new_path": "core/fxcrt/retained_tree_node.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "c41b5ef7443e7dee4004e1a8ab62b4c6fb209d40",
      "new_mode": 33188,
      "new_path": "core/fxcrt/retained_tree_node_unittest.cpp"
    }
  ]
}
