)]}'
{
  "commit": "a0d85587ff7212e24d1df8a6451c49f5eaa171d6",
  "tree": "2e374863d31da45e7739587360cc7cc90e365ea6",
  "parents": [
    "b67b048d671fdbd9a3674a4d1cf8ba4069994bb1"
  ],
  "author": {
    "name": "Tom Sepez",
    "email": "tsepez@chromium.org",
    "time": "Mon May 20 22:25:24 2024 +0000"
  },
  "committer": {
    "name": "Pdfium LUCI CQ",
    "email": "pdfium-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Mon May 20 22:25:24 2024 +0000"
  },
  "message": "Defensive programming around ObservedPtr\u003cCPDFSDK_Annot\u003e().\n\nSuch an argument is a strong hint to the caller that the object may\nbe destroyed somewhere in the called function, but be careful even\nwithin the called function to not extract a raw pointer from it.\n\n-- Change some x.Reset(y.Get()) usage to assignment to cut down on\n   number of (often dubious) Get() calls.\n\nBug: 341313077\nChange-Id: I572a2c5093f110ee04dbd2e82e3994a8266d5422\nReviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/119350\nReviewed-by: Lei Zhang \u003cthestig@chromium.org\u003e\nCommit-Queue: Tom Sepez \u003ctsepez@chromium.org\u003e\nReviewed-by: Thomas Sepez \u003ctsepez@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "ec4ca48c286b2ebd2b54888b3f3a676856e7e619",
      "old_mode": 33188,
      "old_path": "fpdfsdk/cpdfsdk_formfillenvironment.cpp",
      "new_id": "f7a26ba559d4bcbb977d20c4c953d0c4d139be92",
      "new_mode": 33188,
      "new_path": "fpdfsdk/cpdfsdk_formfillenvironment.cpp"
    },
    {
      "type": "modify",
      "old_id": "d193b8a6642d13828496aa9833c9b384799a3560",
      "old_mode": 33188,
      "old_path": "fpdfsdk/cpdfsdk_pageview.cpp",
      "new_id": "7727c960eb2573aafe287e1c0c5f67063299d1ea",
      "new_mode": 33188,
      "new_path": "fpdfsdk/cpdfsdk_pageview.cpp"
    }
  ]
}
