)]}'
{
  "commit": "21c9bd9540a4006eb46ebd64d5e728e2d2cda3fd",
  "tree": "5fdfd033056c79724eb11023b7cd660b566515ec",
  "parents": [
    "a07afc58f2d765dd02a571354855facdaa6921b8"
  ],
  "author": {
    "name": "Lei Zhang",
    "email": "thestig@chromium.org",
    "time": "Thu Mar 28 23:51:40 2019 +0000"
  },
  "committer": {
    "name": "Chromium commit bot",
    "email": "commit-bot@chromium.org",
    "time": "Thu Mar 28 23:51:40 2019 +0000"
  },
  "message": "M74: Avoid 0 byte reads in ParseAndAppendCrossRefSubsectionData().\n\nThe existing CPDF_Parser::ParseAndAppendCrossRefSubsectionData() code\ndoes not handle reads properly when the read count is a multiple of the\nblock size. e.g. For a count of 2048 and a block size of 1024, it tries\nto read 1024, 1024, and 0 bytes.\n\nCommit cef91f11 added a check that causes 0 byte reads to fail, so the\nexisting behavior causes ParseAndAppendCrossRefSubsectionData() to fail\naltogether. Fix how ParseAndAppendCrossRefSubsectionData() loops to\navoid the 0 byte read.\n\nBUG\u003dchromium:945624\nTBR\u003dtsepez@chromium.org\n\nChange-Id: Ie309dd6c3e139720f19962ec2a094512282aa8ed\nReviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/52410\nReviewed-by: Tom Sepez \u003ctsepez@chromium.org\u003e\nCommit-Queue: Lei Zhang \u003cthestig@chromium.org\u003e\n(cherry picked from commit fabd13dc93f6cd9345f20f10456eb5a5ac8863e6)\nReviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/52652\nReviewed-by: Lei Zhang \u003cthestig@chromium.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "dc3d3987909ad4e9593289475a111c3347408903",
      "old_mode": 33188,
      "old_path": "core/fpdfapi/parser/cpdf_parser.cpp",
      "new_id": "02cb08ee69602723381e049abb1d1c78a3d608b6",
      "new_mode": 33188,
      "new_path": "core/fpdfapi/parser/cpdf_parser.cpp"
    }
  ]
}
