)]}'
{
  "commit": "fd9eb3923dcf417afcf5ed4ebb13867fd10f2de3",
  "tree": "8b44d56da6cd06372d962396fa905d3dedaf3907",
  "parents": [
    "4db3aeb88001367a032df33e5801c9add6a14b06"
  ],
  "author": {
    "name": "Andreas Gampe",
    "email": "agampe@google.com",
    "time": "Thu Nov 06 16:52:58 2014 -0800"
  },
  "committer": {
    "name": "Andreas Gampe",
    "email": "agampe@google.com",
    "time": "Wed Jan 14 16:07:43 2015 -0800"
  },
  "message": "ART: Simple structural class check\n\nAdds a simple check to class-loading when the embedded dex file in\nan oat file and the dex file on the class path where we found the\nclass do not match.\n\nWe require that the number of methods and fields do not change, as\nthat will almost certainly mean that quickened and other compiled\noffsets are wrong now. This is a reasonably lightweight change, but\nwe should investigate a full comparison including name and type of\nmembers.\n\nBug: 17937814\nBug: 18708951\n\n(cherry picked from commit 15a33b3f88546bce85dcb9d28caf200da51154d7)\n\nChange-Id: Icb9638bebd369ab23822817f4a97c8dd8625fea5\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "438cebfff40b264b999364584fd518b9bcd6ef31",
      "old_mode": 33188,
      "old_path": "runtime/class_linker.cc",
      "new_id": "377a3c37df0eedb98fb4c33379f1e86ce52d1f88",
      "new_mode": 33188,
      "new_path": "runtime/class_linker.cc"
    },
    {
      "type": "modify",
      "old_id": "3f6175f663fed8c4563a6b1bd5e9aaf811b32048",
      "old_mode": 33188,
      "old_path": "runtime/dex_file.cc",
      "new_id": "dc85f6c2c959c337a00f9cb10a889fdfc6fbca85",
      "new_mode": 33188,
      "new_path": "runtime/dex_file.cc"
    },
    {
      "type": "modify",
      "old_id": "019c8e6e9a4913adde61c658bcac932e1e566bea",
      "old_mode": 33188,
      "old_path": "runtime/dex_file.h",
      "new_id": "9b8f25444810b8ca77a7ff3fc891935036729e3d",
      "new_mode": 33188,
      "new_path": "runtime/dex_file.h"
    },
    {
      "type": "modify",
      "old_id": "358519b7af19ff004033051d3554fc5136785ab5",
      "old_mode": 33188,
      "old_path": "runtime/oat_file.cc",
      "new_id": "9061bb3d55b070eba8abf9a14cf20df4e26bb769",
      "new_mode": 33188,
      "new_path": "runtime/oat_file.cc"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "7ddc81d9b88f60c5e26ef567e20dc43677cbc609",
      "new_mode": 33261,
      "new_path": "test/131-structural-change/build"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "cc7713d252499455c47cd91ef36628de75755cc2",
      "new_mode": 33188,
      "new_path": "test/131-structural-change/expected.txt"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "6d5817bceab73a590962440cb5c1ecc6a8d2572c",
      "new_mode": 33188,
      "new_path": "test/131-structural-change/info.txt"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "63fdb8c7492a80129a634d795722b9824036498f",
      "new_mode": 33261,
      "new_path": "test/131-structural-change/run"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "800347b716e95550b49d2365144fb0336d0729e9",
      "new_mode": 33188,
      "new_path": "test/131-structural-change/src-ex/A.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "61369db32d3a57a42e3ee7dd13ce46643789ac8a",
      "new_mode": 33188,
      "new_path": "test/131-structural-change/src-ex/B.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "b07de581d806419d4ba944aff4a9ff37686d2492",
      "new_mode": 33188,
      "new_path": "test/131-structural-change/src/A.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "8dfa2808a2d4b08a2ccb5b591e0528073ce8db72",
      "new_mode": 33188,
      "new_path": "test/131-structural-change/src/Main.java"
    }
  ]
}
