)]}'
{
  "commit": "6df96bd58b1e710a40cebedc5a47715b550bc512",
  "tree": "7f287a165ff29dc797ab021df06b6887d3c9260e",
  "parents": [
    "cc2e579f61dca10133796193d92990030ca2fbb2"
  ],
  "author": {
    "name": "Lei Zhang",
    "email": "thestig@chromium.org",
    "time": "Fri Jul 02 03:12:01 2021 +0000"
  },
  "committer": {
    "name": "Pdfium LUCI CQ",
    "email": "pdfium-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Fri Jul 02 03:12:01 2021 +0000"
  },
  "message": "Get rid of redundant checks in ByteString::First() and Last().\n\nThese methods call Substr(), and Substr() performs the same check.\nLast() performs a subtraction that can underflow, but the unsigned\nunderflow is well defined, and Substr() will still reject the bad\nparameter.\n\nDo the same for StringViewTemplate and WideString().\n\nChange-Id: I1be3c4f426529cc1da13596f6800aabcc00b2cf9\nReviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/82811\nCommit-Queue: Lei Zhang \u003cthestig@chromium.org\u003e\nReviewed-by: Tom Sepez \u003ctsepez@chromium.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "b54f89691aaf3cca9a63058d4fc8db6ff7d01b06",
      "old_mode": 33188,
      "old_path": "core/fxcrt/bytestring.cpp",
      "new_id": "c82bf8b025e9bdfb7f26d3c7f07d046e59d70039",
      "new_mode": 33188,
      "new_path": "core/fxcrt/bytestring.cpp"
    },
    {
      "type": "modify",
      "old_id": "10ee7f413ddcec6e63ffc58240cb966f499ba841",
      "old_mode": 33188,
      "old_path": "core/fxcrt/string_view_template.h",
      "new_id": "1694347b859b23809712eee452302626dcb1144b",
      "new_mode": 33188,
      "new_path": "core/fxcrt/string_view_template.h"
    },
    {
      "type": "modify",
      "old_id": "277cbbcba77b6993972d5636a9cd809c89e73198",
      "old_mode": 33188,
      "old_path": "core/fxcrt/widestring.cpp",
      "new_id": "6ae40a94c637c6f9b5da78e4a6eff1b20f90eb48",
      "new_mode": 33188,
      "new_path": "core/fxcrt/widestring.cpp"
    }
  ]
}
