)]}'
{
  "log": [
    {
      "commit": "2bfba3afbfb5be7cd29043ebb649b4936d904572",
      "tree": "5c2f3e15ec32a2feb59e6bf9434e1d25d729781c",
      "parents": [
        "5e093d997adcd0cd5d83720eaaf0f282f92a9630"
      ],
      "author": {
        "name": "Sami Kyostila",
        "email": "skyostil@google.com",
        "time": "Thu Jan 11 00:12:14 2018 +0000"
      },
      "committer": {
        "name": "Sami Kyostila",
        "email": "skyostil@google.com",
        "time": "Fri Jan 12 11:13:22 2018 +0000"
      },
      "message": "base: Convert libs/services/Android.mk into a blueprint\n\nConvert libs/services/Android.mk into a blueprint module so it can be\nlinked by other blueprint modules.\n\nTest: mmm frameworks/base\nChange-Id: I7acf9aa084d262a5aba5a58e45d9647e15c6dffb\nMerged-In: I7acf9aa084d262a5aba5a58e45d9647e15c6dffb\n"
    },
    {
      "commit": "5e093d997adcd0cd5d83720eaaf0f282f92a9630",
      "tree": "c43d6b492751321ac95fe6e1fa58e881158daaad",
      "parents": [
        "08498c32f4dcde61e7539f70910983d0766b9fd1",
        "65a6237243a794125b6596f9187dbaa84032f522"
      ],
      "author": {
        "name": "Badhri Jagan Sridharan",
        "email": "badhri@google.com",
        "time": "Thu Jan 11 17:53:11 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jan 11 17:53:11 2018 +0000"
      },
      "message": "Merge \"Overcome disconnect during oem override\""
    },
    {
      "commit": "08498c32f4dcde61e7539f70910983d0766b9fd1",
      "tree": "1677d3a142c68a8329114359a2dbf44930af1884",
      "parents": [
        "639fe64ce0d6daac8698d8ed2db5d526f3a3b015",
        "1742fe1309b9b1d73a15b40829a9ce2e651d21fd"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 11 11:33:30 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jan 11 11:33:30 2018 +0000"
      },
      "message": "Merge changes I47ccfa99,I5db1de3e\n\n* changes:\n  Extract DNS setting logic into DnsManager class\n  Add minimal test for setting DNS properties\n"
    },
    {
      "commit": "1742fe1309b9b1d73a15b40829a9ce2e651d21fd",
      "tree": "1677d3a142c68a8329114359a2dbf44930af1884",
      "parents": [
        "e89953b30f371055c3d3611af34fd03eabf066c9"
      ],
      "author": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Wed Dec 13 19:40:49 2017 +0900"
      },
      "committer": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Thu Jan 11 18:16:50 2018 +0900"
      },
      "message": "Extract DNS setting logic into DnsManager class\n\nIn future, managing DNS-over-TLS hostname lookup and netd programming\ncan be encapsulated here.\n\nTest: as follows\n    - built\n    - flashed\n    - booted\n    - runtest frameworks-net passes\nBug: 64133961\nChange-Id: I47ccfa99c30c780524c45c4af605e720ccba34a0\n"
    },
    {
      "commit": "e89953b30f371055c3d3611af34fd03eabf066c9",
      "tree": "211c5a859397d01792a6f715f4ad61adaa307e7f",
      "parents": [
        "639fe64ce0d6daac8698d8ed2db5d526f3a3b015"
      ],
      "author": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Thu Jan 11 16:11:10 2018 +0900"
      },
      "committer": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Thu Jan 11 18:16:20 2018 +0900"
      },
      "message": "Add minimal test for setting DNS properties\n\nTest: as follows\nChange-Id: I5db1de3ee8e179edd56c93988b821242b81c2387\n"
    },
    {
      "commit": "639fe64ce0d6daac8698d8ed2db5d526f3a3b015",
      "tree": "17cbc174ae0f770511198d3f0b076e86daaf70f2",
      "parents": [
        "4a352dd5e0af1f20d286d5a19a990d2f090600a3",
        "a9139bc7c514441d258dedd70bde1646ff60d9d9"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 11 05:52:59 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jan 11 05:52:59 2018 +0000"
      },
      "message": "Merge \"Add checking permission at the setDataSaverModeEnabled()\""
    },
    {
      "commit": "4a352dd5e0af1f20d286d5a19a990d2f090600a3",
      "tree": "c9ff5c656f271faf8867e8994edc0e6d7e4d9897",
      "parents": [
        "f9063b378bfa0ef72a0858d77e7085fbf04ffb30",
        "be83aebfebe6eecc4bcacc5a6a8ce7949319880f"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 11 05:48:20 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jan 11 05:48:20 2018 +0000"
      },
      "message": "Merge \"Move DhcpClient SM thread onto IpClient\u0027s SM thread\""
    },
    {
      "commit": "f9063b378bfa0ef72a0858d77e7085fbf04ffb30",
      "tree": "c6c0f4066942950fb82426d1b6d139b2a7d9b4b7",
      "parents": [
        "d6c3813c08a1025df42b06fb08b175eafd7e4714",
        "9361a1394cc6efe74c004dab9f0c16e0df7827f8"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 11 04:01:32 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jan 11 04:01:32 2018 +0000"
      },
      "message": "Merge \"Add public ApnSetting in android.telephony.\""
    },
    {
      "commit": "be83aebfebe6eecc4bcacc5a6a8ce7949319880f",
      "tree": "18511b8d562194f673ca1f6592c5801cc6c612f9",
      "parents": [
        "d6c3813c08a1025df42b06fb08b175eafd7e4714"
      ],
      "author": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Fri Jun 09 19:20:26 2017 +0900"
      },
      "committer": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Thu Jan 11 12:48:08 2018 +0900"
      },
      "message": "Move DhcpClient SM thread onto IpClient\u0027s SM thread\n\nTest: as follows\n    - built\n    - flashed\n    - booted\n    - runtest frameworks-net passes\n    - basic wifi usage nominal\nBug: 62476366\nChange-Id: I9a74e001bc86972e31b7e0898711628e65d9cf7a\n"
    },
    {
      "commit": "d6c3813c08a1025df42b06fb08b175eafd7e4714",
      "tree": "fc5b26be5c8bf606681f08edbc823e2a808e0dec",
      "parents": [
        "6a91687bcd1bc10483dd9c3ed9dd189f192bd1c5",
        "6fbb21a8dc557bcac07e00c7916bb363a720ed9e"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Thu Jan 11 03:09:40 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jan 11 03:09:40 2018 +0000"
      },
      "message": "Merge \"Move more core networking tests to framework/base/tests/net.\""
    },
    {
      "commit": "6a91687bcd1bc10483dd9c3ed9dd189f192bd1c5",
      "tree": "aa00451a53694636235f07e7f1d337b1ee45a210",
      "parents": [
        "999d998fb0ab695f35b3f035f599b4a2c29a09ab",
        "8bd00d5f7ced34a45173e45537dc3100d62ee6a5"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 11 02:52:00 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jan 11 02:52:00 2018 +0000"
      },
      "message": "Merge \"Refactor to InterfaceParams utility class\""
    },
    {
      "commit": "8bd00d5f7ced34a45173e45537dc3100d62ee6a5",
      "tree": "dc92c5b7729305897f8831a387000fbdf4d4b213",
      "parents": [
        "f448371208a53a93657b8120105e5f5fbb9feee8"
      ],
      "author": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Fri Dec 08 17:47:50 2017 +0900"
      },
      "committer": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Thu Jan 11 09:47:40 2018 +0900"
      },
      "message": "Refactor to InterfaceParams utility class\n\nNetworkInterface throws Exceptions every time you look at it askance.\nTry to make something we instantiate fully, once, and pass it around.\n\nPartial MacAddress-ification as well, for good measure.\n\nTest: as follows\n    - built\n    - flashed\n    - booted\n    - runtest frameworks-net passes\n    - basic IPv6 tethering works\nBug: 32163131\nBug: 62476366\nChange-Id: I16c145fddb4e76387370338d792a438eed886d7f\n"
    },
    {
      "commit": "65a6237243a794125b6596f9187dbaa84032f522",
      "tree": "5d0ed610a175344c05bdb1996e294f4d372d4d6d",
      "parents": [
        "999d998fb0ab695f35b3f035f599b4a2c29a09ab"
      ],
      "author": {
        "name": "Badhri Jagan Sridharan",
        "email": "Badhri@google.com",
        "time": "Fri Aug 18 17:26:05 2017 -0700"
      },
      "committer": {
        "name": "Badhri Jagan Sridharan",
        "email": "Badhri@google.com",
        "time": "Wed Jan 10 16:45:32 2018 -0800"
      },
      "message": "Overcome disconnect during oem override\n\nCherry-pick from 83a0d6fa577fab4d45aba38e3eb52b08b8123c17\n\nWhile bootup, usb gets configured when the property triggers are\nrun. While in oemOverride, the current configuration is persisted\nin sys.usb.\u003cbootmode\u003e.config. Do not reconfigure the stack if the\ncurrent configuration is same as the new configuration.\n\nBug: 64225494\nChange-Id: Id35d110bf3fa8f58d05e14941716d4ad2b196f8d\n"
    },
    {
      "commit": "999d998fb0ab695f35b3f035f599b4a2c29a09ab",
      "tree": "0bc39c4c7a590fd304d1af82ed177a9330321eeb",
      "parents": [
        "54da93b9811832c1d08faccd7d5c207890684339",
        "8314fa72f27d0358ab29681fee5dfa4a4276946c"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 10 21:29:02 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 10 21:29:02 2018 +0000"
      },
      "message": "Merge \"Add API EuiccController#startOtaUpdatingIfNecessary\""
    },
    {
      "commit": "8314fa72f27d0358ab29681fee5dfa4a4276946c",
      "tree": "7f9f63f79d277d8fb3734596f8ba29621cfbd5bf",
      "parents": [
        "8098078edf5c74b1a1513c45012aa036ce6d36ec"
      ],
      "author": {
        "name": "Qingxi Li",
        "email": "qingxi@google.com",
        "time": "Thu Dec 14 15:36:06 2017 -0800"
      },
      "committer": {
        "name": "Qingxi Li",
        "email": "qingxi@google.com",
        "time": "Wed Jan 10 12:01:13 2018 -0800"
      },
      "message": "Add API EuiccController#startOtaUpdatingIfNecessary\n\nThis function requests calling app has WRITE_EMBEDDED_SUBSCRIPTIONS\npermission. It will check whether the OTA update needed to be done\nfirst. If current eUICC OS isn\u0027t latest one and OTA needed to be\nperformed, it will update eUICC OS. When the OS update is started or\nfinished, a broadcast will be sent.\n\nBug: 37279356\nTest: E2E\nMerged-In: Iea86add4bdc01c79a8714af4b3a89735ba78ee74\nChange-Id: Iea86add4bdc01c79a8714af4b3a89735ba78ee74\n"
    },
    {
      "commit": "54da93b9811832c1d08faccd7d5c207890684339",
      "tree": "32b5eecf5f3ef8e33e91d588e16eb69e3358a9ba",
      "parents": [
        "5e90553bcf167bcdbf074ea533cf9762592a64be",
        "fe6a51fcb5591dc39636ce5c29536d05810dd3f5"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 10 18:46:36 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 10 18:46:36 2018 +0000"
      },
      "message": "Merge \"Revert \"Move zygote\u0027s seccomp setup to post-fork\"\""
    },
    {
      "commit": "5e90553bcf167bcdbf074ea533cf9762592a64be",
      "tree": "0f7c8e4831f09730656e7f1428712dfbdeb11827",
      "parents": [
        "90fddefd5e4a08c1d7fab94559754fc3c8fb9cb8",
        "6cd44734b0a3299352a1419dde9cbe1726240d6f"
      ],
      "author": {
        "name": "Jack Yu",
        "email": "jackyu@google.com",
        "time": "Wed Jan 10 18:39:53 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 10 18:39:53 2018 +0000"
      },
      "message": "Merge \"Added Cell identity for TD-SCDMA and a base class CellIdentity\""
    },
    {
      "commit": "90fddefd5e4a08c1d7fab94559754fc3c8fb9cb8",
      "tree": "74b9059bacc26871f19e8caf3f6ce761544bd2f9",
      "parents": [
        "d9b3322e880c71354924fc2da54fa2e8276426e4",
        "656a7bc06b3c11f1eb86385b706275191edb04d1"
      ],
      "author": {
        "name": "Jerry Zhang",
        "email": "zhangjerry@google.com",
        "time": "Wed Jan 10 18:38:44 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 10 18:38:44 2018 +0000"
      },
      "message": "Merge \"Revamp USB tethering startup flow.\""
    },
    {
      "commit": "656a7bc06b3c11f1eb86385b706275191edb04d1",
      "tree": "74b9059bacc26871f19e8caf3f6ce761544bd2f9",
      "parents": [
        "d9b3322e880c71354924fc2da54fa2e8276426e4"
      ],
      "author": {
        "name": "Jerry Zhang",
        "email": "zhangjerry@google.com",
        "time": "Wed Dec 20 14:26:39 2017 -0800"
      },
      "committer": {
        "name": "Jerry Zhang",
        "email": "zhangjerry@google.com",
        "time": "Wed Jan 10 18:38:33 2018 +0000"
      },
      "message": "Revamp USB tethering startup flow.\n\nModify usb tethering flow to no longer require\nmUsbTetherRequested. The new simplified flow is:\n\n1. Usb rndis function is set through UsbManager\n2. Usb is configured with rndis enabled\n3. We tether the USB interface\n4. Usb is disconnected\n5. We untether the USB interface\n\nThis allows USB tethering to be enabled through\neither UsbManager or ConnectivityManager and aligns\nthe flow to be similar to other usb function services\nsuch as MTP.\n\nBug: 62876645\nTest: Enable and disable tethering through connectivity and with `svc\nusb setFunction rndis`\n\nChange-Id: Ica4203a499db177999302e099e28948b06ef2298\n"
    },
    {
      "commit": "d9b3322e880c71354924fc2da54fa2e8276426e4",
      "tree": "e3b8ef917c8d93479eb8943eec2b2e5a03f3cf8c",
      "parents": [
        "8098078edf5c74b1a1513c45012aa036ce6d36ec",
        "da9a3d413bb6bc4dcfa0c8ce48d7ce58e40634d1"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 10 18:19:03 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 10 18:19:03 2018 +0000"
      },
      "message": "Merge \"Don\u0027t wait for Bluetooth when shutting down\""
    },
    {
      "commit": "da9a3d413bb6bc4dcfa0c8ce48d7ce58e40634d1",
      "tree": "e3b8ef917c8d93479eb8943eec2b2e5a03f3cf8c",
      "parents": [
        "8098078edf5c74b1a1513c45012aa036ce6d36ec"
      ],
      "author": {
        "name": "Myles Watson",
        "email": "mylesgw@google.com",
        "time": "Fri Jan 05 16:12:54 2018 -0800"
      },
      "committer": {
        "name": "Myles Watson",
        "email": "mylesgw@google.com",
        "time": "Wed Jan 10 18:15:51 2018 +0000"
      },
      "message": "Don\u0027t wait for Bluetooth when shutting down\n\nBluetooth doesn\u0027t need to be shut down cleanly; shutting it down just\nslows down the shutdown process.\n\nChange-Id: I91fc9b26930a392f0c4462c76626a966051aea7b\nMerged-In: Ic2ed89dd618806adc6646066ab0956dea4a94d8e\nBug: 70855323\nTest: Boot, shut down, boot, shut down.\n"
    },
    {
      "commit": "fe6a51fcb5591dc39636ce5c29536d05810dd3f5",
      "tree": "abddd22319d25e181a2ed2759df336e926c815cf",
      "parents": [
        "6a4a3398325787f6cb1b93db17a7bf50d353e2a5"
      ],
      "author": {
        "name": "Victor Hsieh",
        "email": "victorhsieh@google.com",
        "time": "Wed Jan 10 17:22:25 2018 +0000"
      },
      "committer": {
        "name": "Victor Hsieh",
        "email": "victorhsieh@google.com",
        "time": "Wed Jan 10 17:22:55 2018 +0000"
      },
      "message": "Revert \"Move zygote\u0027s seccomp setup to post-fork\"\n\nThis reverts commit 6a4a3398325787f6cb1b93db17a7bf50d353e2a5.\n\nReason for revert: caused some SELinux error\n\nBug: 71768585\nChange-Id: I0ef270ec6fed1d5d96b4257ec1a2dd6a55a816ed\nMerged-In: Ic1b81e146b52b68445ba634de39657f199107da3\n"
    },
    {
      "commit": "8098078edf5c74b1a1513c45012aa036ce6d36ec",
      "tree": "cbd751a8d641b59f40cdf7bb8ae43a4e8b4eab18",
      "parents": [
        "b01bd54b110ade7d6ccdb48f84f874811aeeb5d4",
        "f21f3cf6f2cbfc7fcd73d5d718a90d4b18516078"
      ],
      "author": {
        "name": "Jordan Liu",
        "email": "jminjie@google.com",
        "time": "Wed Jan 10 17:06:14 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 10 17:06:14 2018 +0000"
      },
      "message": "Merge \"Add precise disconnect cause in DisconnectCause\""
    },
    {
      "commit": "6fbb21a8dc557bcac07e00c7916bb363a720ed9e",
      "tree": "44eb444404e25feec19c9f02235e397160ac9d26",
      "parents": [
        "289b3fbca8d9340e055daa5f0163e2787a8fdfe3"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Sat Apr 15 00:12:33 2017 +0900"
      },
      "committer": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Wed Jan 10 23:35:16 2018 +0900"
      },
      "message": "Move more core networking tests to framework/base/tests/net.\n\nTest: \"runtest frameworks-net\" passes except for already-failing IpConnectivityMetricsTest\nChange-Id: I2a20d546089699ac67bc819f10a8fcd50c637ac4\n"
    },
    {
      "commit": "6cd44734b0a3299352a1419dde9cbe1726240d6f",
      "tree": "edfb09bcd48bcaa20941a3f48367be63dd9e02e9",
      "parents": [
        "9c1279d2ae27071db4f351904bcad0fca4afae48"
      ],
      "author": {
        "name": "Jack Yu",
        "email": "jackyu@google.com",
        "time": "Thu Dec 28 14:41:12 2017 -0800"
      },
      "committer": {
        "name": "Jack Yu",
        "email": "jackyu@google.com",
        "time": "Wed Jan 10 01:37:04 2018 -0800"
      },
      "message": "Added Cell identity for TD-SCDMA and a base class CellIdentity\n\nAdded CellIdentityTdscdma for TDS-CDMA cell identity. Also added\na base class for existing CellIdentityXxx so that the network\nservice can return specific RAT cell identity through the\nnetwork service callback API which takes generic cell identity\nas the parameter.\n\nThis is the preliminary change for IWLAN refactoring since cell\nidentity is part of the CS/PS network registration.\n\nbug: 64132030\nTest: Unit tests\nChange-Id: I3ca405d687667b6c43e782339edec26a6f6edfc9\n"
    },
    {
      "commit": "b01bd54b110ade7d6ccdb48f84f874811aeeb5d4",
      "tree": "62202098033309d8e09b02529f486f89f8e05f7c",
      "parents": [
        "e1bdd513d0014ae969188c20a8fd1c2e3acb74a7",
        "e6153b9bff78de897cb6b52c9d605e0dc0fc929d"
      ],
      "author": {
        "name": "Holly Jiuyu Sun",
        "email": "jiuyu@google.com",
        "time": "Wed Jan 10 05:21:35 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 10 05:21:35 2018 +0000"
      },
      "message": "Merge \"Merge EuiccProfile into EuiccProfileInfo.\""
    },
    {
      "commit": "9361a1394cc6efe74c004dab9f0c16e0df7827f8",
      "tree": "890be8d2008f0d65b819017e4826031f890197b0",
      "parents": [
        "e1bdd513d0014ae969188c20a8fd1c2e3acb74a7"
      ],
      "author": {
        "name": "yuemingw",
        "email": "yuemingw@google.com",
        "time": "Fri Nov 24 18:20:11 2017 +0000"
      },
      "committer": {
        "name": "Yueming Wang",
        "email": "yuemingw@google.com",
        "time": "Wed Jan 10 03:17:05 2018 +0000"
      },
      "message": "Add public ApnSetting in android.telephony.\n\nBug: 68208293\nTest: manual\n\nAdd public ApnSetting class in android.telephony. Move APN TYPE constants out from\nPhoneConstants into public ApnTypeConstants.\n\nDesign doc: https://docs.google.com/document/d/1UEYjhRGSEwwccPLs_FzFD-IeOsVq63gxmAHNtDfnzAY/edit?pli\u003d1#\n\nChange-Id: I74d23644a872df0abc19730285ae196b6e3e39dd\n"
    },
    {
      "commit": "e1bdd513d0014ae969188c20a8fd1c2e3acb74a7",
      "tree": "c8c1e99038902c9c1a98919538f695c9ce0fa881",
      "parents": [
        "0cb936a85540dd5c749999a959d31ae6f1327615",
        "f45c9464213be26f93bc99625e0f6c18e7332a76"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 10 03:07:26 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 10 03:07:26 2018 +0000"
      },
      "message": "Merge \"Check null before calling clone()\""
    },
    {
      "commit": "0cb936a85540dd5c749999a959d31ae6f1327615",
      "tree": "44319188ae60f13e55afef9ff7fdcf377d9c5f6e",
      "parents": [
        "f448371208a53a93657b8120105e5f5fbb9feee8",
        "9cd3b7b3f57058766ba7c3ac69c8337957813a87"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 10 02:19:20 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 10 02:19:20 2018 +0000"
      },
      "message": "Merge \"Exposed CDMA SID/NID get APIs\""
    },
    {
      "commit": "f448371208a53a93657b8120105e5f5fbb9feee8",
      "tree": "f4fded28d244a971e7c686551e02c35246b78524",
      "parents": [
        "72acefa6d81e347c909423c5377c94bcc996c3f1",
        "5e48241a95b843c10f96c57d8544af9d04807218"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 10 01:24:41 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 10 01:24:41 2018 +0000"
      },
      "message": "Merge \"Remove obsolete workaround.\""
    },
    {
      "commit": "72acefa6d81e347c909423c5377c94bcc996c3f1",
      "tree": "46436a98d2ed7f9599410d4fd5a0a74ad9d3961a",
      "parents": [
        "b1065d69951b099dd62e4f7a7533ade833533add",
        "d53df964260339ed00ea19fa6615d33bebcd6088"
      ],
      "author": {
        "name": "Cassie Han",
        "email": "xih@google.com",
        "time": "Wed Jan 10 00:55:32 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 10 00:55:32 2018 +0000"
      },
      "message": "Merge \"Expose a new public column network_type_bitmask and deprecate bearer_bitmask gradually.\""
    },
    {
      "commit": "f45c9464213be26f93bc99625e0f6c18e7332a76",
      "tree": "0d57e94f4c4c081fea1aac91d955ff5f5ff3216e",
      "parents": [
        "37275780c0d952c04847b510a3298ea6b3aba9f7"
      ],
      "author": {
        "name": "yinxu",
        "email": "yinxu@google.com",
        "time": "Tue Jan 09 16:27:10 2018 -0800"
      },
      "committer": {
        "name": "yinxu",
        "email": "yinxu@google.com",
        "time": "Tue Jan 09 16:30:28 2018 -0800"
      },
      "message": "Check null before calling clone()\n\nBug: 67748005\nTest: Basic telephony sanity\n\nChange-Id: Ia46a82823b2d3c2bf3a6cb77a6fe191a7f7cb5d0\n"
    },
    {
      "commit": "b1065d69951b099dd62e4f7a7533ade833533add",
      "tree": "0a93d273d4ce366600d691dda0934c723c770942",
      "parents": [
        "ed7eead23bd766d64078cdc8ad483777e346991f",
        "bc9976e7497106c2b21321b8d4972faa98cf7bc0"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 10 00:07:11 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 10 00:07:11 2018 +0000"
      },
      "message": "Merge \"HFP: Add isInbandRingingEnabled() API (1/4)\""
    },
    {
      "commit": "ed7eead23bd766d64078cdc8ad483777e346991f",
      "tree": "802352423d03eae50644ab8c3ff11e688bf649ab",
      "parents": [
        "2f37060ee0478bf68e01e4357c0d0617a3fb8e03",
        "ffbaa9de1cf159a0f61dcc4062cebfd25e7414fa"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jan 09 23:46:55 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 09 23:46:55 2018 +0000"
      },
      "message": "Merge \"Add isMobileDataEnabled in TelephonyManager.\""
    },
    {
      "commit": "bc9976e7497106c2b21321b8d4972faa98cf7bc0",
      "tree": "b177762755a0325a6bb5aecefc5407bd057a9bfe",
      "parents": [
        "2f37060ee0478bf68e01e4357c0d0617a3fb8e03"
      ],
      "author": {
        "name": "Jack He",
        "email": "siyuanh@google.com",
        "time": "Fri Jan 05 17:17:06 2018 -0800"
      },
      "committer": {
        "name": "Jack He",
        "email": "siyuanh@google.com",
        "time": "Tue Jan 09 15:17:34 2018 -0800"
      },
      "message": "HFP: Add isInbandRingingEnabled() API (1/4)\n\n* Use BluetoothHeadset.isInbandRingingEnabled() API to check whether\n  in-band ringing is currently enabled in the system when deciding on\n  audio routes for ringtone\n* Add this as a hidden internal API for system components\n\nBug: 71646213\nTest: make, toggle in-band ringing from Development Settings and observe\n      whether Telecom service tries to open SCO when there is an\n      incoming call\n\nChange-Id: I1ef0dd2b54ace7649ddd1f043f0ef5847743a5c4\n"
    },
    {
      "commit": "e6153b9bff78de897cb6b52c9d605e0dc0fc929d",
      "tree": "4f81236fab5a9951562dc4a99fabff48b7fd4dd5",
      "parents": [
        "a954f20f468fd9f9a6a8a45f3f49dbab3df75e30"
      ],
      "author": {
        "name": "Holly Jiuyu Sun",
        "email": "jiuyu@google.com",
        "time": "Thu Dec 07 15:35:49 2017 -0800"
      },
      "committer": {
        "name": "Holly Jiuyu Sun",
        "email": "jiuyu@google.com",
        "time": "Tue Jan 09 15:08:26 2018 -0800"
      },
      "message": "Merge EuiccProfile into EuiccProfileInfo.\n\nAfter EuiccCard is moved to the platform, it can depend on\nEuiccProfileInfo directly.\n\nBug: 70292228\nTest: unit test\nChange-Id: Ibe2c61ce9c4d2c99bac1cd9df8bb62414c46feee\n"
    },
    {
      "commit": "2f37060ee0478bf68e01e4357c0d0617a3fb8e03",
      "tree": "ec866293ab27e6f6d3a718598b4f49cc9e6ef4d1",
      "parents": [
        "37275780c0d952c04847b510a3298ea6b3aba9f7",
        "63d25a5411ec63a78e921b4c91cd5e24d410d11d"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jan 09 22:54:42 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 09 22:54:42 2018 +0000"
      },
      "message": "Merge \"Add connection serivce focus api interface\""
    },
    {
      "commit": "5e48241a95b843c10f96c57d8544af9d04807218",
      "tree": "a922ed5d684b70a690e06878eda5bd5978b49f66",
      "parents": [
        "a954f20f468fd9f9a6a8a45f3f49dbab3df75e30"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Jan 09 14:44:10 2018 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Jan 09 14:44:10 2018 -0800"
      },
      "message": "Remove obsolete workaround.\n\nBug: http://b/24465209\nTest: manually ran the app.\nChange-Id: Id64e92875417e62ae225c3369cf6bf58048dcc97\n"
    },
    {
      "commit": "37275780c0d952c04847b510a3298ea6b3aba9f7",
      "tree": "de2ab319f60a7eb9620a887b82fe68b5e0e896ad",
      "parents": [
        "5d33c10a9640d7087f63e72dcfd6f55df8cc85fa",
        "fa792b97a5bb2d1ba5f7b271e897cb87985f37a8"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jan 09 22:10:01 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 09 22:10:01 2018 +0000"
      },
      "message": "Merge \"BluetoothProfile: Add Object Push Profile (OPP)\""
    },
    {
      "commit": "5d33c10a9640d7087f63e72dcfd6f55df8cc85fa",
      "tree": "a2bac7b00cbbc2e86267f2c0f2661b02b494e0a7",
      "parents": [
        "99f99a52e7849013d6334422c616d3bc69e53114",
        "6a4a3398325787f6cb1b93db17a7bf50d353e2a5"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jan 09 21:41:19 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 09 21:41:19 2018 +0000"
      },
      "message": "Merge \"Move zygote\u0027s seccomp setup to post-fork\""
    },
    {
      "commit": "99f99a52e7849013d6334422c616d3bc69e53114",
      "tree": "9f032723400a316672417a044af60246fc1b776e",
      "parents": [
        "e251bb72ed747780df6ae7eed5924e913498841d",
        "74d778e05974ef9056b8536f024783066644dc75"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jan 09 20:56:47 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 09 20:56:47 2018 +0000"
      },
      "message": "Merge \"Fix sync initialization on secondary users\""
    },
    {
      "commit": "e251bb72ed747780df6ae7eed5924e913498841d",
      "tree": "fc022bd256e80ad366fa7cc5aefd2344ba6746f8",
      "parents": [
        "e77808d93684602333c5a1fbb756f8c7cad77629",
        "cbe2c55a69f15aa0a5f9a8913e82cedd742781c9"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jan 09 20:30:29 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 09 20:30:29 2018 +0000"
      },
      "message": "Merge \"Fix ResolverActivity don\u0027t show items\""
    },
    {
      "commit": "9cd3b7b3f57058766ba7c3ac69c8337957813a87",
      "tree": "f2a4c4862c3247388ded0262758eca792618002b",
      "parents": [
        "73200d9ac9438d95f28f0b9df3a7eddbfbf18eae"
      ],
      "author": {
        "name": "Jack Yu",
        "email": "jackyu@google.com",
        "time": "Tue Jan 02 15:51:34 2018 -0800"
      },
      "committer": {
        "name": "Jack Yu",
        "email": "jackyu@google.com",
        "time": "Tue Jan 09 12:25:52 2018 -0800"
      },
      "message": "Exposed CDMA SID/NID get APIs\n\nMade two existing hidden APIs getSystemId() and getNetworkId()\ninto public APIs.\n\nTest: Telephony sanity tests\nbug: 32718590\nChange-Id: I436bd2699f8f805def753878d93e7dbf524e5f44\n"
    },
    {
      "commit": "6a4a3398325787f6cb1b93db17a7bf50d353e2a5",
      "tree": "2e412383fe03c921b144815814d93a249ff2245c",
      "parents": [
        "761b7b50d1dbc90334bc719d32bac13efcf3de80"
      ],
      "author": {
        "name": "Victor Hsieh",
        "email": "victorhsieh@google.com",
        "time": "Wed Dec 20 09:51:51 2017 -0800"
      },
      "committer": {
        "name": "Victor Hsieh",
        "email": "victorhsieh@google.com",
        "time": "Tue Jan 09 20:16:01 2018 +0000"
      },
      "message": "Move zygote\u0027s seccomp setup to post-fork\n\nBefore this change, seccomp filter setup is as early as in zygote\u0027s main\nfunction.  To make it possible to split app and system server\u0027s filter,\nthis postpone the setup to after fork.  It also starts to call app\nspecific and system server specific setup function.\n\nIn terms of performance since this happens at fork, the measure shows\nthe overhead is negligible.  Assuming 130 instruction in the BPF, on\nwalleye, even when running on little core with fixed low frequency, each\nsetup took about 60.9us on average.  When it runs on big core with\nhigher frequency, it took about 39.3us.\n\nTest: (cts) -m CtsSecurityTestCases -t android.security.cts.SeccompTest\nBug: 63944145\n\nChange-Id: I748735b478405098beac1e200d911c13ea60e380\nMerged-In: I748735b478405098beac1e200d911c13ea60e380\n"
    },
    {
      "commit": "e77808d93684602333c5a1fbb756f8c7cad77629",
      "tree": "667d4b26464e18d727e39d878da650be9bbd0aa4",
      "parents": [
        "a954f20f468fd9f9a6a8a45f3f49dbab3df75e30",
        "f784b29c9dce6361dd2f1f45c92df30d4a6d3c7c"
      ],
      "author": {
        "name": "Brad Ebinger",
        "email": "breadley@google.com",
        "time": "Tue Jan 09 19:18:42 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 09 19:18:42 2018 +0000"
      },
      "message": "Merge \"Remove hashing for PII in Telecom Logging\""
    },
    {
      "commit": "63d25a5411ec63a78e921b4c91cd5e24d410d11d",
      "tree": "22ba12680ecc435cc1cb7c471e8c6ca1ce516c39",
      "parents": [
        "5d286326b15171d6a8a54d9fbc0e928fb06ef6bd"
      ],
      "author": {
        "name": "Pengquan Meng",
        "email": "mpq@google.com",
        "time": "Tue Nov 21 18:01:13 2017 -0800"
      },
      "committer": {
        "name": "Hall Liu",
        "email": "hallliu@google.com",
        "time": "Tue Jan 09 10:50:38 2018 -0800"
      },
      "message": "Add connection serivce focus api interface\n\nThis add new api interface to ConnectionService to support the\nconnection service focus api.\n\nBug: 69651192\nTest: manually\n\nChange-Id: Iea49d95b086d32a0ebaf8e9f34fe4556953a0fd5\nMerged-In: Iea49d95b086d32a0ebaf8e9f34fe4556953a0fd5\n"
    },
    {
      "commit": "a954f20f468fd9f9a6a8a45f3f49dbab3df75e30",
      "tree": "dfd8046bfd035467c7dacfb35801e2c3b3c6d2d6",
      "parents": [
        "a2525e506de9b7a5f099010af9bd916908c164f5",
        "4f25570acd349bbbd41d9d2806eba6f4a0255780"
      ],
      "author": {
        "name": "Benedict Wong",
        "email": "benedictwong@google.com",
        "time": "Tue Jan 09 18:18:28 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 09 18:18:28 2018 +0000"
      },
      "message": "Merge \"Add validation to IpSecConfig algorithm setters\""
    },
    {
      "commit": "a2525e506de9b7a5f099010af9bd916908c164f5",
      "tree": "636507b45f694e0f717468c35e4d0b10f1c92b4d",
      "parents": [
        "289b3fbca8d9340e055daa5f0163e2787a8fdfe3",
        "3b13dab158851cff2c36a173f4dea986a9f085a7"
      ],
      "author": {
        "name": "Todd Kennedy",
        "email": "toddke@google.com",
        "time": "Tue Jan 09 17:21:12 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 09 17:21:12 2018 +0000"
      },
      "message": "Merge \"Add patb to owners\""
    },
    {
      "commit": "3b13dab158851cff2c36a173f4dea986a9f085a7",
      "tree": "ff92681fe0c240edb81cce5d049e95bab5c47ccf",
      "parents": [
        "e72b6f0d3113c84df6d9113609942ef5d9b4e34e"
      ],
      "author": {
        "name": "Todd Kennedy",
        "email": "toddke@google.com",
        "time": "Tue Jan 09 09:19:15 2018 -0800"
      },
      "committer": {
        "name": "Todd Kennedy",
        "email": "toddke@google.com",
        "time": "Tue Jan 09 09:19:15 2018 -0800"
      },
      "message": "Add patb to owners\n\nTest: None\nChange-Id: I70429cd02fac901efd16e47e6566358c78ae0e23\n"
    },
    {
      "commit": "289b3fbca8d9340e055daa5f0163e2787a8fdfe3",
      "tree": "0b26fc1720bbd562eee74ae19d5ad27185f11d44",
      "parents": [
        "90027eb1c22a15ae64f5f1102fddc56c8c2cfe0f",
        "51695b264789df91ddf8ee27efd1db09c16c6a0e"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jan 09 07:04:01 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 09 07:04:01 2018 +0000"
      },
      "message": "Merge \"Rename RadioNetworkConstants to NetworkConstants.\""
    },
    {
      "commit": "cbe2c55a69f15aa0a5f9a8913e82cedd742781c9",
      "tree": "c718f47cf3b8bc2eb5205c9df153e58e157236ff",
      "parents": [
        "5d286326b15171d6a8a54d9fbc0e928fb06ef6bd"
      ],
      "author": {
        "name": "gaochong",
        "email": "gaochong@xiaomi.com",
        "time": "Tue Jan 09 14:02:23 2018 +0800"
      },
      "committer": {
        "name": "gaochong",
        "email": "gaochong@xiaomi.com",
        "time": "Tue Jan 09 14:02:23 2018 +0800"
      },
      "message": "Fix ResolverActivity don\u0027t show items\n\nResolverActivity sort the list resolved intent with AsyncTask.\nThe method sort hold CountDownLatch to wait the time-consuming\noperation. In some case, the operation doesn\u0027t end and the\nCountDownLatch can\u0027t be released.The default excutor of AsyncTask\nis serial. There should release CountDownLatch in destroy()\nto avoid this case.\n\nChange-Id: Ie10126f735d9f511dfe086c21f3f5ffaeb831086\nSigned-off-by: gaochong \u003cgaochong@xiaomi.com\u003e\nTest: manual - repeatedly test ResolverActivity show correctly\nBug: 71730061\n"
    },
    {
      "commit": "90027eb1c22a15ae64f5f1102fddc56c8c2cfe0f",
      "tree": "79433e6b476088d098e48cb035b35848d07fcba7",
      "parents": [
        "5d286326b15171d6a8a54d9fbc0e928fb06ef6bd",
        "d2fb7df2c103e949d06af0757820fb29ba5a641e"
      ],
      "author": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Tue Jan 09 04:35:31 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 09 04:35:31 2018 +0000"
      },
      "message": "Merge \"Only count uncleared ProxyMap refs when deciding to crash\""
    },
    {
      "commit": "ffbaa9de1cf159a0f61dcc4062cebfd25e7414fa",
      "tree": "64031a4c4f9d004fcb2b1cabb939583273312b50",
      "parents": [
        "5d286326b15171d6a8a54d9fbc0e928fb06ef6bd"
      ],
      "author": {
        "name": "Malcolm Chen",
        "email": "refuhoo@google.com",
        "time": "Tue Nov 28 15:57:14 2017 -0800"
      },
      "committer": {
        "name": "Malcolm Chen",
        "email": "refuhoo@google.com",
        "time": "Mon Jan 08 18:08:22 2018 -0800"
      },
      "message": "Add isMobileDataEnabled in TelephonyManager.\n\nAdded a new hidden API isMobileDataEnabled in TelephonyManager.\nRename related APIs to isUserMobileDataEnabled,\nisUserMobileDataEnabled and setUserMobileDataEnabled to better\nclarify their functionality.\n\nBug: 69814555\nTest: build\nChange-Id: I2f186f1e7550cafbe4ee3a5af293c39274cbfeaa\nMerged-In: I2f186f1e7550cafbe4ee3a5af293c39274cbfeaa\n"
    },
    {
      "commit": "fa792b97a5bb2d1ba5f7b271e897cb87985f37a8",
      "tree": "875fac20d70097c72a7d5560d5ad6a1ab9d016db",
      "parents": [
        "5d286326b15171d6a8a54d9fbc0e928fb06ef6bd"
      ],
      "author": {
        "name": "Myles Watson",
        "email": "mylesgw@google.com",
        "time": "Fri Jan 05 13:54:34 2018 -0800"
      },
      "committer": {
        "name": "Myles Watson",
        "email": "mylesgw@google.com",
        "time": "Tue Jan 09 00:13:03 2018 +0000"
      },
      "message": "BluetoothProfile: Add Object Push Profile (OPP)\n\nTest: toggle Bluetooth\nChange-Id: I5aec940ba3d6c6364c2de667426d98d0b3cea0c6\n"
    },
    {
      "commit": "5d286326b15171d6a8a54d9fbc0e928fb06ef6bd",
      "tree": "8a5c585a2ca0e697c9ee60882c3416add0fb8cd7",
      "parents": [
        "9c1279d2ae27071db4f351904bcad0fca4afae48",
        "884f99d617624eb92d11b8c1ae209076d0520958"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Jan 08 23:49:06 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jan 08 23:49:06 2018 +0000"
      },
      "message": "Merge \"Don\u0027t wait for NFC when shutting down.\""
    },
    {
      "commit": "884f99d617624eb92d11b8c1ae209076d0520958",
      "tree": "8a5c585a2ca0e697c9ee60882c3416add0fb8cd7",
      "parents": [
        "9c1279d2ae27071db4f351904bcad0fca4afae48"
      ],
      "author": {
        "name": "Ruchi Kandoi",
        "email": "kandoiruchi@google.com",
        "time": "Wed Oct 18 13:06:40 2017 -0700"
      },
      "committer": {
        "name": "Myles Watson",
        "email": "mylesgw@google.com",
        "time": "Mon Jan 08 23:47:34 2018 +0000"
      },
      "message": "Don\u0027t wait for NFC when shutting down.\n\nNFC doesn\u0027t store any state before powering off, and hence it is okay to\nnot wait for it while shutting down.\n\nBug: 65761561\nTest: Boot and shutdown\nChange-Id: Ic8243bdb9c6d12daf6cff5784046286bfa8f4d53\n(cherry picked from commit 20bc30f4cedff1043c4c665cfe68f7d7fd16a801)\nMerged-In: Ic8243bdb9c6d12daf6cff5784046286bfa8f4d53\n"
    },
    {
      "commit": "d2fb7df2c103e949d06af0757820fb29ba5a641e",
      "tree": "f53f56ad15f736fd98ac3abb7a5f0ffe8811b1f4",
      "parents": [
        "9c1279d2ae27071db4f351904bcad0fca4afae48"
      ],
      "author": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Tue Jan 02 17:36:27 2018 -0800"
      },
      "committer": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Mon Jan 08 14:30:42 2018 -0800"
      },
      "message": "Only count uncleared ProxyMap refs when deciding to crash\n\nAdd a method to compute the size of a ProxyMap without cleared\nreferences. Use it in the crash decision. Report both counts, as\nwell as the count after a forced GC before actually crashing.\n\nRename the histogram generating function after a small refactoring\nto make that easier.\n\nWhen we crash, we now generate a message like the following\n(generated here with reduced thresholds):\n\n01-03 01:40:52.273  4793  4947 E JavaBinder: java.lang.AssertionError:\nBinder ProxyMap has too many entries: 277 (total), 275 (uncleared),\n257 (after GC). BinderProxy leak?\n\nafter the histogram. Unfortunately, the intervening GC may take some\ntime, and other intervening messages may sneak into the log between\nthem.\n\nExperiments so far suggest that none of this greatly affects the\ndecision when to die. But this eliminates uncertainty as to whether\nthere was really a problem.\n\nBug: 71353150\n\nTest: Tested with reduced thresholds, and then booted AOSP.\nChange-Id: I53f24bae23eedcdb78a1c32296c65692b7bb2c42\n"
    },
    {
      "commit": "9c1279d2ae27071db4f351904bcad0fca4afae48",
      "tree": "40a8134fea2c04d72a79a2b0deed3bb16cd28845",
      "parents": [
        "9ea410a6f8d7859e4c54070bba12e197ef6cdb71",
        "661f63131b8aa32caa439fcf4bff5754b067beb4"
      ],
      "author": {
        "name": "Cassie Han",
        "email": "xih@google.com",
        "time": "Mon Jan 08 17:25:26 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jan 08 17:25:26 2018 +0000"
      },
      "message": "Merge \"Migrate flag config_telephony_use_own_number_for_voicemail to Carrier Config.\""
    },
    {
      "commit": "9ea410a6f8d7859e4c54070bba12e197ef6cdb71",
      "tree": "b0b808172badbc7523bac93f2414ed3ead4fa922",
      "parents": [
        "abac8f7a86ef86b15aac45bc77b5ef1394a8e3bc",
        "f4d85d806e72b7a349123f870bc2712fe01b55d5"
      ],
      "author": {
        "name": "Toby Sargeant",
        "email": "tobiasjs@google.com",
        "time": "Mon Jan 08 12:05:12 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jan 08 12:05:12 2018 +0000"
      },
      "message": "Merge \"Add a Java FindAddress implentation.\""
    },
    {
      "commit": "abac8f7a86ef86b15aac45bc77b5ef1394a8e3bc",
      "tree": "00253b6619155adb10e73d044f83cde18c4cbcec",
      "parents": [
        "25259faa27c6d938b199d4e5ef01d631bd098ba6",
        "c9f25c4ee52e3e3e734f39cee9f6f10f19153e43"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Jan 06 02:50:58 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Jan 06 02:50:58 2018 +0000"
      },
      "message": "Merge \"Remove obsolete aidl list\""
    },
    {
      "commit": "c9f25c4ee52e3e3e734f39cee9f6f10f19153e43",
      "tree": "9f57b4cf19dd361cdc3cb5963f2eea686c2063cd",
      "parents": [
        "ae81e15c9cbfdc815a9b4e05d035cedabb6131a2"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Jan 04 14:59:10 2018 -0800"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Fri Jan 05 17:40:27 2018 -0800"
      },
      "message": "Remove obsolete aidl list\n\nRemove the obsolete aidl list, framework.aidl is now generated\nfrom the stubs jars.\n\nBug: 70046217\nTest: m checkbuild\nChange-Id: I2417f0a8f193bd4db4058f6f0bb05c147e18de25\nMerged-In: I2417f0a8f193bd4db4058f6f0bb05c147e18de25\n(cherry picked from commit fac48f998e763060dfdfb6e76927ec85aa63e1eb)\n"
    },
    {
      "commit": "25259faa27c6d938b199d4e5ef01d631bd098ba6",
      "tree": "04682d575fb44af8d38f1ec010dd1c27e7431374",
      "parents": [
        "c6dd5f9037bf5f9414ac23983d8a69291904102a",
        "05f4bc40743654ea501b18d70ee162a08b81b35c"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Jan 06 01:28:40 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Jan 06 01:28:40 2018 +0000"
      },
      "message": "Merge changes from topics \"bt-hfp-add-set-active-device-method\", \"bt-system-api-annotations\"\n\n* changes:\n  HFP: Add APIs for set and get active device (1/3)\n  Add SystemApis annotations\n"
    },
    {
      "commit": "c6dd5f9037bf5f9414ac23983d8a69291904102a",
      "tree": "19b4462efd7a3183534fedae74b9d0b8bd1466e5",
      "parents": [
        "27f61a94d67cf16d1ec0a12adfc97c77e176ca0f",
        "283965eaa9066c69120b8b490173384085eadefa"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Jan 06 00:35:49 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Jan 06 00:35:49 2018 +0000"
      },
      "message": "Merge \"Move to libc++ from stlport.\""
    },
    {
      "commit": "27f61a94d67cf16d1ec0a12adfc97c77e176ca0f",
      "tree": "9bf4f712f722287233f9e28041d9e22b07bc2692",
      "parents": [
        "6efee9c079eecf025384228763982eecd935c2f8",
        "6dbd3d7a59748c301cad50685e3940fbcdf37f61"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jan 05 23:27:33 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jan 05 23:27:33 2018 +0000"
      },
      "message": "Merge \"Add virtual dtor for virtual classes\""
    },
    {
      "commit": "05f4bc40743654ea501b18d70ee162a08b81b35c",
      "tree": "b5021558b1c6c1ae2564222c48869fb0a286cc13",
      "parents": [
        "4029fa6039a3305b093d8db0a24fb8e4dedd351a"
      ],
      "author": {
        "name": "Jack He",
        "email": "siyuanh@google.com",
        "time": "Wed Jan 03 12:13:26 2018 -0800"
      },
      "committer": {
        "name": "Jack He",
        "email": "siyuanh@google.com",
        "time": "Fri Jan 05 14:51:40 2018 -0800"
      },
      "message": "HFP: Add APIs for set and get active device (1/3)\n\n1. Call BluetoothHeadset.setActiveDevice(BluetoothDevice device) to set\n   a connected HFP/HSP device as active.\n2. Listen for BluetoothHeadset.ACTION_ACTIVE_DEVICE_CHANGED intent\n   that will contain the latest active device (in EXTRA_DEVICE field).\n   If the active device could not be changed, the EXTRA_DEVICE\n   field could be null.\n3. If setActiveDevice() is NOT in-progress, BluetoothA2dp.getActiveDevice()\n   can be used. If setActiveDevice() is in-progress, the result is undefined.\n4. BluetoothHeadset.setActiveDevice() could be called by some other parts of\n   the system, so interested parties should always listen for\n   BluetoothHeadset.ACTION_ACTIVE_DEVICE_CHANGED intents and prepared\n   for active device updates.\n\nBug: 68951996\nTest: manual\nChange-Id: I22ca639a04fed7bf17df59c405ddeda90dafb8ff\n"
    },
    {
      "commit": "4029fa6039a3305b093d8db0a24fb8e4dedd351a",
      "tree": "6565c66a3d38efb543a7dd84b8d06e0448239229",
      "parents": [
        "6efee9c079eecf025384228763982eecd935c2f8"
      ],
      "author": {
        "name": "Selim Gurun",
        "email": "sgurun@google.com",
        "time": "Tue Oct 17 17:01:38 2017 -0700"
      },
      "committer": {
        "name": "Jack He",
        "email": "siyuanh@google.com",
        "time": "Fri Jan 05 14:50:30 2018 -0800"
      },
      "message": "Add SystemApis annotations\n\nThere are some number of places where bluetooth APIs are used via\nreflection from GMSCore. Add proper annotations.\n\nBug: 67052734\nTest: Manual - and using make update-api\nChange-Id: Ib6e3aa1ff5b6f9cdc78367f9be13ed00542d6f65\n(cherry picked from commit 64bd35ef2cb40bbf9476a3bf63a763d5a32cc73b)\n"
    },
    {
      "commit": "6efee9c079eecf025384228763982eecd935c2f8",
      "tree": "0d85732cf0d902a0e2e5c53d615014b8f910175e",
      "parents": [
        "0f05ce94c334b0ebcce9a78820f12c223578ed8d",
        "64a9435cc720cb9f54a65ae4829b2f0532c45d24"
      ],
      "author": {
        "name": "Pavlin Radoslavov",
        "email": "pavlin@google.com",
        "time": "Fri Jan 05 21:45:31 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jan 05 21:45:31 2018 +0000"
      },
      "message": "Merge \"Added internal API to get/set the A2DP Active Device\""
    },
    {
      "commit": "64a9435cc720cb9f54a65ae4829b2f0532c45d24",
      "tree": "0d85732cf0d902a0e2e5c53d615014b8f910175e",
      "parents": [
        "0f05ce94c334b0ebcce9a78820f12c223578ed8d"
      ],
      "author": {
        "name": "Pavlin Radoslavov",
        "email": "pavlin@google.com",
        "time": "Tue Dec 19 13:20:06 2017 -0800"
      },
      "committer": {
        "name": "Pavlin Radoslavov",
        "email": "pavlin@google.com",
        "time": "Fri Jan 05 21:44:59 2018 +0000"
      },
      "message": "Added internal API to get/set the A2DP Active Device\n\n1. Call BluetoothA2dp.setActiveDevice(BluetoothDevice device) to set\n   a connected A2DP device as active.\n   The value of \"device\" could be null to clear the active device\n   and stop streaming audio to a Bluetooth device.\n2. Listen for BluetoothA2dp.ACTION_ACTIVE_DEVICE_CHANGED intent\n   that will contain the latest active device (in EXTRA_DEVICE field).\n   If the active device could not be changed, the EXTRA_DEVICE\n   field could be null.\n3. If setActiveDevice() is NOT in-progress, BluetoothA2dp.getActiveDevice()\n   can be used. If setActiveDevice() is in-progress, the result is undefined.\n4. BluetoothA2dp.setActiveDevice() could be called by some other parts of\n   the system, so interested parties should always listen for\n   BluetoothA2dp.ACTION_ACTIVE_DEVICE_CHANGED intents and prepared\n   for active device updates.\n\nBug: 71555243\nTest: Manual\nChange-Id: I661b6882e8e6b437db50210aec1dd12a10199969\n"
    },
    {
      "commit": "0f05ce94c334b0ebcce9a78820f12c223578ed8d",
      "tree": "0c120d4ecd70279fa90e9f2abda1f6c652d522da",
      "parents": [
        "02a03976433e6a4cae100d997556b89b3c200a6e",
        "4bfa2ebb89b909ac36094fd55080d749a996f5df"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jan 05 21:44:37 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jan 05 21:44:37 2018 +0000"
      },
      "message": "Merge \"Generic Mutable class for HIDL code.\""
    },
    {
      "commit": "02a03976433e6a4cae100d997556b89b3c200a6e",
      "tree": "d88b3542dced264f51fad4650ac8cf00ffe05800",
      "parents": [
        "2b36299c73f7ba853b5b3acf4ea58facb9d4922e",
        "dd9e99d26c1fc4b6566a8aee493b00e94f5d3f73"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jan 05 20:41:01 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jan 05 20:41:01 2018 +0000"
      },
      "message": "Merge \"Bluetooth: Remove strings for enabling inband ringing\""
    },
    {
      "commit": "4bfa2ebb89b909ac36094fd55080d749a996f5df",
      "tree": "bc4de3a6917fe02b9f02684e0328c49dd8df2430",
      "parents": [
        "ae81e15c9cbfdc815a9b4e05d035cedabb6131a2"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Fri Jan 05 09:41:10 2018 -0800"
      },
      "committer": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Fri Jan 05 19:13:06 2018 +0000"
      },
      "message": "Generic Mutable class for HIDL code.\n\nIn general, using Mutable inside of structures\nor as API arguments is a code smell. However, it\nis the most syntactically clean way of fetching\nsomething out of a lambda or inner class.\n\nUsing this, one can do:\nMutable\u003cResult\u003e res \u003d new Mutable\u003c\u003e();\nhidlObject.foo((...) -\u003e {\n    res.value \u003d ...;\n});\n\nThere is an alternative:\nResult a[] \u003d new Result[1];\nhidlObject.foo((...) -\u003e {\n    a[0] \u003d ...;\n});\n\nHowever, this alternative syntax is relatively messy.\n\nBug: N/A\nTest: boot, use w/ wifi\nChange-Id: Ibff13c653cc17bd25ddbb0534ba21ef485bff7aa\n"
    },
    {
      "commit": "dd9e99d26c1fc4b6566a8aee493b00e94f5d3f73",
      "tree": "d88b3542dced264f51fad4650ac8cf00ffe05800",
      "parents": [
        "2b36299c73f7ba853b5b3acf4ea58facb9d4922e"
      ],
      "author": {
        "name": "Jack He",
        "email": "siyuanh@google.com",
        "time": "Thu Dec 07 15:18:40 2017 -0800"
      },
      "committer": {
        "name": "Jack He",
        "email": "siyuanh@google.com",
        "time": "Fri Jan 05 11:11:20 2018 -0800"
      },
      "message": "Bluetooth: Remove strings for enabling inband ringing\n\n* As in-band ringing is enabled by default on supported devices, user\n  action in development settings should be disabling it instead of\n  enabling it\n* The new string is added to packages/apps/Settings and the old string\n  is hence removed from SettingsLib\n\nBug: 65383086\nTest: make, try toggling the preference and verify in-band ringing\u0027s\n      behavior\nChange-Id: I18858e86f4127f6555cce27d239d2682b6134fe2\nMerged-In: I18858e86f4127f6555cce27d239d2682b6134fe2\n(cherry picked from commit 326f1db42cabe8a7f2bcaef441a3353af98bba5f)\n"
    },
    {
      "commit": "283965eaa9066c69120b8b490173384085eadefa",
      "tree": "8bb7aec6298f07fe4f1dc9806f0e2bc9e5014161",
      "parents": [
        "766f0a4981478ff63854df70ba50e6420d19c02b"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Fri Jan 05 11:08:20 2018 -0800"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Fri Jan 05 11:08:20 2018 -0800"
      },
      "message": "Move to libc++ from stlport.\n\nTest: make checkbuild\nBug: None\nChange-Id: If2be2abedec1abb2970e8c42170d4a69c0fb4e3d\n"
    },
    {
      "commit": "2b36299c73f7ba853b5b3acf4ea58facb9d4922e",
      "tree": "1237463fa6a00096be5d824439eec52ada62177b",
      "parents": [
        "766f0a4981478ff63854df70ba50e6420d19c02b",
        "d8c7429418179379c5c7f23ba29a9eee3d22a7c0"
      ],
      "author": {
        "name": "nharold",
        "email": "nharold@google.com",
        "time": "Fri Jan 05 19:05:09 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jan 05 19:05:09 2018 +0000"
      },
      "message": "Merge changes from topic \"ipsec-resource-id-cleanup\"\n\n* changes:\n  IpSecService - Convert mNextResourceId from AtomicInt to Int\n  IpSec Invalidate the Resource IDs on close()\n"
    },
    {
      "commit": "f4d85d806e72b7a349123f870bc2712fe01b55d5",
      "tree": "7f3298f6bdd4375201875a0be64503b45659e0e4",
      "parents": [
        "766f0a4981478ff63854df70ba50e6420d19c02b"
      ],
      "author": {
        "name": "Tobias Sargeant",
        "email": "tobiasjs@google.com",
        "time": "Fri Jan 05 14:34:38 2018 +0000"
      },
      "committer": {
        "name": "Tobias Sargeant",
        "email": "tobiasjs@google.com",
        "time": "Fri Jan 05 14:44:10 2018 +0000"
      },
      "message": "Add a Java FindAddress implentation.\n\nThis stops calling findAddress (possibly indirectly via Linkify) from\nloading webview native code, resulting in a performance and memory\nimprovement for those apps that call WebView#findAddress but do not\notherwise use WebView.\n\nBug: 22362008\nTest: Existing WebView CTS test.\nChange-Id: I5fcab725ceaf0d6a00e931d3b6cd2f3799d68391\n"
    },
    {
      "commit": "a9139bc7c514441d258dedd70bde1646ff60d9d9",
      "tree": "c50db2156c3f94c4b3b77f7172ab273d1c79b2a0",
      "parents": [
        "0d75603ea7da774d19bf5b015de42f374dad82ed"
      ],
      "author": {
        "name": "Sehee Park",
        "email": "sehee32.park@samsung.com",
        "time": "Fri Dec 22 13:54:05 2017 +0900"
      },
      "committer": {
        "name": "Sehee Park",
        "email": "sehee32.park@samsung.com",
        "time": "Fri Jan 05 18:52:34 2018 +0900"
      },
      "message": "Add checking permission at the setDataSaverModeEnabled()\n\nAdd calling enforceCallingOrSelfPermission() to check\nfor NETWORK_SETTINGS permission at the setDataSaverModeEnabled().\nWhen an application calls for setDataSaverModeEnabled() passing a true\nparameter, the access to Internet from mobile data became unavailable.\n\nTest: Run test app to call setDataSaverModeEnabled() with a true parameter.\nTest: Check the access to Internet from mobile data is available.\nChange-Id: I14af89923e61d81355052704081edf121ef7d06d\nSigned-off-by: Sehee Park \u003csehee32.park@samsung.com\u003e\n"
    },
    {
      "commit": "766f0a4981478ff63854df70ba50e6420d19c02b",
      "tree": "c872efd3a3dff94d09c3d1c8117352d3c2dc65cb",
      "parents": [
        "f30c2c02f07eb7dc7e78a4579b2f2337ec737e9b",
        "f2d081c4530ae766fcf63695155a4a758804738c"
      ],
      "author": {
        "name": "Fyodor Kupolov",
        "email": "fkupolov@google.com",
        "time": "Fri Jan 05 01:53:28 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jan 05 01:53:28 2018 +0000"
      },
      "message": "Merge \"Account: Fix the risk of sqliteconnection leak\""
    },
    {
      "commit": "f30c2c02f07eb7dc7e78a4579b2f2337ec737e9b",
      "tree": "a81e0c7e14fab1e05a442e4a3f5f93dfe9579cc7",
      "parents": [
        "ae81e15c9cbfdc815a9b4e05d035cedabb6131a2",
        "158bde462e7b8b7b5061d343829bc04375ea736c"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jan 05 01:14:44 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jan 05 01:14:44 2018 +0000"
      },
      "message": "Merge changes I872a81ae,I0b9e72d2\n\n* changes:\n  Revert \"Frameworks: Move SharedPreferencesImpl to Future\"\n  Revert \"Frameworks: Silently ignore InterruptedException\"\n"
    },
    {
      "commit": "4f25570acd349bbbd41d9d2806eba6f4a0255780",
      "tree": "e53ac60601f41947c60413eabef26a63ac67aca2",
      "parents": [
        "693d8a2ab1e5da73b03c6bd8da9d5d09fa63d41f"
      ],
      "author": {
        "name": "Benedict Wong",
        "email": "benedictwong@google.com",
        "time": "Mon Nov 06 20:49:10 2017 -0800"
      },
      "committer": {
        "name": "Benedict Wong",
        "email": "benedictwong@google.com",
        "time": "Thu Jan 04 16:56:40 2018 -0800"
      },
      "message": "Add validation to IpSecConfig algorithm setters\n\nAdds checks to ensure that users can only set the correct types of\nalgorithms for the Authentication, Encryption and Authenticated\nEncryption algorithms.\n\nBug: 65223935\nTest: Added tests in IpSecConfigTest, and passed on aosp_marlin-eng\nChange-Id: I462c77d9eb5710b8d03a48866453649d3b6fc6bf\n"
    },
    {
      "commit": "d8c7429418179379c5c7f23ba29a9eee3d22a7c0",
      "tree": "c6b5d87e632bf73e48a3bcde8bd122a28ddd6e51",
      "parents": [
        "6119d8d1d0d89b0d4c4ac822e9e93bb47f1ebd9a"
      ],
      "author": {
        "name": "Nathan Harold",
        "email": "nharold@google.com",
        "time": "Wed Dec 13 19:16:33 2017 -0800"
      },
      "committer": {
        "name": "Nathan Harold",
        "email": "nharold@google.com",
        "time": "Thu Jan 04 15:28:29 2018 -0800"
      },
      "message": "IpSecService - Convert mNextResourceId from AtomicInt to Int\n\nThe mNextResourceId variable is only accessed within synchronized\nblocks, so there is no need to use an atomic integer to synchronize\nit. This eliminates the misleading notion that the variable is\naccessed outside of guarded blocks, which it is not.\n\nBug: 62279167\nTest: cts\nChange-Id: I815835622659f54d2d2d33b349b17c632ebced8d\n"
    },
    {
      "commit": "6119d8d1d0d89b0d4c4ac822e9e93bb47f1ebd9a",
      "tree": "06c23b610231ba13bd4dc743cc4720e1104c21c2",
      "parents": [
        "ae81e15c9cbfdc815a9b4e05d035cedabb6131a2"
      ],
      "author": {
        "name": "Nathan Harold",
        "email": "nharold@google.com",
        "time": "Wed Dec 13 18:51:35 2017 -0800"
      },
      "committer": {
        "name": "Nathan Harold",
        "email": "nharold@google.com",
        "time": "Thu Jan 04 15:28:29 2018 -0800"
      },
      "message": "IpSec Invalidate the Resource IDs on close()\n\nTo facilitate error checking we should invalidate\nthe resource IDs of all objects when we close() them.\nToday, the resource ID is invalidated on the Transform\nobject but not on the SPI or Encap Socket. This CL\nunifies the behavior.\n\nBug: 70641274\nTest: cts - IpSecManagerTest\nChange-Id: I28caec3e913902c748c6a50b4ef742ccef8b1b09\n"
    },
    {
      "commit": "ae81e15c9cbfdc815a9b4e05d035cedabb6131a2",
      "tree": "7a2e94e1e5e14377a78bc5d54b72acd59fef3f69",
      "parents": [
        "15a410a75a833b9700d725016b2d4ba4c2416c1e",
        "c4be79dfb65ac5d5ad3c5b837f9daf2b796387e8"
      ],
      "author": {
        "name": "Manoj Boopathi Raj",
        "email": "manojboopathi@google.com",
        "time": "Thu Jan 04 18:32:00 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jan 04 18:32:00 2018 +0000"
      },
      "message": "Merge \"Fix CTS Test Dual Stack Test Passing Issue\""
    },
    {
      "commit": "661f63131b8aa32caa439fcf4bff5754b067beb4",
      "tree": "394c265082605255e588b14720c50dbd3d74663d",
      "parents": [
        "153fb1c6e0e3aa9694da90860e5f962d0107f43b"
      ],
      "author": {
        "name": "Cassie",
        "email": "xih@google.com",
        "time": "Thu Jan 04 09:46:23 2018 -0800"
      },
      "committer": {
        "name": "Cassie",
        "email": "xih@google.com",
        "time": "Thu Jan 04 10:15:31 2018 -0800"
      },
      "message": "Migrate flag config_telephony_use_own_number_for_voicemail to Carrier\nConfig.\n\nBug: 65683508\nTest: Basic telephony sanity\nChange-Id: I74a24b60bfc0b527f7f0cb6d7084bb7b36aae6e5\n"
    },
    {
      "commit": "158bde462e7b8b7b5061d343829bc04375ea736c",
      "tree": "06be29dbada8283a800fa70bc3ec0f518a67d073",
      "parents": [
        "383f4f397b9be0e70c6a12c171c97678f80045dd"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Jan 03 17:22:35 2018 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Jan 03 17:58:44 2018 -0800"
      },
      "message": "Revert \"Frameworks: Move SharedPreferencesImpl to Future\"\n\nThis reverts commit 70b600d45683b574104d10198da9bce49aa6be23.\n\nIn preparation for a different fix. There are too many loopholes\nwith updates vs commits.\n\nBug: 67986472\nBug: 71533447\nTest: m\nTest: Device boots\nTest: m cts \u0026\u0026 cts-tradefed run commandAndExit cts-dev --module CtsContentTestCases -c android.content.cts.SharedPreferencesTest\nChange-Id: I872a81ae1a26e1f77aad2a52daf88e093a686ec6\n"
    },
    {
      "commit": "383f4f397b9be0e70c6a12c171c97678f80045dd",
      "tree": "1ee459561115b53ef2fceeaf862db3e194603905",
      "parents": [
        "153fb1c6e0e3aa9694da90860e5f962d0107f43b"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Jan 03 17:21:09 2018 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Jan 03 17:58:39 2018 -0800"
      },
      "message": "Revert \"Frameworks: Silently ignore InterruptedException\"\n\nThis reverts commit c8d5fc857208b08b984a802277807e9195b2f9a7.\n\nIn preparation for different fix.\n\nBug: 67986472\nBug: 70122540\nBug: 71533447\nTest: m\nTest: Device boots\nTest: m cts \u0026\u0026 cts-tradefed run commandAndExit cts-dev --module CtsContentTestCases -c android.content.cts.SharedPreferencesTest\nChange-Id: I0b9e72d271725e15c20b68de981303c96ac1bd2a\n"
    },
    {
      "commit": "15a410a75a833b9700d725016b2d4ba4c2416c1e",
      "tree": "248f5a6891c70bee3ea23cf4f6f56b2438c6a6cf",
      "parents": [
        "153fb1c6e0e3aa9694da90860e5f962d0107f43b",
        "cc6ad8cab77ddc9ba620182a001633f937733687"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 04 01:50:43 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jan 04 01:50:43 2018 +0000"
      },
      "message": "Merge \"Add API to get eUICC\u0027s OTA status\""
    },
    {
      "commit": "153fb1c6e0e3aa9694da90860e5f962d0107f43b",
      "tree": "557a87c578481ca20dd582de356b6185d8ca15a6",
      "parents": [
        "f2ebbd135625b5c67c69fe9b4c3fd232bb397616",
        "77ebd08d17f75912de984eae88fadba357d41f7f"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Jan 04 00:48:50 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jan 04 00:48:50 2018 +0000"
      },
      "message": "Merge changes I9de0ffe9,Idc804896\n\n* changes:\n  Use sdkparcelables to generate framework.aidl\n  Initial sdkparcelables\n"
    },
    {
      "commit": "51695b264789df91ddf8ee27efd1db09c16c6a0e",
      "tree": "a4e6d9facc3751896296305bff63a529c8c0ecf1",
      "parents": [
        "f2ebbd135625b5c67c69fe9b4c3fd232bb397616"
      ],
      "author": {
        "name": "Malcolm Chen",
        "email": "refuhoo@google.com",
        "time": "Wed Jan 03 12:10:33 2018 -0800"
      },
      "committer": {
        "name": "Malcolm Chen",
        "email": "refuhoo@google.com",
        "time": "Wed Jan 03 16:45:53 2018 -0800"
      },
      "message": "Rename RadioNetworkConstants to NetworkConstants.\n\nRename RadioNetworkConstants to NetworkConstants and some classes\ninside it.\n\nBug: 64132030\nTest: Build\nChange-Id: I5f3d2310e4f8e556aa32b00e6b6bbe6c4d709afb\n"
    },
    {
      "commit": "cc6ad8cab77ddc9ba620182a001633f937733687",
      "tree": "3803f1e85d67e434c907c4f6fe6385df41f80ab9",
      "parents": [
        "f2ebbd135625b5c67c69fe9b4c3fd232bb397616"
      ],
      "author": {
        "name": "Qingxi Li",
        "email": "qingxi@google.com",
        "time": "Wed Dec 13 15:13:02 2017 -0800"
      },
      "committer": {
        "name": "Qingxi Li",
        "email": "qingxi@google.com",
        "time": "Wed Jan 03 12:42:01 2018 -0800"
      },
      "message": "Add API to get eUICC\u0027s OTA status\n\nThe function will return current eUICC\u0027s OTA status and requests calling\napp has WRITE_EMBEDDED_SUBSCRIPTIONS.\n\nTest: E2E\nBug: 37279356\nChange-Id: I823ed7aa9d86530c4bebd4c0b1a00f0c607105ed\n"
    },
    {
      "commit": "f2ebbd135625b5c67c69fe9b4c3fd232bb397616",
      "tree": "bafafd20ed04a1666b0e83aeaea018cb4a8c5da5",
      "parents": [
        "6522970c1e743d4deb47b53fb66f76259343ea1e",
        "372da168131479df441049e56245c4ab76a860eb"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 03 19:42:24 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 03 19:42:24 2018 +0000"
      },
      "message": "Merge \"Move Ims related settings from global setting to subscription db.\""
    },
    {
      "commit": "6dbd3d7a59748c301cad50685e3940fbcdf37f61",
      "tree": "34e9ef32dfadd8b649605eb2ffe294ae6fce41ad",
      "parents": [
        "1c876b73b3ce305ce9d07f623837f0ee1af2df06"
      ],
      "author": {
        "name": "Yi Kong",
        "email": "yikong@google.com",
        "time": "Wed Dec 27 14:10:54 2017 -0800"
      },
      "committer": {
        "name": "Yi Kong",
        "email": "yikong@google.com",
        "time": "Wed Jan 03 11:41:12 2018 -0800"
      },
      "message": "Add virtual dtor for virtual classes\n\ndelete called on non-final virtual classes but non-virtual destructor.\n\nFixes -Wdelete-non-virtual-dtor warning.\n\nTest: m checkbuild\nChange-Id: I142a2f70286a28722e462df4c160cb7aa3753c2a\n"
    },
    {
      "commit": "6522970c1e743d4deb47b53fb66f76259343ea1e",
      "tree": "90dcef487e67eabb7f3fd135b9cd52a6e4ee13a6",
      "parents": [
        "1c876b73b3ce305ce9d07f623837f0ee1af2df06",
        "4f5e626f69cd4cfcfecdb3253ef5d7c6e1a24c43"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Jan 03 19:33:00 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 03 19:33:00 2018 +0000"
      },
      "message": "Merge \"Avoid NPE when missing underlyingCaps.\""
    },
    {
      "commit": "1c876b73b3ce305ce9d07f623837f0ee1af2df06",
      "tree": "ff05771dbfa14434a2ef122791d4e7450c549531",
      "parents": [
        "3095fcca4da4f8343105b63c811c6614a84f55f4",
        "e82e89ef9033f02489503196df6da0654ae007be"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 03 01:10:49 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 03 01:10:49 2018 +0000"
      },
      "message": "Merge \"Modify getting of primary storage size\""
    },
    {
      "commit": "3095fcca4da4f8343105b63c811c6614a84f55f4",
      "tree": "9e3ba0d4233bf2cffe8f343eee51417b7da55cbb",
      "parents": [
        "c03c63c8bb7d643a69a0eedff1daab7b57e898a5",
        "ee079333e0ca5498c66c5f2a5b046e7db6c0f775"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jan 02 22:17:21 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 02 22:17:21 2018 +0000"
      },
      "message": "Merge \"Add new RIL requests\""
    },
    {
      "commit": "c4be79dfb65ac5d5ad3c5b837f9daf2b796387e8",
      "tree": "e408467379e08e4bf8f92b10a53e0477381f8095",
      "parents": [
        "c03c63c8bb7d643a69a0eedff1daab7b57e898a5"
      ],
      "author": {
        "name": "manojboopathi",
        "email": "manojboopathi@google.com",
        "time": "Thu Nov 30 17:11:49 2017 -0800"
      },
      "committer": {
        "name": "manojboopathi",
        "email": "manojboopathi@google.com",
        "time": "Tue Jan 02 13:39:13 2018 -0800"
      },
      "message": "Fix CTS Test Dual Stack Test Passing Issue\n\nCTS test should fail if IPV6 Sockets is used on IPV4 address.\nUnfortunately its been passing fine due to unhandled catch\nexception. This is fixed in this CL.\n\nBug: 64435904\nTest: Ran CTS test to verify ./run_cts.sh\nChange-Id: I369c1b5baaa64b64feaa3f298e61f46d1200ea17\n"
    },
    {
      "commit": "c03c63c8bb7d643a69a0eedff1daab7b57e898a5",
      "tree": "8f01753a7ee680fd4eef2a97e5f7f51d2cfaa008",
      "parents": [
        "73200d9ac9438d95f28f0b9df3a7eddbfbf18eae",
        "b6108d621002d4de708ae526e7c2bc95dabef080"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jan 02 20:53:25 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 02 20:53:25 2018 +0000"
      },
      "message": "Merge \"Relax Instant Apps Settings whitelist enforcement\""
    },
    {
      "commit": "4f5e626f69cd4cfcfecdb3253ef5d7c6e1a24c43",
      "tree": "d389a6806798dda79460a43027c3f67e2cd91671",
      "parents": [
        "73200d9ac9438d95f28f0b9df3a7eddbfbf18eae"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Jan 02 11:46:32 2018 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Jan 02 11:48:18 2018 -0700"
      },
      "message": "Avoid NPE when missing underlyingCaps.\n\nTest: builds, boots\nBug: 70391265\nChange-Id: I0f3d3f96596eca3455bcbb29af04c8b34cb18d38\n"
    },
    {
      "commit": "73200d9ac9438d95f28f0b9df3a7eddbfbf18eae",
      "tree": "411fc47a12eabb7cb347f8ad1dddd015dc231cfd",
      "parents": [
        "f7c56624c732c2e0f50096410b80d65163307703",
        "642a8d2d106ef3ba6d0b6627c4f140a2b1f45ab3"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Dec 28 22:07:25 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 28 22:07:25 2017 +0000"
      },
      "message": "Merge \"Add ICCID_PREFIX column in CarridId DB\""
    },
    {
      "commit": "f7c56624c732c2e0f50096410b80d65163307703",
      "tree": "57c522cf71966031b38146f5f23860f019df5f0a",
      "parents": [
        "470ba9d47128776f316cd1fa7d335e424d5a5a76",
        "6593d714b6e1feb3b42d23f4af72e340f0ab0a78"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Dec 28 18:32:51 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 28 18:32:51 2017 +0000"
      },
      "message": "Merge \"Disable sanitizer entirely in ResourceTypes.cpp\""
    },
    {
      "commit": "470ba9d47128776f316cd1fa7d335e424d5a5a76",
      "tree": "c096f6e86fa04e8821ba920b1f9153f3e2dfc06a",
      "parents": [
        "d4d542e0ca8ee116e7a5aa43cb8f5d9be50cd3cf",
        "23192ff57f740fbafe76aac05d6af2c0785343d1"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Dec 28 18:17:34 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 28 18:17:34 2017 +0000"
      },
      "message": "Merge \"Added AIDL for cell identity\""
    }
  ],
  "next": "d4d542e0ca8ee116e7a5aa43cb8f5d9be50cd3cf"
}
