)]}'
{
  "commit": "e56034735e55decdff03fd5279a8815f59a74e89",
  "tree": "a463f1b28638aa72a67405bc99c5dd5d8c278fa4",
  "parents": [
    "eaac1d0ff046f0a8c663ddda2afec6c0a540e562"
  ],
  "author": {
    "name": "Tom Sepez",
    "email": "tsepez@chromium.org",
    "time": "Fri May 24 17:58:14 2019 +0000"
  },
  "committer": {
    "name": "Chromium commit bot",
    "email": "commit-bot@chromium.org",
    "time": "Fri May 24 17:58:14 2019 +0000"
  },
  "message": "Introduce CFX_GEModule::PlatformIface pure virtual class.\n\nThis replaces a void* pointer in the CFX_GEModule, and allows platform\ndestruction order to be controlled by the member order, rather than an\nexplicit call in the destructor.\n\nEach of the platforms implements its own platform-specific subclass.\n\nIn the future, it seems likely that CFX_FontCache/CFX_FontMgr members\nwill not get to outlive the PlatformIface, and this makes that change\neasier to accomplish.\n\nChange-Id: If278f79b66fa8a7d6b2f9be089c31b37c308ae26\nReviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/54810\nCommit-Queue: Tom Sepez \u003ctsepez@chromium.org\u003e\nReviewed-by: Lei Zhang \u003cthestig@chromium.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "b78922ddf6f4e9c5e62ea56550359e8eb26d1c1e",
      "old_mode": 33188,
      "old_path": "core/fpdfapi/font/cpdf_type1font.cpp",
      "new_id": "0cb8d19ca74c17f30f3da83c9f6e14941ae3cb09",
      "new_mode": 33188,
      "new_path": "core/fpdfapi/font/cpdf_type1font.cpp"
    },
    {
      "type": "modify",
      "old_id": "db2f3efbec4df39ca0ca33805d454652d77fa7f6",
      "old_mode": 33188,
      "old_path": "core/fxge/android/fx_android_imp.cpp",
      "new_id": "147011cd05ec16b465b2e8879b7e4066cea531ae",
      "new_mode": 33188,
      "new_path": "core/fxge/android/fx_android_imp.cpp"
    },
    {
      "type": "modify",
      "old_id": "e91b1e1b817b5df98bffb0db3adf28ec94d838c9",
      "old_mode": 33188,
      "old_path": "core/fxge/apple/apple_int.h",
      "new_id": "cbf34641824a365ab01b5493b8ce19f15a2a1a74",
      "new_mode": 33188,
      "new_path": "core/fxge/apple/apple_int.h"
    },
    {
      "type": "modify",
      "old_id": "ad2bdafd3db1b2cc9e44015c28d489477f1906aa",
      "old_mode": 33188,
      "old_path": "core/fxge/apple/fx_apple_platform.cpp",
      "new_id": "c8c55a8edbfafba9033f05649526fbd50e879c9d",
      "new_mode": 33188,
      "new_path": "core/fxge/apple/fx_apple_platform.cpp"
    },
    {
      "type": "modify",
      "old_id": "bf8e4f6bc640c24905a78d29527d484bdbb4453a",
      "old_mode": 33188,
      "old_path": "core/fxge/apple/fx_mac_imp.cpp",
      "new_id": "64e50cc5ffb68f052369c3c8621c7c3043282bb4",
      "new_mode": 33188,
      "new_path": "core/fxge/apple/fx_mac_imp.cpp"
    },
    {
      "type": "modify",
      "old_id": "cbc66c3cac7bdb011bd46182d5f113d2ddbd423a",
      "old_mode": 33188,
      "old_path": "core/fxge/cfx_gemodule.cpp",
      "new_id": "b9b232dec1fce617db2ce29a3b549c0387aa3cd6",
      "new_mode": 33188,
      "new_path": "core/fxge/cfx_gemodule.cpp"
    },
    {
      "type": "modify",
      "old_id": "f48d0655612f332c967260bcea160ed263369c84",
      "old_mode": 33188,
      "old_path": "core/fxge/cfx_gemodule.h",
      "new_id": "afcbff480fa07d067a481e5c084941eec8e3c10a",
      "new_mode": 33188,
      "new_path": "core/fxge/cfx_gemodule.h"
    },
    {
      "type": "modify",
      "old_id": "d3af1b70af57c8fa6200661252b31ce467c68ab9",
      "old_mode": 33188,
      "old_path": "core/fxge/fx_ge_linux.cpp",
      "new_id": "ddde4a68a839275122819e26c90ebaf76a654cb1",
      "new_mode": 33188,
      "new_path": "core/fxge/fx_ge_linux.cpp"
    },
    {
      "type": "modify",
      "old_id": "3361e7c266d7ddd701c3141ec3e8dd16012249bd",
      "old_mode": 33188,
      "old_path": "core/fxge/win32/fx_win32_device.cpp",
      "new_id": "c4e45768f34d5888c4d30b16d726a7a3d9ab6c1f",
      "new_mode": 33188,
      "new_path": "core/fxge/win32/fx_win32_device.cpp"
    },
    {
      "type": "modify",
      "old_id": "1a7cd45734fdc5ecc6366b23b78547360cde7ec4",
      "old_mode": 33188,
      "old_path": "core/fxge/win32/fx_win32_dib.cpp",
      "new_id": "6c9d394aa38ae7efbc597eef5a64adf30b92e041",
      "new_mode": 33188,
      "new_path": "core/fxge/win32/fx_win32_dib.cpp"
    },
    {
      "type": "modify",
      "old_id": "ea3db4df7b8b29125c1dcb2fb98ce580e7d85504",
      "old_mode": 33188,
      "old_path": "core/fxge/win32/fx_win32_gdipext.cpp",
      "new_id": "0b6667b731a4985c8433534a9087ec83420d1bdf",
      "new_mode": 33188,
      "new_path": "core/fxge/win32/fx_win32_gdipext.cpp"
    },
    {
      "type": "modify",
      "old_id": "3d4ef2d3a01b6d292124c3f0dce191baa4b341b8",
      "old_mode": 33188,
      "old_path": "core/fxge/win32/win32_int.h",
      "new_id": "d0a4588aff91d7228c36765320664720c48283b0",
      "new_mode": 33188,
      "new_path": "core/fxge/win32/win32_int.h"
    }
  ]
}
