)]}'
{
  "commit": "d48bd299ee5f9e4e051240dbe07fdc0f63064ed4",
  "tree": "758c81bac0cb586bbdefa44a6178a06815b60069",
  "parents": [
    "af235d500348bd5257f82a96cb50bb430bd1af3f"
  ],
  "author": {
    "name": "Tom Sepez",
    "email": "tsepez@chromium.org",
    "time": "Wed Aug 14 19:48:55 2019 +0000"
  },
  "committer": {
    "name": "Chromium commit bot",
    "email": "commit-bot@chromium.org",
    "time": "Wed Aug 14 19:48:55 2019 +0000"
  },
  "message": "Remove some CPDFXFA_Context usage from top-level fpdfsdk layer.\n\nThe CPDF_Document::Extension is intended to keep non-xfa code\nblissfully ignorant of the XFA feature bolted onto the side of it.\nThe cost is a few static_casts\u003c\u003e until the Extension gains a\nfew more virtual methods to cover these cases.\n\nUse IPDF_Page abstraction in a few places where knowledge of\nthe underlying CPDFXFA_Page isn\u0027t required.\n\nCJS_App becomes unaware of XFA while we\u0027re at it, with some\nsmall changes for corner cases in the XFA case when no FFI,\netc.\n\nChange-Id: Ie5d484d1c391d9f82947528b4856d7882f8cfad2\nReviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/59250\nReviewed-by: Lei Zhang \u003cthestig@chromium.org\u003e\nCommit-Queue: Tom Sepez \u003ctsepez@chromium.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "7bd94f565e1c159073791275ff0466d1d3d1bc62",
      "old_mode": 33188,
      "old_path": "core/fpdfapi/parser/cpdf_document.h",
      "new_id": "543611dc723554ee6c543498b7dca62bf4bd52fd",
      "new_mode": 33188,
      "new_path": "core/fpdfapi/parser/cpdf_document.h"
    },
    {
      "type": "modify",
      "old_id": "7bf61621d33abce616bdabab4f03eab6f3a75b29",
      "old_mode": 33188,
      "old_path": "fpdfsdk/cpdfsdk_formfillenvironment.cpp",
      "new_id": "634fd70f264fa20f9e4ea0f71aab3b5e289429f3",
      "new_mode": 33188,
      "new_path": "fpdfsdk/cpdfsdk_formfillenvironment.cpp"
    },
    {
      "type": "modify",
      "old_id": "e815cf5da21d4887dd2ee61537e39912c0e0f425",
      "old_mode": 33188,
      "old_path": "fpdfsdk/cpdfsdk_formfillenvironment.h",
      "new_id": "abafcefb8f961037238dbfa1242720ff857e932f",
      "new_mode": 33188,
      "new_path": "fpdfsdk/cpdfsdk_formfillenvironment.h"
    },
    {
      "type": "modify",
      "old_id": "fc93d7c9757dce23fe650589427c9daeccc85b0b",
      "old_mode": 33188,
      "old_path": "fpdfsdk/cpdfsdk_helpers.h",
      "new_id": "0f7947a9cc581c11cfe55b918c2c2b4dfdc0bebd",
      "new_mode": 33188,
      "new_path": "fpdfsdk/cpdfsdk_helpers.h"
    },
    {
      "type": "modify",
      "old_id": "2a5f179bc42531fcebbc552a261d3d308ddeba09",
      "old_mode": 33188,
      "old_path": "fpdfsdk/cpdfsdk_pageview.cpp",
      "new_id": "45ef17a4cd77e255d231a1c3dd5f6de2f4d0bbdf",
      "new_mode": 33188,
      "new_path": "fpdfsdk/cpdfsdk_pageview.cpp"
    },
    {
      "type": "modify",
      "old_id": "05c00f71eaa46772ef87a3a76369096f300abd27",
      "old_mode": 33188,
      "old_path": "fpdfsdk/cpdfsdk_widget.cpp",
      "new_id": "db60d895bab1b2d4fc12fa214670bd16ea3b1cb2",
      "new_mode": 33188,
      "new_path": "fpdfsdk/cpdfsdk_widget.cpp"
    },
    {
      "type": "modify",
      "old_id": "74e7512e4287e1bc2806f7a5d7132a7e8100348b",
      "old_mode": 33188,
      "old_path": "fpdfsdk/cpdfsdk_widgethandler.cpp",
      "new_id": "77353b07e6c2fffde208f8b47cfa65e76ae07c2d",
      "new_mode": 33188,
      "new_path": "fpdfsdk/cpdfsdk_widgethandler.cpp"
    },
    {
      "type": "modify",
      "old_id": "166497fb848a5f61d63b3284551872edae6f7559",
      "old_mode": 33188,
      "old_path": "fpdfsdk/fpdf_formfill.cpp",
      "new_id": "d26075407f40ef9d3c548b60c5eb4c5702798b04",
      "new_mode": 33188,
      "new_path": "fpdfsdk/fpdf_formfill.cpp"
    },
    {
      "type": "modify",
      "old_id": "6275c0183b4d20521cd5da8166573c2309d20a73",
      "old_mode": 33188,
      "old_path": "fpdfsdk/fpdf_save.cpp",
      "new_id": "2dfd75936202a3b8196b89142fa907de0ed79c55",
      "new_mode": 33188,
      "new_path": "fpdfsdk/fpdf_save.cpp"
    },
    {
      "type": "modify",
      "old_id": "88605cae3ee368f94172d15dc483b06a3f0752c7",
      "old_mode": 33188,
      "old_path": "fpdfsdk/fpdfxfa/cpdfxfa_context.cpp",
      "new_id": "bc3a357437fc6c3c7da0c1e9f010b2157cc2bac8",
      "new_mode": 33188,
      "new_path": "fpdfsdk/fpdfxfa/cpdfxfa_context.cpp"
    },
    {
      "type": "modify",
      "old_id": "0617d19701072b881c68e7b4cd3d0841988148c3",
      "old_mode": 33188,
      "old_path": "fpdfsdk/fpdfxfa/cpdfxfa_context.h",
      "new_id": "d81d983ddef26f59aca01301909abacc3cf6bec6",
      "new_mode": 33188,
      "new_path": "fpdfsdk/fpdfxfa/cpdfxfa_context.h"
    },
    {
      "type": "modify",
      "old_id": "8dd06a5efc7aee060664dff8cc1c59fecb817ff2",
      "old_mode": 33188,
      "old_path": "fpdfsdk/fpdfxfa/cpdfxfa_docenvironment.cpp",
      "new_id": "fe51b8067418e688f2d6c1a22a11af41e78e832a",
      "new_mode": 33188,
      "new_path": "fpdfsdk/fpdfxfa/cpdfxfa_docenvironment.cpp"
    },
    {
      "type": "modify",
      "old_id": "5c5b9e94bd157e5a208e5f23d8847036a182f028",
      "old_mode": 33188,
      "old_path": "fpdfsdk/fpdfxfa/cpdfxfa_widgethandler.cpp",
      "new_id": "98c4541d036f14538cec8a377a0cfcd6a849295a",
      "new_mode": 33188,
      "new_path": "fpdfsdk/fpdfxfa/cpdfxfa_widgethandler.cpp"
    },
    {
      "type": "modify",
      "old_id": "3b79ced3348fa645174b56d3ae82f207ee4832f1",
      "old_mode": 33188,
      "old_path": "fxjs/cjs_app.cpp",
      "new_id": "992fd985ae76b5c827f67afc975a352c693405ad",
      "new_mode": 33188,
      "new_path": "fxjs/cjs_app.cpp"
    }
  ]
}
