)]}'
{
  "commit": "b89ec0127699dab7f7ce653e3d74ee415327c8e2",
  "tree": "b5aad5414cbd1986027da6472cc562bf3a922b2f",
  "parents": [
    "b848dc9515743b0332d24834e475ce022c5b3353"
  ],
  "author": {
    "name": "Lei Zhang",
    "email": "thestig@chromium.org",
    "time": "Thu Feb 21 23:31:53 2019 +0000"
  },
  "committer": {
    "name": "Chromium commit bot",
    "email": "commit-bot@chromium.org",
    "time": "Thu Feb 21 23:31:53 2019 +0000"
  },
  "message": "M73: Fix data ownership in CPDF_ObjectStream.\n\nMake CFX_ReadOnlyMemoryStream capable of holding onto data. Use it in\nCPDF_ObjectStream to make the stream data refcounted, instead of letting\nCPDF_ObjectStream have ownership.\n\nCommit 0389ff1a incorrectly changed data ownership. Although\nCPDF_ObjectStream does not hand out its |data_stream_| directly,\nParseObjectAtOffset() will use it with a local CPDF_SyntaxParser, and\nthe CPDF_SyntaxParser hands off the data stream to the returned object.\n\nBUG\u003dchromium:933212\nTBR\u003ddsinclair@chromium.org\n\nChange-Id: I703735cfa7e2720af3008ec57158fd875d3a0723\nReviewed-on: https://pdfium-review.googlesource.com/c/50955\nReviewed-by: dsinclair \u003cdsinclair@chromium.org\u003e\nCommit-Queue: Lei Zhang \u003cthestig@chromium.org\u003e\n(cherry picked from commit 5f79016feed97837d94f98460fc90896641ba530)\nReviewed-on: https://pdfium-review.googlesource.com/c/51030\nReviewed-by: Lei Zhang \u003cthestig@chromium.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "2a896b8eb50d7f39e3b43e062e87934ee907ee4c",
      "old_mode": 33188,
      "old_path": "core/fpdfapi/parser/cpdf_object_stream.cpp",
      "new_id": "3f974ee72fd5c3c7a87a9e71e538262b15ebc190",
      "new_mode": 33188,
      "new_path": "core/fpdfapi/parser/cpdf_object_stream.cpp"
    },
    {
      "type": "modify",
      "old_id": "e96cff0ea9c425fb0a2562240d1ec528f5770bd8",
      "old_mode": 33188,
      "old_path": "core/fpdfapi/parser/cpdf_object_stream.h",
      "new_id": "008c0cd2bea7cafe9ea5194d1ae21b3f128aa140",
      "new_mode": 33188,
      "new_path": "core/fpdfapi/parser/cpdf_object_stream.h"
    },
    {
      "type": "modify",
      "old_id": "bd31ee318d0b9246605c4c6ac59f3b3176a07cf0",
      "old_mode": 33188,
      "old_path": "core/fxcrt/cfx_readonlymemorystream.cpp",
      "new_id": "807788a4b89c8f65d77963189534f73836828009",
      "new_mode": 33188,
      "new_path": "core/fxcrt/cfx_readonlymemorystream.cpp"
    },
    {
      "type": "modify",
      "old_id": "df277b57c7b58bfb913d50ed5348378d315e6322",
      "old_mode": 33188,
      "old_path": "core/fxcrt/cfx_readonlymemorystream.h",
      "new_id": "074ed8f5bf04d47fbfa8ed859e6a0a67f5808eb5",
      "new_mode": 33188,
      "new_path": "core/fxcrt/cfx_readonlymemorystream.h"
    }
  ]
}
