)]}'
{
  "commit": "3c908922cc1836ecb795bc7d4ed62ef9fe7aa7df",
  "tree": "8411f10e4ffe523797682a6dff03d75c4e967789",
  "parents": [
    "2632bedb65cdc4c73d1aaad0320dea9d692287d4"
  ],
  "author": {
    "name": "Tom Sepez",
    "email": "tsepez@chromium.org",
    "time": "Tue Jan 29 19:18:27 2019 +0000"
  },
  "committer": {
    "name": "Chromium commit bot",
    "email": "commit-bot@chromium.org",
    "time": "Tue Jan 29 19:18:27 2019 +0000"
  },
  "message": "Prevent cxfa_contentlayoutitem linked lists from getting entangled.\n\nImplement the basic linked-list primitives, and use them\nconsistently. Currently the code is doing ad-hoc manipulations\nof these pointers, and creating circular lists somewhere. This\ncauses re-frees as we walk down the list freeing every item.\n\nUse UnownedPtr\u003c\u003e to try to catch any future botches.\n\nTested against the test case in 925790 (CF fuzzer will subsequently\nverify 913564).\n\nBug: chromium:913564, chromium:925790\nChange-Id: I2b735b3137aa715e5bb6b1c4472a1d2fd68ae286\nReviewed-on: https://pdfium-review.googlesource.com/c/49350\nReviewed-by: Lei Zhang \u003cthestig@chromium.org\u003e\nCommit-Queue: Tom Sepez \u003ctsepez@chromium.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "6878c8e57462a7eab7cab4ea44641ef679a7f2f9",
      "old_mode": 33188,
      "old_path": "xfa/fxfa/parser/cxfa_contentlayoutitem.cpp",
      "new_id": "79b3cb7b81122a625aad43fa58d03c052cd18944",
      "new_mode": 33188,
      "new_path": "xfa/fxfa/parser/cxfa_contentlayoutitem.cpp"
    },
    {
      "type": "modify",
      "old_id": "ac2d8f2e0e7192356d7670da81fefc7daa1c1a93",
      "old_mode": 33188,
      "old_path": "xfa/fxfa/parser/cxfa_contentlayoutitem.h",
      "new_id": "7313a1ee282cd9df1234f2aa12c228ee3e532644",
      "new_mode": 33188,
      "new_path": "xfa/fxfa/parser/cxfa_contentlayoutitem.h"
    },
    {
      "type": "modify",
      "old_id": "db24066fe54a1de1a78b0761a596cb733265acbb",
      "old_mode": 33188,
      "old_path": "xfa/fxfa/parser/cxfa_itemlayoutprocessor.cpp",
      "new_id": "f91f3f0137dcdeebf1dedf51f799a60d4b51e363",
      "new_mode": 33188,
      "new_path": "xfa/fxfa/parser/cxfa_itemlayoutprocessor.cpp"
    }
  ]
}
