)]}'
{
  "commit": "b54d7ad714257aadf331934849788b451a13dcd5",
  "tree": "5ebbcd07abd93dd3a79731a3d38e8bb56f82e8f2",
  "parents": [
    "9b94ee446d9c52a7537e6bc00ffa9bfa7cbb8622"
  ],
  "author": {
    "name": "Shikha Walia",
    "email": "shwali@microsoft.com",
    "time": "Wed Nov 06 02:06:33 2019 +0000"
  },
  "committer": {
    "name": "Chromium commit bot",
    "email": "commit-bot@chromium.org",
    "time": "Wed Nov 06 02:06:33 2019 +0000"
  },
  "message": "Make FPDFAnnot_SetAP() generate PDF standard compliant AP stream\n\nFPDFAnnot_SetAP() only sets an appearance stream in annotation’s\ndictionary and does not create it as a separate XObject.\n\nOther viewers such as Adobe Reader fail to render such annotation as\nthese readers expect an XObject to be present with the appearance\nstream.\n\nThis CL modifies FPDFAnnot_SetAP() implementation to create appearance\nstream as a XObject following the steps below:\n1. Create an indirect PDF stream object.\n2. Store appearance stream data in newly created indirect object.\n3. Set dictionary values(BBox, Type, SubType) of indirect object.\n4. Store a reference to this indirect object in actual annotation\n   object\u0027s dictionary.\n\nThe CL includes a newly added test case to validate creation of\nappearance stream as a separate XObject.\n\nBug: pdfium:1404\nChange-Id: I5054cb15ad8bad6ed55f4b952197249a9cc2dfad\nReviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/61430\nReviewed-by: Lei Zhang \u003cthestig@chromium.org\u003e\nCommit-Queue: Lei Zhang \u003cthestig@chromium.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "afdbcf038708c8139e9c9eaad26157d682a81b71",
      "old_mode": 33188,
      "old_path": "fpdfsdk/BUILD.gn",
      "new_id": "73117e1afb3418b7153253ca8ea37940bb6d8d7d",
      "new_mode": 33188,
      "new_path": "fpdfsdk/BUILD.gn"
    },
    {
      "type": "modify",
      "old_id": "211c1020e77091ef2387f67be5c40356980dae3f",
      "old_mode": 33188,
      "old_path": "fpdfsdk/fpdf_annot.cpp",
      "new_id": "16ae2cdebdf009041cc269ee92848c4fc595d608",
      "new_mode": 33188,
      "new_path": "fpdfsdk/fpdf_annot.cpp"
    },
    {
      "type": "modify",
      "old_id": "db5b3c26daefea4984c7b664c714421ab655b3b9",
      "old_mode": 33188,
      "old_path": "fpdfsdk/fpdf_annot_embeddertest.cpp",
      "new_id": "44518d2f1ec9622cdfea289029c72c1c9b22de38",
      "new_mode": 33188,
      "new_path": "fpdfsdk/fpdf_annot_embeddertest.cpp"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "c80456254b8148018f43223037f971cf364c217d",
      "new_mode": 33188,
      "new_path": "fpdfsdk/fpdf_annot_unittest.cpp"
    }
  ]
}
