)]}'
{
  "commit": "efeb7af13be4446ce4a511a2ca707691e9a67c1e",
  "tree": "36dc0651bcad4b81faf41fe730754d96d6eea465",
  "parents": [
    "f0f9fa330772f5f6a13673bd1204251c464ce67b"
  ],
  "author": {
    "name": "Adam Lesinski",
    "email": "adamlesinski@google.com",
    "time": "Wed Aug 02 14:57:43 2017 -0700"
  },
  "committer": {
    "name": "Adam Lesinski",
    "email": "adamlesinski@google.com",
    "time": "Thu Aug 03 17:33:52 2017 -0700"
  },
  "message": "AAPT2: Fix windows unicode path issues\n\nMingw64 was being difficult, so instead of defining a wmain entrypoint,\nthe command line parameters are parsed manually using built-in Windows\nmethods that support Unicode. The results are converted to UTF8 and\nhandled just like the rest of the linux/mac version of the code.\n\nThis also removes dependencies on std::istream in favour of a\nFileInputStream which calls the appropriate unicode version of\nopen to read a file.\n\nNo speed regressions found on Linux or MacOS.\n\nBug: 62336414\nBug: 63830502\nTest: manual\nChange-Id: I597da51e33729ed1b98bf246e7e773337fd3fee8\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "14d05fdf6ee8b1ba00e56f964fab3ed8b2620713",
      "old_mode": 33188,
      "old_path": "tools/aapt2/Android.bp",
      "new_id": "53794e641b0f382e4b9fed4ab3ee51f166393fda",
      "new_mode": 33188,
      "new_path": "tools/aapt2/Android.bp"
    },
    {
      "type": "modify",
      "old_id": "c5d38abcdf712e328dfda230ea659632cf73fa4b",
      "old_mode": 33188,
      "old_path": "tools/aapt2/Main.cpp",
      "new_id": "89cce5ffca53009b419367f262403b039826ac35",
      "new_mode": 33188,
      "new_path": "tools/aapt2/Main.cpp"
    },
    {
      "type": "modify",
      "old_id": "1683c64a6a5c02fb2ff3a9cf2bcba1ab45ca1231",
      "old_mode": 33188,
      "old_path": "tools/aapt2/ResourceParser_test.cpp",
      "new_id": "971b45eff35f06011ccd8dfa1ad33d8837cfa101",
      "new_mode": 33188,
      "new_path": "tools/aapt2/ResourceParser_test.cpp"
    },
    {
      "type": "modify",
      "old_id": "b64cd8c432d4111e7b4ae7a84020f495fd486882",
      "old_mode": 33188,
      "old_path": "tools/aapt2/cmd/Compile.cpp",
      "new_id": "8536edb34b702316980c788754b16ea20a678ab2",
      "new_mode": 33188,
      "new_path": "tools/aapt2/cmd/Compile.cpp"
    },
    {
      "type": "modify",
      "old_id": "e6bf3a6f9f562e4a3e6389193b48b7cf84e353de",
      "old_mode": 33188,
      "old_path": "tools/aapt2/cmd/Link.cpp",
      "new_id": "c9c836d99effec03da559e3b095585785f04afd4",
      "new_mode": 33188,
      "new_path": "tools/aapt2/cmd/Link.cpp"
    },
    {
      "type": "modify",
      "old_id": "c56492c8af9dc5983b695bdf05ac86232fdecb55",
      "old_mode": 33188,
      "old_path": "tools/aapt2/configuration/ConfigurationParser.cpp",
      "new_id": "b0ed792215df3f361b6a6144804229fc6d8f57c8",
      "new_mode": 33188,
      "new_path": "tools/aapt2/configuration/ConfigurationParser.cpp"
    },
    {
      "type": "modify",
      "old_id": "826f91b4a2fd18debe1e917e6679a92e7141f23e",
      "old_mode": 33188,
      "old_path": "tools/aapt2/flatten/Archive.cpp",
      "new_id": "5f8bd063f9b0943b6e4dda5d50c21774fa761b58",
      "new_mode": 33188,
      "new_path": "tools/aapt2/flatten/Archive.cpp"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "07dbb5a98add7a7c93f7f34a65d54152c03d41ba",
      "new_mode": 33188,
      "new_path": "tools/aapt2/io/FileInputStream.cpp"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "6beb9a186ce5e16c04a7d717c96526c9cbc6ee39",
      "new_mode": 33188,
      "new_path": "tools/aapt2/io/FileInputStream.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "7314ab7beebaec2377222bd149f7a00bd4a8c9ff",
      "new_mode": 33188,
      "new_path": "tools/aapt2/io/FileInputStream_test.cpp"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "51a18a7d8a9f8ff926e332b58150fa4ccf52099d",
      "new_mode": 33188,
      "new_path": "tools/aapt2/io/StringInputStream.cpp"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "ff5b112ef274a71e9a1f56f2a15be0f319ecec5d",
      "new_mode": 33188,
      "new_path": "tools/aapt2/io/StringInputStream.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "cc57bc498313b9b3b2d12651e438a75c7f17d11b",
      "new_mode": 33188,
      "new_path": "tools/aapt2/io/StringInputStream_test.cpp"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "b5795451e7499879704bee1614587f8df19028d8",
      "new_mode": 33188,
      "new_path": "tools/aapt2/test/Builders.cpp"
    },
    {
      "type": "modify",
      "old_id": "6b8207647471762dd3fc16a62a790ffaff3b33b9",
      "old_mode": 33188,
      "old_path": "tools/aapt2/test/Builders.h",
      "new_id": "d9f3912fb4c6684c2883f5670836e049e266c58e",
      "new_mode": 33188,
      "new_path": "tools/aapt2/test/Builders.h"
    },
    {
      "type": "modify",
      "old_id": "1bf25947ea931858b85735d2473595e40882f79f",
      "old_mode": 33188,
      "old_path": "tools/aapt2/util/Files.cpp",
      "new_id": "6f97efe37921580d0062b022475082694ea9843d",
      "new_mode": 33188,
      "new_path": "tools/aapt2/util/Files.cpp"
    },
    {
      "type": "modify",
      "old_id": "b3b1e484d27b64a096474494f7f5913419c8a193",
      "old_mode": 33188,
      "old_path": "tools/aapt2/util/Files.h",
      "new_id": "b6aa410f9421727670216710696e2abf277da0ec",
      "new_mode": 33188,
      "new_path": "tools/aapt2/util/Files.h"
    },
    {
      "type": "modify",
      "old_id": "885ab3e33feddc14e8fda5a72e2f8ebca660a923",
      "old_mode": 33188,
      "old_path": "tools/aapt2/xml/XmlDom.cpp",
      "new_id": "d6df7150214bfb52c8daecd5b7ac5b1a629b3ef3",
      "new_mode": 33188,
      "new_path": "tools/aapt2/xml/XmlDom.cpp"
    },
    {
      "type": "modify",
      "old_id": "2dc99d6931484e82e760bdc98c1f0e7fa76ad59f",
      "old_mode": 33188,
      "old_path": "tools/aapt2/xml/XmlDom.h",
      "new_id": "54a70333fad266f1bcf2bf4903f24a8effd532fe",
      "new_mode": 33188,
      "new_path": "tools/aapt2/xml/XmlDom.h"
    },
    {
      "type": "modify",
      "old_id": "f0122e8c617a39bd27ad809daf2701adc660a4ad",
      "old_mode": 33188,
      "old_path": "tools/aapt2/xml/XmlDom_test.cpp",
      "new_id": "1340ada6d95385e71ba3e9b4e08b8cad995e0294",
      "new_mode": 33188,
      "new_path": "tools/aapt2/xml/XmlDom_test.cpp"
    },
    {
      "type": "modify",
      "old_id": "c2a9c8283a6d26e6c10be320cab0223b6592c80d",
      "old_mode": 33188,
      "old_path": "tools/aapt2/xml/XmlPullParser.cpp",
      "new_id": "30bdc507303be8ffcf1cb6a6f260ee2907cabfe1",
      "new_mode": 33188,
      "new_path": "tools/aapt2/xml/XmlPullParser.cpp"
    },
    {
      "type": "modify",
      "old_id": "cdeeefd1397646aa287064a9905496295c66ba75",
      "old_mode": 33188,
      "old_path": "tools/aapt2/xml/XmlPullParser.h",
      "new_id": "a00caa139061be0a99aca19dff964377c952224e",
      "new_mode": 33188,
      "new_path": "tools/aapt2/xml/XmlPullParser.h"
    },
    {
      "type": "modify",
      "old_id": "1cce4850cac567e0fabdb5212b671b5c8f4d3793",
      "old_mode": 33188,
      "old_path": "tools/aapt2/xml/XmlPullParser_test.cpp",
      "new_id": "681d9d48173f0dd4777fbea8b44f0aa2e8c08269",
      "new_mode": 33188,
      "new_path": "tools/aapt2/xml/XmlPullParser_test.cpp"
    }
  ]
}
