)]}'
{
  "log": [
    {
      "commit": "1ad278b5d67e00ecaade3d2680102ea05041af43",
      "tree": "959f005606f7bd13755d97177700e9417c8a506e",
      "parents": [
        "5faae759e2b6ec8c3018022078d924a8d376bb06"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Mar 05 18:09:01 2021 +0100"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sun Mar 07 17:58:16 2021 +0100"
      },
      "message": "mediautils : TimeCheck: fix OOB access\n\nFix OOB access when reading from audioHalPids\nin TimeCheck::accessAudioHalPids()\n\nBug: 175894436\nTest: make\nChange-Id: I436523e4909051f83fc916effbe2710d2d962168\n"
    },
    {
      "commit": "72ee01deddaecbfb8766b3acdc60cc04f1bad24e",
      "tree": "831f8c8545fd20db5ae664168b19269d9fedb979",
      "parents": [
        "379d687ba8c831cedf406d95309c4e7a6f66639d"
      ],
      "author": {
        "name": "Mikhail Naganov",
        "email": "mnaganov@google.com",
        "time": "Thu Mar 26 13:07:31 2020 -0700"
      },
      "committer": {
        "name": "Mikhail Naganov",
        "email": "mnaganov@google.com",
        "time": "Thu Mar 26 14:48:33 2020 -0700"
      },
      "message": "TimeCheck: fix use of uninitialized variable\n\nVariable \u0027tag\u0027 in TimeCheck::TimeCheckThread::threadLoop\nmay end up being used w/o prior initialization.\nFound by clang-tidy.\n\nBug: 152526318\nTest: m\nChange-Id: Ifc1efbee39007ea9cfba8083edbfdb763eafb8dc\n"
    },
    {
      "commit": "42896a0774caae74ea8c982417ecbefb21913bc8",
      "tree": "6e352631b91856d118f052b8c180085837e4f07a",
      "parents": [
        "484d6119d3ca9140d415dc1841d4c0c500d76a20"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Sep 27 15:40:33 2019 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Nov 08 15:26:09 2019 -0800"
      },
      "message": "media utils: dump audio HAL service before restarting audioserver\n\nAdd request to create tombstones of audio HAL servers before restarting\naudioserver process when the watchdog triggers.\n\nAdd audio device factory HAL interface API to retrieve HAL process pids when\npossible (on debug builds).\n\nAdd AudioFlinger service API to set audio HAL process pids from\nJAVA AudioService.\n\nBug: 141528385\nTest: Force watchdog and verify tombstone creation\nChange-Id: I68c1e8fb4db23e5952ad0c93d7d0b9d121b8ec18\n"
    },
    {
      "commit": "9b9b3de144ce3a145b01a01424b706f69c6d7ed6",
      "tree": "a40f282f44a7679405e6b90f092b9e4f3df36ed6",
      "parents": [
        "d373b0efa176f1639a860d688d0dcca3460acdb5"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Oct 14 18:47:34 2019 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Oct 14 18:47:34 2019 -0700"
      },
      "message": "media utils: fix UAF in TimeCheckThread\n\nRead log tag from request list under lock\nto avoid use after free.\n\nBug: 142142406\nTest: make\nChange-Id: If4adab8c15a319dc84b7003adf3ac59a3980f075\n"
    },
    {
      "commit": "cf90b4931734e42c6092318991f213b76d7e849e",
      "tree": "3c0c685cb75bbdc37172d24113f6c0dbcbf3dfb4",
      "parents": [
        "d2dc18b063c548d9646dd1127fea97ccebdba079"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Sep 26 11:20:54 2019 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Sep 27 09:02:30 2019 -0700"
      },
      "message": "Remove symlinks from include dir\n\nTest: build\n\nChange-Id: Ibe4eee4fe49b7884e6d720e626d88125bbee0eb2\n"
    },
    {
      "commit": "39b09b52e313e89c3493927b379d2e256bf04bd9",
      "tree": "04e64f327c09b0d3344884d59c35ff520c751e3e",
      "parents": [
        "cd56a1c2a0adcd21aad3a64c761aa3562d915be1"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jun 29 12:24:40 2018 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jul 10 09:02:26 2018 -0700"
      },
      "message": "audioserver: log system event for binder timeouts\n\nAdd event logging in case of audioserver watchdog to help\ncollect statistics.\n\nTest: make. Simulate watchdog and check events in logcat.\n\nChange-Id: I4716852c77d56703ad5f3dfc2500f598a2b80a12\n"
    },
    {
      "commit": "3528c9330f481f236f16753cb0846c7d6ddcc7ee",
      "tree": "3fb6f04c3842c26e81a68fb847596aa237b713d9",
      "parents": [
        "12cc6e7a4162ea4137f9082a3e0fea551b21aae3"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Feb 23 17:17:22 2018 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Mar 22 10:02:49 2018 -0700"
      },
      "message": "audio services: monitor execution time for binder commands\n\nAdd a mechanism to monitor execution time of incoming binder\ncalls to audio flinger and audio policy and cause native audioserver\nrestart in case of timeout.\n\nBug: 69250055\nTest: manual. audio smoke tests\nChange-Id: I01b5bf2599fb2a4cd265cbbe8d4e34b2b059aaf4\n"
    }
  ]
}
