)]}'
{
  "commit": "4cd17347b4c35a0c06c2b13ee30e018bbcef6677",
  "tree": "ec64c93872eca2189a376b97ae704406a4ee15a9",
  "parents": [
    "3ea734488052804ff5fd47f6691073ca215e1110"
  ],
  "author": {
    "name": "Tim Kientzle",
    "email": "kientzle@acm.org",
    "time": "Sun Jan 03 18:11:46 2016 -0800"
  },
  "committer": {
    "name": "Tim Kientzle",
    "email": "kientzle@acm.org",
    "time": "Sun Jan 03 18:11:46 2016 -0800"
  },
  "message": "First implementation of UTF-8 path support for Zip reader.\n\nThis uses the existing \"update_pathname_utf8\" logic to\naccept the UTF8 pathname.  The tests verify that this\nsupports UTF-8 paths stored using GP#11 or 0x7075 extension.\nMore testing is certainly needed...\n\nNote:  A lot of the diff here is reshuffling of an internal API\nso it can accept non-null-terminated strings.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "0c04b54b7e557dd6be7174f069ab410aa286fe28",
      "old_mode": 33188,
      "old_path": "Makefile.am",
      "new_id": "72dd6a01a249d81b9869b6fae720964fbd672a04",
      "new_mode": 33188,
      "new_path": "Makefile.am"
    },
    {
      "type": "modify",
      "old_id": "4ac19660893881eb21024909539254f8f47ddf20",
      "old_mode": 33188,
      "old_path": "libarchive/archive_entry.c",
      "new_id": "cfff7725013293c4e0bd42c2cbcdf6de7ab6ef9a",
      "new_mode": 33188,
      "new_path": "libarchive/archive_entry.c"
    },
    {
      "type": "modify",
      "old_id": "06740926383a3f7711f5a8b09194f482d2f2e5ec",
      "old_mode": 33188,
      "old_path": "libarchive/archive_entry.h",
      "new_id": "ecd02a7961a0deed4dbfad0ee270e3deb7c4248b",
      "new_mode": 33188,
      "new_path": "libarchive/archive_entry.h"
    },
    {
      "type": "modify",
      "old_id": "c0b47c86010ea0cf26fd7d5900abfbe5122af43c",
      "old_mode": 33188,
      "old_path": "libarchive/archive_read_support_format_zip.c",
      "new_id": "a446b81cac5bff7f1a5657a63cfe81fab31958ad",
      "new_mode": 33188,
      "new_path": "libarchive/archive_read_support_format_zip.c"
    },
    {
      "type": "modify",
      "old_id": "3d4be82592661c7e6d218c78380ee7346adc0f6a",
      "old_mode": 33188,
      "old_path": "libarchive/archive_string.c",
      "new_id": "4db842fb7de6b874477657dbbecfc87d04c0b41e",
      "new_mode": 33188,
      "new_path": "libarchive/archive_string.c"
    },
    {
      "type": "modify",
      "old_id": "23f49165749c01be99e005ebc4c6b026bc848b9d",
      "old_mode": 33188,
      "old_path": "libarchive/archive_string.h",
      "new_id": "6f7d2e5a17e939edb95fedcf577329e7a3a36f17",
      "new_mode": 33188,
      "new_path": "libarchive/archive_string.h"
    },
    {
      "type": "modify",
      "old_id": "a703416279d398e38e2b96d7e60f87d8b60d608e",
      "old_mode": 33188,
      "old_path": "libarchive/test/test_read_format_zip_utf8_paths.c",
      "new_id": "ea4738b454f0fed0e1a1727a20b8462704f7011f",
      "new_mode": 33188,
      "new_path": "libarchive/test/test_read_format_zip_utf8_paths.c"
    },
    {
      "type": "delete",
      "old_id": "7e6cd742ec59364732f2ffba415c2cb9e5d6862a",
      "old_mode": 33188,
      "old_path": "libarchive/test/test_read_format_zip_utf8_paths.zip.uu",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    }
  ]
}
