)]}'
{
  "commit": "3639437f5424100d27edbf75187a02ef4e8a6c20",
  "tree": "f60a1e859cdad69a2d336777c5aa90fddcd073d5",
  "parents": [
    "3b17bd2df301d06bdea612a820cd6aa28b5c0cdd"
  ],
  "author": {
    "name": "Drew Fisher",
    "email": "zarvox@google.com",
    "time": "Fri Jul 17 03:27:10 2020 -0700"
  },
  "committer": {
    "name": "Drew Fisher",
    "email": "zarvox@google.com",
    "time": "Thu Dec 10 01:24:45 2020 +0000"
  },
  "message": "[UBSan][roughtime] Fix unaligned reads, reenable UBSan\n\nIt is undefined behavior to attempt to dereference an unaligned pointer,\nwhich is very easy to do any time you reinterpret_cast a pointer that\nyou obtained by parsing some bytes that aren\u0027t guaranteed to be aligned.\n\nThe canonical answer is to use memcpy to copy the bytes into an aligned\nstructure, and to use that aligned structure.  Here, we already have the\nintended out pointer, so we can simply perform the bytewise copy.\n\nTest: fx test network-time-service-tests\nFixed: 47040\nChange-Id: I39b98804261fff4e76c064c5b8bf9e6fa88f3bbb\nReviewed-on: https://fuchsia-review.googlesource.com/c/third_party/roughtime/+/460140\nReviewed-by: Jody Sankey \u003cjsankey@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "4e2301357620bbd97cc6d8cb9d8bc291826c1053",
      "old_mode": 33188,
      "old_path": "BUILD.gn",
      "new_id": "5bc2bb8bee74dc6bef0882a9f8bbc1010f334654",
      "new_mode": 33188,
      "new_path": "BUILD.gn"
    },
    {
      "type": "modify",
      "old_id": "744dc0405fde06d8163aca38710033b01f58bfdd",
      "old_mode": 33188,
      "old_path": "protocol.cc",
      "new_id": "c70e940827b6dba0aba21d0209dce2641c22dc74",
      "new_mode": 33188,
      "new_path": "protocol.cc"
    }
  ]
}
