)]}'
{
  "commit": "3478bb2a7fbcaaea1326a1df4a564d7ca24056ce",
  "tree": "79335e512ae8ce190a8a13b114a42d2d729a6879",
  "parents": [
    "4c83b8950af48bd503c89988f4de7c6c41023c71"
  ],
  "author": {
    "name": "Peter Collingbourne",
    "email": "pcc@google.com",
    "time": "Wed Apr 24 14:41:12 2019 -0700"
  },
  "committer": {
    "name": "Peter Collingbourne",
    "email": "pcc@google.com",
    "time": "Fri May 17 10:00:39 2019 -0700"
  },
  "message": "Teach soong not to duplicate the HWASAN runtime into each APEX.\n\nWhen HWASAN is enabled, the runtime is conceptually part of Bionic (and\nmutually depends on it), so it needs to be treated in the same way as the\nBionic libs.\n\nNow there are only two copies of the runtime: the one in\n/system/lib64/bootstrap (which won\u0027t be used by ordinary processes) and the\none in the runtime APEX.\n\nThis reduces the size of the HWASAN system image and fixes an issue where\nmultiple copies of the HWASAN runtime were being loaded into 64-bit binaries in\nAPEXes because the linker namespace for the binary is different from the one\nfor its dependent libraries outside of APEXes. HWASAN only supports loading\none copy of the runtime per process, so this was causing such binaries to\ncrash on startup.\n\nChange-Id: I228896e193a035e6dfba9f6e28d0b2e12fc163ea\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "68d0bc145b05fcb35d669301dc7264594d04cb20",
      "old_mode": 33188,
      "old_path": "apex/apex.go",
      "new_id": "51d0718ad212fb1c26e2d7309c54e429ddbce5ad",
      "new_mode": 33188,
      "new_path": "apex/apex.go"
    },
    {
      "type": "modify",
      "old_id": "51e68fcd9cd19f9aefa176547b891824e5d5f479",
      "old_mode": 33188,
      "old_path": "cc/binary.go",
      "new_id": "93d1de2d7b3c95e26c0f3888b29923dda004c181",
      "new_mode": 33188,
      "new_path": "cc/binary.go"
    },
    {
      "type": "modify",
      "old_id": "a3b9a92d953391551717827be2caf59dd13e902b",
      "old_mode": 33188,
      "old_path": "cc/cc.go",
      "new_id": "786e4fd267d1ed8f2ad25a29592a3dc89c8a7cc6",
      "new_mode": 33188,
      "new_path": "cc/cc.go"
    },
    {
      "type": "modify",
      "old_id": "c2ab098fec967604ad41d94247dd83edde08aafe",
      "old_mode": 33188,
      "old_path": "cc/library.go",
      "new_id": "97b3cecb63cba1fef8917a06b7d3d16f534ed44d",
      "new_mode": 33188,
      "new_path": "cc/library.go"
    },
    {
      "type": "modify",
      "old_id": "3c24f3471053b178e6a90d946d3d679368a93ece",
      "old_mode": 33188,
      "old_path": "cc/makevars.go",
      "new_id": "a71f479a463224f5ce3be4a1c7647008682bce81",
      "new_mode": 33188,
      "new_path": "cc/makevars.go"
    }
  ]
}
