)]}'
{
  "commit": "445b54a7346277d3aa270c3b3c4e049dd9cf14d8",
  "tree": "24f0d2c4e8b8e904774490ce9a912b1e5c985962",
  "parents": [
    "bb8fd49d1000b558aaa017d52936cfcadb1795fd"
  ],
  "author": {
    "name": "Nico Weber",
    "email": "thakis@chromium.org",
    "time": "Tue Nov 21 21:37:15 2023 +0000"
  },
  "committer": {
    "name": "Pdfium LUCI CQ",
    "email": "pdfium-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Tue Nov 21 21:37:15 2023 +0000"
  },
  "message": "Extract surrogate fusing from PDF_DecodeText() into own separate function\n\nFor UTF-16 inputs, PDF_DecodeText() used to fuse surrogates in the\nmain processing loop.\n\nThe main processing loop does a bunch of unrelated things, so this\nmoves surrogate fusing into a separate function that\u0027s called after\nthe main loop.\n\nSince surrogate fusion either keeps the string the same (if there are\nno surrogates) or makes it shorter, it can be done in-place.\n\nDoing this in multiple passes is easier to think about, at least for me.\n\nModifies the code that was added in\nhttps://pdfium-review.googlesource.com/c/pdfium/+/107831\n\n(I\u0027d like to also factor out the escape code handling, and after that\nit\u0027s hopefully easy to add support for UTF-8 text strings, which is\nmy actual goal.)\n\nNo intended behavior change.\n\nChange-Id: I36d9405ce0865b097263852f5914cfe57e8c4878\nReviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/113751\nAuto-Submit: Nico Weber \u003cthakis@chromium.org\u003e\nReviewed-by: Lei Zhang \u003cthestig@chromium.org\u003e\nCommit-Queue: Nico Weber \u003cthakis@chromium.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "1a588c23043a5145092dda3812a46661da4fbba1",
      "old_mode": 33188,
      "old_path": "core/fpdfapi/parser/fpdf_parser_decode.cpp",
      "new_id": "cb2a48e14206b36afb41d3e511ea6ec89f21786a",
      "new_mode": 33188,
      "new_path": "core/fpdfapi/parser/fpdf_parser_decode.cpp"
    }
  ]
}
