)]}'
{
  "log": [
    {
      "commit": "511531a6ae050be5f375b12f7b9602d863551caa",
      "tree": "2374923c0e66601c411c32ba61b5b7c7ad78877d",
      "parents": [
        "cddbfe5496633c6627835808003b8fad5876e30e"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Tue Aug 15 12:48:54 2017 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Tue Aug 15 13:40:35 2017 -0700"
      },
      "message": "AudioPolicyService: Acquire mutex for SoundTriggerSession\n\nTest: Enable always on GSA\nBug: 64340921\nMerged-In: I05d8c680be97ba4c92081425596addcc038f7dda\nChange-Id: I05d8c680be97ba4c92081425596addcc038f7dda\n"
    },
    {
      "commit": "acbb8e7dd14793991a3e231f086fadc76e903216",
      "tree": "22cf4629c6137993b8742bfea7df875ac3dbbc27",
      "parents": [
        "abbc9ab00608f0502fbe30384c0b1b612dd59114",
        "4324bdc8f7a995bf05be8c6db8e9b1528b46c197"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Jul 10 20:09:02 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Jul 10 20:09:02 2017 +0000"
      },
      "message": "Merge \"audio effects: filter reserved effect commands\" into klp-dev am: f57dc8b72f am: dc2efe3808\nam: 4324bdc8f7\n\nChange-Id: I161bc14d3059af24463cfa4f473305b516a3bcd8\n"
    },
    {
      "commit": "4324bdc8f7a995bf05be8c6db8e9b1528b46c197",
      "tree": "3c6c2b4cf5c7c276029ea9e5757182860e634c7f",
      "parents": [
        "6235afe24e4f6cf5eba433789ca8944225ddf6b0",
        "dc2efe380852beb88e71e360211e5ca4579eb2f6"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Jul 10 20:04:31 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Jul 10 20:04:31 2017 +0000"
      },
      "message": "Merge \"audio effects: filter reserved effect commands\" into klp-dev am: f57dc8b72f\nam: dc2efe3808\n\nChange-Id: I7a613ea97315971ce0abfc34ce5f1fc4034d5ad8\n"
    },
    {
      "commit": "f57dc8b72fc16d170b17d55608f07648855257f3",
      "tree": "737cf4e43879c7e3e577e3474cb62bafd3d24f27",
      "parents": [
        "cf39f0e67ab16d96b9b862641194e226d35afb79",
        "0882414c30cbe31dfe69fa261e3286fa04c553ba"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Jul 10 19:52:17 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 10 19:52:17 2017 +0000"
      },
      "message": "Merge \"audio effects: filter reserved effect commands\" into klp-dev"
    },
    {
      "commit": "6235afe24e4f6cf5eba433789ca8944225ddf6b0",
      "tree": "614e0d25845f60f855ec1888adcd5b1e37591167",
      "parents": [
        "24ef54ecb8e825f51b2750dbb8b2ea2139cebd8c",
        "6790e790ef9d5f2b49d6f86188e104f6fe500023"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Jun 19 16:56:43 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Jun 19 16:56:43 2017 +0000"
      },
      "message": "Track: Check buffer size of static tracks am: cf39f0e67a\nam: 6790e790ef\n\nChange-Id: I2cb0ce9e086e15b037f6de6086072d107fbaf571\n"
    },
    {
      "commit": "782a30d2abbf20bf617c19983829fe78cdc235f1",
      "tree": "824f3768fd99df018be0164572a7ed7aa82b56f8",
      "parents": [
        "d971d188737cb179dba19a27e513e07c78252bf5",
        "f4aeab2bd69bead05ed75ae3254f53a6ab2316b5"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Jun 19 16:35:00 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 19 16:35:01 2017 +0000"
      },
      "message": "Merge \"Track: Check buffer size of static tracks\" into lmp-dev"
    },
    {
      "commit": "0882414c30cbe31dfe69fa261e3286fa04c553ba",
      "tree": "5559abaf90754b43d118e1962d9569fa5cb9638d",
      "parents": [
        "1159ffd5e3f832206982d45a7b030b943cc4775e"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jun 15 18:43:46 2017 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sat Jun 17 21:47:52 2017 +0000"
      },
      "message": "audio effects: filter reserved effect commands\n\nBlock effect commands reserved for framework use when\nreceived on server side IAudioEffect. Applications have no reason\nto use these commands and they present a unnecessary attack surface.\n\nBug: 62019992\nTest: run CTS tests for audio effects\nChange-Id: Ie680d5d5650f99dbabf93891703e1cde2c2e852d\n"
    },
    {
      "commit": "a35816475b907f3cead491f1c39ea72967f49fe5",
      "tree": "4b1bfcaa3885a8d64b625e44313021237bde2601",
      "parents": [
        "8818bf1fbb9ea6b65cd61543ed7db986c3d65d13",
        "24ef54ecb8e825f51b2750dbb8b2ea2139cebd8c"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Jun 16 23:54:39 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Jun 16 23:54:39 2017 +0000"
      },
      "message": "AudioFlinger: Fix memory allocation for client-less tracks am: 1159ffd5e3 am: f242b890c4\nam: 24ef54ecb8\n\nChange-Id: I0b413afa5c0e41fadcd0320f7481172cc2398018\n"
    },
    {
      "commit": "24ef54ecb8e825f51b2750dbb8b2ea2139cebd8c",
      "tree": "2b7f50cb76a81fdabe3f0f91f534fae2085967da",
      "parents": [
        "966e572c69397616d31f378fe10089ca99373824",
        "f242b890c45ef019d1cf131d3289ba72a06451e0"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Jun 16 23:51:37 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Jun 16 23:51:37 2017 +0000"
      },
      "message": "AudioFlinger: Fix memory allocation for client-less tracks am: 1159ffd5e3\nam: f242b890c4\n\nChange-Id: I5bd38c33b13de93e641e50c39cdfe37dbae59923\n"
    },
    {
      "commit": "cf39f0e67ab16d96b9b862641194e226d35afb79",
      "tree": "6f0700eee053d88429fc5cbf59aecf8de79019a8",
      "parents": [
        "1159ffd5e3f832206982d45a7b030b943cc4775e"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Jun 12 17:22:46 2017 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Thu Jun 15 18:10:10 2017 -0700"
      },
      "message": "Track: Check buffer size of static tracks\n\nMerged-In: Ia7edd9a802905214a27961dbcec6352f6ef98f73\nMerged-In: I633caf563d3607dbe4b9be10be1687efce33469c\nTest: Native POC\nBug: 38340117\nChange-Id: I633caf563d3607dbe4b9be10be1687efce33469c\n"
    },
    {
      "commit": "f4aeab2bd69bead05ed75ae3254f53a6ab2316b5",
      "tree": "683ef1ac8035e7bc783d68e7ebd8a7e20dc84893",
      "parents": [
        "ea83248dfb1822e0c0d507f38b13d90a9641261e"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Jun 12 17:22:46 2017 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Thu Jun 15 18:08:47 2017 -0700"
      },
      "message": "Track: Check buffer size of static tracks\n\nMerged-In: Ia7edd9a802905214a27961dbcec6352f6ef98f73\nTest: Native POC\nBug: 38340117\nChange-Id: I633caf563d3607dbe4b9be10be1687efce33469c\n"
    },
    {
      "commit": "1159ffd5e3f832206982d45a7b030b943cc4775e",
      "tree": "aef16a6e9d49e0d1b59bef3b487f21244e1ab8ee",
      "parents": [
        "ef3a4aead0eb4d6b0615159489d4a187ce90de2c"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Feb 13 18:50:48 2017 -0800"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Jun 12 17:52:06 2017 -0700"
      },
      "message": "AudioFlinger: Fix memory allocation for client-less tracks\n\nTest: Ringtone with BT\nBug: 35350587\nBug: 38340117\nChange-Id: If247d319d58f8f4d18b49f58ec950491871ebb2d\n(cherry picked from commit afb31487f3156a7284d2f0d06646c7bc00d99537)\n"
    },
    {
      "commit": "de6072164a8d2bca2cd404741a121344a3e8bc33",
      "tree": "c81db7db73896f62bab63d3349e08277f2af7b2a",
      "parents": [
        "daaabdcaac696870285d8ad83502fe4319c5e719",
        "737754e97a7b33909f47b2d19cb3544f3b598413"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Mar 10 22:36:28 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Mar 10 22:36:28 2017 +0000"
      },
      "message": "Merge \"DO NOT MERGE AudioFlinger: Check framecount overflow when creating track\" into klp-dev am: e0da30dc57\nam: 737754e97a\n\nChange-Id: Ide9fb3f4955a31ade22f99c299f441d8413c1b88\n"
    },
    {
      "commit": "64e843f1c312382e3e1a6f6e17f8d895e9c6efe8",
      "tree": "ef414eb6b5d745aba49a9bb3823470ace97265e6",
      "parents": [
        "b6aa3901ceb4b51ca1e51799e8cc95f630d49c33"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Feb 13 18:48:39 2017 -0800"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Tue Feb 14 16:39:50 2017 -0800"
      },
      "message": "DO NOT MERGE AudioFlinger: Check framecount overflow when creating track\n\nTest: Native POC\nBug: 34749571\nChange-Id: I7529658e52ac7e64d162eb5338f10fb25eaa8fe7\n"
    },
    {
      "commit": "eaa3969f757291f151efedde17ec529b8659024d",
      "tree": "da8f3a44d66a2c8f16114aab652a58079487cce9",
      "parents": [
        "e5a54485e08400a976092cd5b1c6d909d0e1a4ab"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Feb 13 18:48:39 2017 -0800"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Feb 15 00:38:02 2017 +0000"
      },
      "message": "AudioFlinger: Check framecount overflow when creating track\n\nTest: Native POC\nBug: 34749571\nChange-Id: I7529658e52ac7e64d162eb5338f10fb25eaa8fe7\n(cherry picked from commit 1883f69de5f2c4e71df58d5b71d7c39f9779b50c)\n"
    },
    {
      "commit": "73a152960b7c795f1fe2e16a09451417181a998c",
      "tree": "30adc56c560dad2f381fd664e5052ea13c0055f4",
      "parents": [
        "94d5167a916bef88fe5980bdfb8ba019fd302641",
        "26cf2f4d73b256b2d766be254830f8254895f632"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jan 04 22:17:58 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jan 04 22:17:58 2017 +0000"
      },
      "message": "DO NOT MERGE - improve audio effect framwework thread safety am: b47a5ab107\nam: 26cf2f4d73\n\nChange-Id: I6513190cce6756c47e5ede0dc578fa0d2c5889b3\n"
    },
    {
      "commit": "84c392104e905bfacc753ec0ddb96ce7813d1889",
      "tree": "0e240354e488fc2694c20c30404dbc1cc98833b3",
      "parents": [
        "98c2151dc33db451ebf7351bdbcb70c163f602b9"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Dec 01 15:28:29 2016 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Dec 15 18:22:49 2016 -0800"
      },
      "message": "DO NOT MERGE - improve audio effect framwework thread safety\n\n- Reorganize handle effect creation code to make sure the effect engine\nis created with both thread and effect chain mutex held.\n- Reorganize handle disconnect code to make sure the effect engine\nis released with both thread and effect chain mutex held.\n- Protect IEffect interface methods in EffectHande with a Mutex.\n- Only pin effect if the session was acquired first.\n- Do not use strong pointer to EffectModule in EffectHandles:\nonly the EffectChain has a single strong reference to the EffectModule.\n- Check reply size before writing status in EffectHandle::command()\n\nBug: 32707507\nBug: 32095713\nChange-Id: Ia1098cba2cd32cc2d1c9dfdff4adc2388dfed80e\n"
    },
    {
      "commit": "b47a5ab10732758aa84a064a0729314f3897d802",
      "tree": "e199df1695a26ec44920c5f7336a25f8160bd56a",
      "parents": [
        "1576f5968c4458af357065bf0f10acf71754cc21"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Dec 01 15:28:29 2016 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Dec 15 17:43:51 2016 -0800"
      },
      "message": "DO NOT MERGE - improve audio effect framwework thread safety\n\n- Reorganize handle effect creation code to make sure the effect engine\nis created with both thread and effect chain mutex held.\n- Reorganize handle disconnect code to make sure the effect engine\nis released with both thread and effect chain mutex held.\n- Protect IEffect interface methods in EffectHande with a Mutex.\n- Only pin effect if the session was acquired first.\n- Do not use strong pointer to EffectModule in EffectHandles:\nonly the EffectChain has a single strong reference to the EffectModule.\n- Check reply size before writing status in EffectHandle::command()\n\nBug: 32707507\nBug: 32095713\n\nChange-Id: Ia1098cba2cd32cc2d1c9dfdff4adc2388dfed80e\n"
    },
    {
      "commit": "42429500612b768902442c9fe594327511462cc5",
      "tree": "db679b7d174cfb79cc290af0ecedea5c38306946",
      "parents": [
        "9161586309fd018a1503dc5227f2cb329b935213",
        "9851dee7da476848ae9ef5e8fe07d3634d50c208"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Sat Dec 03 00:40:33 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Dec 03 00:40:33 2016 +0000"
      },
      "message": "Effect: Use local cached data for Effect commit am: dd79ccda92 am: 82c8c7656f\nam: 9851dee7da\n\nChange-Id: I3d375c671122e61cf0b530457c37c1cd5c06e563\n"
    },
    {
      "commit": "9851dee7da476848ae9ef5e8fe07d3634d50c208",
      "tree": "1d377280d0fc010e3bb64a78150537750f779221",
      "parents": [
        "3e8ab60b7f65dd4c5c9efa4a1c388a51fbbb5d11",
        "82c8c7656f7c7b7269fd7f7a9f1e657109824123"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Sat Dec 03 00:38:33 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Dec 03 00:38:33 2016 +0000"
      },
      "message": "Effect: Use local cached data for Effect commit am: dd79ccda92\nam: 82c8c7656f\n\nChange-Id: I8819bc1146b0b751abc0790edd4b7d73f2198038\n"
    },
    {
      "commit": "82c8c7656f7c7b7269fd7f7a9f1e657109824123",
      "tree": "656627902f4f2db291620bee9b17c251b9fa164f",
      "parents": [
        "01e854056a73ee914bbac079389c720e813e4c57",
        "dd79ccda92c1e9b982b2d0f8877d98e5258fbb73"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Sat Dec 03 00:36:01 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Dec 03 00:36:01 2016 +0000"
      },
      "message": "Effect: Use local cached data for Effect commit\nam: dd79ccda92\n\nChange-Id: Ide8165907e03b9d400eaa33a222ceeae782d6509\n"
    },
    {
      "commit": "1576f5968c4458af357065bf0f10acf71754cc21",
      "tree": "656627902f4f2db291620bee9b17c251b9fa164f",
      "parents": [
        "e275907e576601a3579747c3a842790bacf111e2",
        "dd79ccda92c1e9b982b2d0f8877d98e5258fbb73"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Sat Dec 03 00:32:27 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Dec 03 00:32:27 2016 +0000"
      },
      "message": "Merge \"Effect: Use local cached data for Effect commit\" into klp-dev"
    },
    {
      "commit": "9161586309fd018a1503dc5227f2cb329b935213",
      "tree": "b4017c17bc9ddbd82a9e92f57e41dc609da2eff4",
      "parents": [
        "8b850ec8d52d436f273ecbd745fa906f0aeb54a7",
        "3e8ab60b7f65dd4c5c9efa4a1c388a51fbbb5d11"
      ],
      "author": {
        "name": "rago",
        "email": "rago@google.com",
        "time": "Wed Nov 30 19:23:21 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Nov 30 19:23:21 2016 +0000"
      },
      "message": "Fix security vulnerability: potential OOB write in audioserver am: e275907e57 am: 01e854056a\nam: 3e8ab60b7f\n\nChange-Id: Ib575df34ec5bb7dc2cd83a859e10abe94e894317\n"
    },
    {
      "commit": "3e8ab60b7f65dd4c5c9efa4a1c388a51fbbb5d11",
      "tree": "b1852edf3c7b545717eec35f61b134f6d6fc79be",
      "parents": [
        "756f8dcdc1550b9115fe2369dfa14f46a5854d1e",
        "01e854056a73ee914bbac079389c720e813e4c57"
      ],
      "author": {
        "name": "rago",
        "email": "rago@google.com",
        "time": "Wed Nov 30 19:17:48 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Nov 30 19:17:48 2016 +0000"
      },
      "message": "Fix security vulnerability: potential OOB write in audioserver am: e275907e57\nam: 01e854056a\n\nChange-Id: I7ea6a871eed4b9e1c56c5350c4e5fb5eb628e816\n"
    },
    {
      "commit": "e275907e576601a3579747c3a842790bacf111e2",
      "tree": "6a6550b1636a64348b4d53d38fdb3039482f5c98",
      "parents": [
        "501aee7a542a8c461d48c27cb1148a0936e3a9e5"
      ],
      "author": {
        "name": "rago",
        "email": "rago@google.com",
        "time": "Tue Nov 22 18:02:48 2016 -0800"
      },
      "committer": {
        "name": "rago",
        "email": "rago@google.com",
        "time": "Tue Nov 29 12:17:49 2016 -0800"
      },
      "message": "Fix security vulnerability: potential OOB write in audioserver\n\nBug: 32705438\nBug: 32703959\nTest: cts security test\nChange-Id: I8900c92fa55b56c4c2c9d721efdbabe6bfc8a4a4\n"
    },
    {
      "commit": "dd79ccda92c1e9b982b2d0f8877d98e5258fbb73",
      "tree": "eb7a2f14f528ad018d570b1412fcdcf3c03d57ea",
      "parents": [
        "501aee7a542a8c461d48c27cb1148a0936e3a9e5"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Tue Nov 15 17:19:58 2016 -0800"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Nov 16 02:33:53 2016 +0000"
      },
      "message": "Effect: Use local cached data for Effect commit\n\nTest: POC, Cts Effect, BassBoost, EnvReverb, Equalizer,\nTest: LoudnessEnhancer, PresetReverb, Virtualizer, Visualizer\nBug: 32220769\nChange-Id: Iea96ba0daf71691ee8954cca4ba1c10fe827626e\n"
    },
    {
      "commit": "79a088a065f04239f404c4f94bc0d8bcc82ffaad",
      "tree": "3ccd5506f9dd4185a308776a29c63a434b94dd82",
      "parents": [
        "354864c4438b3110dd58710845246872d267aca6",
        "14d87911d7409ce7ccea00980fafccf2bd60e301"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Thu Nov 10 19:33:22 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Nov 10 19:33:22 2016 +0000"
      },
      "message": "Effects: Check get parameter command size am: 3d34cc76e3 am: 59920bf785\nam: 14d87911d7\n\nChange-Id: Icbc43a1d34af774dcf500cdb3548d0399f0b6943\n"
    },
    {
      "commit": "14d87911d7409ce7ccea00980fafccf2bd60e301",
      "tree": "8a9341761d5c7736db3c006ef09f600c5ed3912d",
      "parents": [
        "684314f19610388729dabcc4991c94fb1cba2f6c",
        "59920bf785ccc85eb9a4d372bb5d88097454c1a4"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Thu Nov 10 19:26:21 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Nov 10 19:26:21 2016 +0000"
      },
      "message": "Effects: Check get parameter command size am: 3d34cc76e3\nam: 59920bf785\n\nChange-Id: I2d90659faa7d0085b33d0f527a97fa6dc82a70d7\n"
    },
    {
      "commit": "3d34cc76e315dfa8c3b1edf78835b0dab4980505",
      "tree": "fb24b34565049a9208769dc0424aba9d0cd666fd",
      "parents": [
        "2c28e5b1266a12163fed8236d34830f69f8216a2"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Nov 04 19:40:53 2016 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Sat Nov 05 02:52:49 2016 +0000"
      },
      "message": "Effects: Check get parameter command size\n\nTest: Custom test.\nBug: 32438594\nBug: 32624850\nBug: 32635664\nChange-Id: I9b1315e2c02f11bea395bfdcf5c1ccddccbad8a6\n"
    },
    {
      "commit": "36e11a4c23d045a63b24b1ad09fc535737d4c8a1",
      "tree": "c6c3647811b9552eebbf2a7b5cd30fc7de4c4760",
      "parents": [
        "6cc3c2dc98322dc668d10de7ca62b31486f34047",
        "ef0c91518446e65533ca8bab6726a845f27c73fd"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Aug 19 21:27:39 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Aug 19 21:27:39 2016 +0000"
      },
      "message": "Merge \"soundtrigger: add size check on sound model and recogntion data\" into lmp-dev"
    },
    {
      "commit": "d37cf46848ff1eeedcf2c05bf00c18582941a412",
      "tree": "bec8df82d205971616059be56b15999e3e69f605",
      "parents": [
        "83cf293b73ed9ddff3162b75083f6a75dd07b7f2",
        "ebd9f1029e5e317e0fcf37163b741a0e48a39fa1"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Aug 19 19:04:15 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Aug 19 19:04:15 2016 +0000"
      },
      "message": "Add EFFECT_CMD_SET_PARAM parameter checking am: e4a1d91501 am: 19d8a61324\nam: ebd9f1029e\n\nChange-Id: Ic2fa5bba22d9ffc7b69ea97e2e4bc44d8a0fa42d\n"
    },
    {
      "commit": "ebd9f1029e5e317e0fcf37163b741a0e48a39fa1",
      "tree": "931343ad910a5eba7aafea38f52f340ca8f9b528",
      "parents": [
        "2a21f09fff5e80b306ec30a618d54a4827447f3a",
        "19d8a613243886f40660fd6bb50ba9138149421e"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Aug 19 18:59:06 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Aug 19 18:59:06 2016 +0000"
      },
      "message": "Add EFFECT_CMD_SET_PARAM parameter checking am: e4a1d91501\nam: 19d8a61324\n\nChange-Id: I002990dc446d8a713f41b77671d17dbb11a914f9\n"
    },
    {
      "commit": "e4a1d91501d47931dbae19c47815952378787ab6",
      "tree": "427ee53e773dbdbb8b60f10ac9c8ae068bd30fdd",
      "parents": [
        "17a10c50e20d934c1ac5956fe9019d3013e3f8b3"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Aug 17 14:11:13 2016 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Thu Aug 18 15:56:23 2016 -0700"
      },
      "message": "Add EFFECT_CMD_SET_PARAM parameter checking\n\nBug: 30204301\nChange-Id: Ib9c3ee1c2f23c96f8f7092dd9e146bc453d7a290\n"
    },
    {
      "commit": "ef0c91518446e65533ca8bab6726a845f27c73fd",
      "tree": "879524e4fb40ef4a028c07ed3546aec02034767b",
      "parents": [
        "8f4b1a7de0e102b9203cfda3970edd2eedd9becf"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Aug 17 06:19:32 2016 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Aug 18 10:01:49 2016 +0000"
      },
      "message": "soundtrigger: add size check on sound model and recogntion data\n\nBug: 30148546\n\nChange-Id: I082f535a853c96571887eeea37c6d41ecee7d8c0\n(cherry picked from commit bb00d8f139ff51336ab3c810d35685003949bcf8)\n"
    },
    {
      "commit": "5c1f01675ca0f4f231f206fc7fe64d353592f726",
      "tree": "0d22666b8004a8e4ae781514d99b9a00e0059d16",
      "parents": [
        "8b35cb563de25a0b5f743de2eeb385a87e95ca6c",
        "4bec033dedcb2e9297001878c7837a3d46d205a3"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Jun 21 22:03:33 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jun 21 22:03:33 2016 +0000"
      },
      "message": "Merge \\\\\"DO NOT MERGE: Camera: Adjust pointers to ANW buffers to avoid infoleak\\\\\" into klp-dev am: 22d6575710\nam: 4bec033ded\n\nChange-Id: I68dd7d3ea94b10104c235007fd03230ef5ae0146\n"
    },
    {
      "commit": "22d65757103e46bef8c6902ea08c84a775b62a0b",
      "tree": "57ee9ab2cc93c2fbaaaaf8e77999dac195fc770e",
      "parents": [
        "5713902f6a21fdcb390581e805996cd420cf0218",
        "7a3de84808f700615816397acc7c7927987bab6e"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Jun 21 21:57:34 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 21 21:57:34 2016 +0000"
      },
      "message": "Merge \"DO NOT MERGE: Camera: Adjust pointers to ANW buffers to avoid infoleak\" into klp-dev"
    },
    {
      "commit": "f832feb17bd70f84417dc468f573792caf99a127",
      "tree": "681ce3d5db15f8161147c550662dd5dd03a8ff21",
      "parents": [
        "71676a9dc4dc82ee9c01ebc1a7fbb140648398d1",
        "54fc49c9f5ac06ea3c21cfe05a00f36c7df91b3f"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Jun 21 21:57:34 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 21 21:57:34 2016 +0000"
      },
      "message": "Merge \"DO NOT MERGE: Camera: Adjust pointers to ANW buffers to avoid infoleak\" into lmp-dev"
    },
    {
      "commit": "195f7c6125d7c0a48c9f7f0aeb0311ba076a8df7",
      "tree": "0cf37057165f2c538565caa6eec53e26346c053b",
      "parents": [
        "719fd3c0625705777f1ef0667005b111733c2e0b",
        "c971a59f4c2491a2e5143f7118debd7c92fa3333"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Tue Jun 21 17:41:26 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jun 21 17:41:26 2016 +0000"
      },
      "message": "Check effect command reply size in AudioFlinger am: 110bc9547a am: 075c8f7713\nam: c971a59f4c\n\nChange-Id: I86d971f1a537a34e90e4f0697c9c9a43e509cfc4\n"
    },
    {
      "commit": "c971a59f4c2491a2e5143f7118debd7c92fa3333",
      "tree": "caf1614ded00369deac9f23323e267f599ba3ab8",
      "parents": [
        "fad42aa98d692c5fd830f7c61b4eb9faf4f7cdca",
        "075c8f7713c880986b98b81938bf56f2d036c369"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Tue Jun 21 17:38:37 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jun 21 17:38:37 2016 +0000"
      },
      "message": "Check effect command reply size in AudioFlinger am: 110bc9547a\nam: 075c8f7713\n\nChange-Id: I7b70873d12dc258b362c88c8a9ea47ca0e0578ca\n"
    },
    {
      "commit": "54fc49c9f5ac06ea3c21cfe05a00f36c7df91b3f",
      "tree": "1ac44e86f7e902ab31974e23e456260033c87a05",
      "parents": [
        "cf1aed625841c82c050fc6d460f561038f772a9c"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Jun 20 17:00:14 2016 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Jun 20 21:32:22 2016 -0700"
      },
      "message": "DO NOT MERGE: Camera: Adjust pointers to ANW buffers to avoid infoleak\n\nSubtract address of a random static object from pointers being routed\nthrough app process.\n\nBug: 28466701\nChange-Id: Idcbfe81e9507433769672f3dc6d67db5eeed4e04\n"
    },
    {
      "commit": "7a3de84808f700615816397acc7c7927987bab6e",
      "tree": "926c2963967ecb1fb82d5b4584433b30dd3e531d",
      "parents": [
        "dc7357d20175fadfabd903370094917408bf6e3e"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Jun 20 17:00:14 2016 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Jun 20 21:32:08 2016 -0700"
      },
      "message": "DO NOT MERGE: Camera: Adjust pointers to ANW buffers to avoid infoleak\n\nSubtract address of a random static object from pointers being routed\nthrough app process.\n\nBug: 28466701\nChange-Id: Idcbfe81e9507433769672f3dc6d67db5eeed4e04\n"
    },
    {
      "commit": "110bc9547a0c851ff1f20f5d7579b34f942947b8",
      "tree": "b719fae497302d432d53af62476ca1508f4854cc",
      "parents": [
        "dc7357d20175fadfabd903370094917408bf6e3e"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Jun 20 15:22:52 2016 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Jun 20 15:22:52 2016 -0700"
      },
      "message": "Check effect command reply size in AudioFlinger\n\nBug: 29251553\nChange-Id: I1bcc1281f1f0542bb645f6358ce31631f2a8ffbf\n"
    },
    {
      "commit": "d6e32200aa134c0fc058bc830ccce7eb4c830026",
      "tree": "e1fc635ca3b0f0baa094c1bcddcbbb96966a538b",
      "parents": [
        "726338dfde794469362f6d62139dee3cf062f030",
        "e57ada1277564469704810aa0ceb353787475c68"
      ],
      "author": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Mon Mar 21 18:29:38 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Mar 21 18:29:38 2016 +0000"
      },
      "message": "Merge \"Camera3Device: Validate template ID\" into klp-dev am: ac5ef62\nam: e57ada1\n\n* commit \u0027e57ada1277564469704810aa0ceb353787475c68\u0027:\n  Camera3Device: Validate template ID\n"
    },
    {
      "commit": "e57ada1277564469704810aa0ceb353787475c68",
      "tree": "b12f709579dbbeecece2c7bd90f0375654237746",
      "parents": [
        "5d44fff74dea989e51236d89b5ca19f37cae2ef3",
        "ac5ef6284656864eca089da83edfd062ea8139b7"
      ],
      "author": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Mon Mar 21 18:24:47 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Mar 21 18:24:47 2016 +0000"
      },
      "message": "Merge \"Camera3Device: Validate template ID\" into klp-dev\nam: ac5ef62\n\n* commit \u0027ac5ef6284656864eca089da83edfd062ea8139b7\u0027:\n  Camera3Device: Validate template ID\n"
    },
    {
      "commit": "116a18940e30859ac04a95ffe4d4fefb313d7ab2",
      "tree": "c37348abc54ddea7552532e1f3d63ab07a2a12cc",
      "parents": [
        "09e024fe9a8dd9646e053275dd636301a9d463f0"
      ],
      "author": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Wed Mar 09 12:21:01 2016 -0800"
      },
      "committer": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Fri Mar 18 20:37:49 2016 +0000"
      },
      "message": "Camera3Device: Validate template ID\n\nValidate template ID before creating a default request.\n\nBug: 26866110\nBug: 27568958\nChange-Id: Ifda457024f1d5c2b1382f189c1a8d5fda852d30d\n"
    },
    {
      "commit": "899823966e78552bb6dfd7772403a4f91471d2b0",
      "tree": "a3ee356874a5200535b4f7debe395fb642ee8098",
      "parents": [
        "e6bd186c7e2a3b948fdd27a4b71048ee85229e7c",
        "88b736a198fb29ffa946b10d0ed993bf15e77a98"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Jan 14 14:55:37 2016 -0800"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Jan 14 14:55:37 2016 -0800"
      },
      "message": "resolve merge conflicts of 88b736a198 to lmp-dev.\n\nChange-Id: Iec3cf4fb4bf75be853a1249ee1439eb4c5b38b50\n"
    },
    {
      "commit": "88b736a198fb29ffa946b10d0ed993bf15e77a98",
      "tree": "0216f148cd794c7e03f63e77e4e6f94413fefe83",
      "parents": [
        "fb2eb8610208d3ad2ea69f57a151ffe436c6c6e6",
        "c9ab2b0bb05a7e19fb057e79b36e232809d70122"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Jan 14 22:34:55 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jan 14 22:34:55 2016 +0000"
      },
      "message": "Camera: Disallow dumping clients directly\nam: c9ab2b0bb0\n\n* commit \u0027c9ab2b0bb05a7e19fb057e79b36e232809d70122\u0027:\n  Camera: Disallow dumping clients directly\n"
    },
    {
      "commit": "c9ab2b0bb05a7e19fb057e79b36e232809d70122",
      "tree": "56b7491b0926f3cee5da173483e2d49e11969237",
      "parents": [
        "5403587a74aee2fb57076528c3927851531c8afb"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Jan 13 10:07:04 2016 -0800"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Jan 13 16:21:49 2016 -0800"
      },
      "message": "Camera: Disallow dumping clients directly\n\nCamera service dumps should only be initiated through\nICameraService::dump.\n\nBug: 26265403\nChange-Id: If3ca4718ed74bf33ad8a416192689203029e2803\n"
    },
    {
      "commit": "5a018d15da438933c30de4b25bcff527331cf8df",
      "tree": "e6f52d6f8fca7722062c34eaedbda04d7c04326d",
      "parents": [
        "dd184a4824acc31160895e2c6f8d93a7facfc2c8",
        "0f21a6880e74b56834940a131df912a49b70e82d"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Oct 14 20:40:42 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Oct 14 20:40:42 2015 +0000"
      },
      "message": "am 0f21a688: Merge \"DO NOT MERGE - AudioFlinger: Clear record buffers when starting RecordThread\" into klp-dev\n\n* commit \u00270f21a6880e74b56834940a131df912a49b70e82d\u0027:\n  DO NOT MERGE - AudioFlinger: Clear record buffers when starting RecordThread\n"
    },
    {
      "commit": "55d1ea47c8aac1d5c6e887e06e8c36bf40eca7d7",
      "tree": "f574ecd2b0097bba5da88c2515ce97ec14eaa2b5",
      "parents": [
        "e5326d965afc8941f85c866ae8dcdc8884c9709c",
        "8c987fa71326eb0cc504959a5ebb440410d73180"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Oct 14 20:30:40 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Oct 14 20:30:40 2015 +0000"
      },
      "message": "Merge \"DO NOT MERGE - AudioFlinger: Clear record buffers when starting RecordThread\" into lmp-dev"
    },
    {
      "commit": "ab0ea0fe9a1e4afad5b39e094f6640318aefdd33",
      "tree": "66a8bd4ee6e4aa4ccdd31f98ce2769cd7683026f",
      "parents": [
        "6272fa1baf361a6a89607243638cc592047947b3"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Thu Sep 24 15:08:13 2015 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Thu Sep 24 16:50:20 2015 -0700"
      },
      "message": "DO NOT MERGE - AudioFlinger: Clear record buffers when starting RecordThread\n\nBug: 24211743\nBug: 24267152\nChange-Id: I58c55e56b85067b71e4e300f947b4dfc159637ba\n"
    },
    {
      "commit": "8c987fa71326eb0cc504959a5ebb440410d73180",
      "tree": "5d7b75a17bf736d15f95880a06b564f03cd03ee1",
      "parents": [
        "a8f90d57f5b3ad4ef7194501aa20f0a0bd903e8f"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Thu Sep 24 16:36:56 2015 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Thu Sep 24 16:49:57 2015 -0700"
      },
      "message": "DO NOT MERGE - AudioFlinger: Clear record buffers when starting RecordThread\n\nBug: 24211743\nBug: 24267152\nChange-Id: I58c55e56b85067b71e4e300f947b4dfc159637ba\n"
    },
    {
      "commit": "06871b42f3280391825532c1a24657877852bc05",
      "tree": "8041c1e0f1c40263a4fca4f55b26db2622287a95",
      "parents": [
        "8ce05c7682767b0866e9d22fec5b42e31be8bd0f"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Oct 30 14:59:13 2014 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Sep 16 12:57:17 2015 -0700"
      },
      "message": "DO NOT MERGE - audio policy: fix commit dea1541f\n\nFix return types in early returns added by\ncommit dea1541f in AudioPolicy binder call methods.\n\nAlso fix former similar mistakes found nearby.\n\nBug: 18001784.\nBug: 18002005.\n\nChange-Id: I088c6029ca04e2c2c2f78e560c9cb6b9576dd88f\n"
    },
    {
      "commit": "8ce05c7682767b0866e9d22fec5b42e31be8bd0f",
      "tree": "f6d521c869a9e7f0d0d94b1c86a1604b267b7f24",
      "parents": [
        "4855cc3dd5a057f435c5ce540a844e46ea76d758"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Oct 28 15:46:45 2014 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Sep 16 12:55:22 2015 -0700"
      },
      "message": "DO NOT MERGE - audio policy: validate stream type received from binder calls.\n\nBug: 18001784.\nBug: 18002005.\nChange-Id: I8efa674dceff5a6e10251b1c7a55e9bb2d532395\n(cherry picked from commit dea1541fc0042abf05674b19c2f94ca086945dfd)\n"
    },
    {
      "commit": "6b52d191f96c611b768318eec74d25908da76d03",
      "tree": "988dd6b443bf363307033e527734dbebf994d342",
      "parents": [
        "5d7a381b9c86ff4f00a95063d57ad0a80467799c",
        "916a9684295fb578f4b3c6c16b621ef201a49964"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Aug 18 21:45:18 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Aug 18 21:45:18 2015 +0000"
      },
      "message": "am 916a9684: Merge \"DO NOT MERGE - audio flinger: fix fuzz test crash\" into klp-dev\n\n* commit \u0027916a9684295fb578f4b3c6c16b621ef201a49964\u0027:\n  DO NOT MERGE - audio flinger: fix fuzz test crash\n"
    },
    {
      "commit": "b97ee930e4f7ed1587b869c92b4aa1dc90b641cc",
      "tree": "b4917494c7a99ff9d4ed9552d2a5f205931593ca",
      "parents": [
        "65842db06c2d77e53cc5ac61692160d844cc7d0a"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri May 08 10:50:03 2015 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Aug 18 11:25:37 2015 -0700"
      },
      "message": "DO NOT MERGE - audio flinger: fix fuzz test crash\n\nClear output stream pointer in duplicating thread\nwhen the main output to which it is attached is closed.\n\nAlso do not forward master mute and volume commands to\nduplicating threads as this is not applicable.\n\nAlso fix logic in AudioFlinger::primaryPlaybackThread_l()\nthat could accidentally return a duplicating thread.\nThis never happens because the primary thread is always\nfirst in the list.\n\nBug: 20731946.\nChange-Id: Ic8869699836920351b23d09544c50a258d3fb585\n(cherry picked from commit f6870aefc5e31d4220f3778c4e79ff34a61f48ad)\n"
    },
    {
      "commit": "22ac20eff5b67f33b9d04ca54abeaa22ce201039",
      "tree": "e0fcb0e06bb14a3e9d34a514be6e912e6b6c8192",
      "parents": [
        "1a09d3521e8849dcb1090ecb50393f6e9ee140ec"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri May 08 10:50:03 2015 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Aug 17 18:11:04 2015 -0700"
      },
      "message": "DO NOT MERGE - audio flinger: fix fuzz test crash\n\nClear output stream pointer in duplicating thread\nwhen the main output to which it is attached is closed.\n\nAlso do not forward master mute and volume commands to\nduplicating threads as this is not applicable.\n\nAlso fix logic in AudioFlinger::primaryPlaybackThread_l()\nthat could accidentally return a duplicating thread.\nThis never happens because the primary thread is always\nfirst in the list.\n\nBug: 20731946.\nChange-Id: Ic8869699836920351b23d09544c50a258d3fb585\n"
    },
    {
      "commit": "995599cbd6ada739c257716a6d8b90eee6d61473",
      "tree": "88b7f8beeb6c560f5868e7f254d8b2e097caceea",
      "parents": [
        "9c0c41ff36926030778a8a41210d02602c5a9f62"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Nov 07 17:28:28 2014 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Nov 10 17:03:11 2014 +0000"
      },
      "message": "audioflinger: fix duplicating thread output buffers clear\n\nAlso clear mix buffer in DuplicatingThread::threadLoop_mix()\ninstead of just sink buffer when output threads are not\nready.\n\nBug: 18262127.\nChange-Id: I4c22bbeaccdcc8d7c10c5882dde3439eb73d6ede\n(cherry picked from commit 02b5708776ba2a9b4ff8c09008483aef7dbe38c7)\n"
    },
    {
      "commit": "ca83dd27f6c662bcbb0cea204c4df7ca77a479fd",
      "tree": "95f757e844428af69933cbbe7c745f497784af5b",
      "parents": [
        "b6dcdbf436ffacb52a41ac8ef9b07f99fd64779f",
        "42f785c5d5ae596d781171327c98c541f0517feb"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Oct 31 00:26:23 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Oct 31 00:26:23 2014 +0000"
      },
      "message": "am 42f785c5: am 4fbe49a8: am 96016c2d: am 9944ff09: am 70c3507d: am 450b10c9: am d0f9dc71: am e0a65f30: am f5af3a72: am 6d80b687: audio policy: validate stream type received from binder calls.\n\n* commit \u002742f785c5d5ae596d781171327c98c541f0517feb\u0027:\n  audio policy: validate stream type received from binder calls.\n"
    },
    {
      "commit": "42f785c5d5ae596d781171327c98c541f0517feb",
      "tree": "adf53db0dcfa59697a65031f7c97f90706eb05f2",
      "parents": [
        "6fd1cf0c00ee76802cfff0035011691aac8a1724",
        "4fbe49a83d41a64d44e363ccd691e7bfc41bb6af"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Oct 31 00:17:14 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Oct 31 00:17:14 2014 +0000"
      },
      "message": "am 4fbe49a8: am 96016c2d: am 9944ff09: am 70c3507d: am 450b10c9: am d0f9dc71: am e0a65f30: am f5af3a72: am 6d80b687: audio policy: validate stream type received from binder calls.\n\n* commit \u00274fbe49a83d41a64d44e363ccd691e7bfc41bb6af\u0027:\n  audio policy: validate stream type received from binder calls.\n"
    },
    {
      "commit": "4fbe49a83d41a64d44e363ccd691e7bfc41bb6af",
      "tree": "18f8ffafd33e096cefad64bf3170e4b90c456951",
      "parents": [
        "8654365499f8e9956c490e98184abe33978d4e67",
        "96016c2d583ccca9fffd6974cb9473f7effd6cf5"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Oct 31 00:11:15 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Oct 31 00:11:15 2014 +0000"
      },
      "message": "am 96016c2d: am 9944ff09: am 70c3507d: am 450b10c9: am d0f9dc71: am e0a65f30: am f5af3a72: am 6d80b687: audio policy: validate stream type received from binder calls.\n\n* commit \u002796016c2d583ccca9fffd6974cb9473f7effd6cf5\u0027:\n  audio policy: validate stream type received from binder calls.\n"
    },
    {
      "commit": "96016c2d583ccca9fffd6974cb9473f7effd6cf5",
      "tree": "1e08676a39464d8bd88c910bb3a11585dd3229f8",
      "parents": [
        "0d83cf22991c48f4bb5f2afe3d16ae076861f394",
        "9944ff09ac4eb076cab994ef245b0103f60836ba"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Oct 30 23:55:43 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 30 23:55:43 2014 +0000"
      },
      "message": "am 9944ff09: am 70c3507d: am 450b10c9: am d0f9dc71: am e0a65f30: am f5af3a72: am 6d80b687: audio policy: validate stream type received from binder calls.\n\n* commit \u00279944ff09ac4eb076cab994ef245b0103f60836ba\u0027:\n  audio policy: validate stream type received from binder calls.\n"
    },
    {
      "commit": "70c3507d915baaa5a0ab163eeb0a445030f4f492",
      "tree": "ad9a132f21ff995adccfd63b56af96b69a497c66",
      "parents": [
        "ab0b3212e0c15132f2dab2beeb39c47d31bb1dab",
        "450b10c97514411ef1d0d887d4e18851fd286f0b"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Oct 30 23:41:08 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 30 23:41:08 2014 +0000"
      },
      "message": "am 450b10c9: am d0f9dc71: am e0a65f30: am f5af3a72: am 6d80b687: audio policy: validate stream type received from binder calls.\n\n* commit \u0027450b10c97514411ef1d0d887d4e18851fd286f0b\u0027:\n  audio policy: validate stream type received from binder calls.\n"
    },
    {
      "commit": "d0f9dc7156e531d5cd0615f6e682d2449e08e9a7",
      "tree": "b586fddb4c97ee094a3a3b266f1833f115aa2b89",
      "parents": [
        "cb5dc219b78e6eeacb7ee2f5c93e6763db677122",
        "e0a65f3008ac5874106b21d03e19296c8015da41"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Oct 30 23:01:01 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 30 23:01:01 2014 +0000"
      },
      "message": "am e0a65f30: am f5af3a72: am 6d80b687: audio policy: validate stream type received from binder calls.\n\n* commit \u0027e0a65f3008ac5874106b21d03e19296c8015da41\u0027:\n  audio policy: validate stream type received from binder calls.\n"
    },
    {
      "commit": "e0a65f3008ac5874106b21d03e19296c8015da41",
      "tree": "c7f7949257bb489bb9950949190f0e90af60cf6f",
      "parents": [
        "74abb1ae32fbd3fa4112cc8b8d53882777feb191",
        "f5af3a72f308cd4dff7859e62922ee5a13bd4c15"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Oct 30 22:52:48 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 30 22:52:48 2014 +0000"
      },
      "message": "am f5af3a72: am 6d80b687: audio policy: validate stream type received from binder calls.\n\n* commit \u0027f5af3a72f308cd4dff7859e62922ee5a13bd4c15\u0027:\n  audio policy: validate stream type received from binder calls.\n"
    },
    {
      "commit": "f5af3a72f308cd4dff7859e62922ee5a13bd4c15",
      "tree": "a213a936d8f9261d5e2a388f1f5f4ee3e22120b0",
      "parents": [
        "482b18bbfd6c9214157bfab47feae86df48a7178",
        "6d80b687c3b8d9c8da7cdad7d9813aa51c1cf15e"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Oct 30 22:44:00 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 30 22:44:00 2014 +0000"
      },
      "message": "am 6d80b687: audio policy: validate stream type received from binder calls.\n\n* commit \u00276d80b687c3b8d9c8da7cdad7d9813aa51c1cf15e\u0027:\n  audio policy: validate stream type received from binder calls.\n"
    },
    {
      "commit": "6d80b687c3b8d9c8da7cdad7d9813aa51c1cf15e",
      "tree": "9080cb3987c321a7fe607e509be32e6269da138c",
      "parents": [
        "f106b1993143df44282777253244ce67974c9d4a"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Oct 30 14:46:18 2014 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Oct 30 15:09:05 2014 -0700"
      },
      "message": "audio policy: validate stream type received from binder calls.\n\nBug: 18001784.\nBug: 18002005.\nChange-Id: If08866a3c21bcbfd8cdbbf8336bcf1faad66f321\n"
    },
    {
      "commit": "661c21da5592ca48256747ec220efb2e599eeb72",
      "tree": "75a5f011edf8a5773b689abcc836a99a3e10744d",
      "parents": [
        "168799c32ce3f9196ae7928986a7ba3770c74b14"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Oct 22 14:21:12 2014 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Oct 22 14:21:12 2014 -0700"
      },
      "message": "CameraService: Disconnect: Release mutex while waiting for joins.\n\nThe threads shutting down may have callpaths that require taking the\nbinder interface mutex, so waiting to join them with that mutex held\ncan lead to deadlocks.\n\nA specific instance is StreamingProcessor calling dataCallbackTimestamp,\nwhich can immediately lead to a Camera2Client::releaseRecordingFrame call,\nwhich requires the binder interface mutex. If this call happens right when\nshutdown is occurring, and Camera2Client::disconnect is holding the mutex,\ndeadlock ensues.\n\nBug: 17997578\nChange-Id: I71253cd5542b5920ad205976d315110ca0043d94\n"
    },
    {
      "commit": "7de5ac1f067ec61f7ea424d5534cfd40987b11fa",
      "tree": "93d7a87cd7462d484b4ee882a70c3163ce2f73ac",
      "parents": [
        "d5923409bbcbb22954a92c2b497ef4492d7cb6a5"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Oct 21 09:07:11 2014 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Oct 21 09:56:18 2014 -0700"
      },
      "message": "audio policy: fix effect handle leak\n\nFix ref counting error in AudioPolicyEffect::addInputEffects()\nand addOutputSessionEffects()\n\nBug: 17675112.\nChange-Id: I5267d1024a585919f66ead83662e57b78ba53540\n"
    },
    {
      "commit": "ac302143551a8b964f026385a524dda9ff8ea5ba",
      "tree": "7c32fc205e52cb690abd0e7bbe46c749eac38b48",
      "parents": [
        "22bc10a347569a0ab2980c24783e31aba4d7414d"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Oct 20 13:15:38 2014 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Oct 20 13:15:38 2014 -0700"
      },
      "message": "Fix the fix\n\nWe need to clear the buffer a little more often.\n\nBug: 18023017\nChange-Id: If8a522b9133a4269e2435af8958f6ced322e71e9\n"
    },
    {
      "commit": "22bc10a347569a0ab2980c24783e31aba4d7414d",
      "tree": "7ffe4b46c972f07d491ee199619738e3504edd8e",
      "parents": [
        "e9234f17dfbb192c96b122b9e0ce8cd9015d1589",
        "57088b5c8e76855b99b3e6b3e410de5b6382670e"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Oct 20 14:44:58 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Oct 20 14:44:59 2014 +0000"
      },
      "message": "Merge \"Clear effect buffer before sending to chain\" into lmp-dev"
    },
    {
      "commit": "57088b5c8e76855b99b3e6b3e410de5b6382670e",
      "tree": "3b0f7cbcfdc6237d24ae173fc0b624977bbfaaef",
      "parents": [
        "380757ba5c927015d403e3b97cc418413330453e"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Oct 17 16:39:39 2014 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Oct 17 16:39:39 2014 -0700"
      },
      "message": "Clear effect buffer before sending to chain\n\notherwise the effect might get a buffer with previous data instead\nof silence.\n\nBug: 18023017\nChange-Id: Ic6be5ce0e74552aac2a0cce9c660893f9ad27f5c\n"
    },
    {
      "commit": "a2d4a6dac432f0c4f543d79b9a63c55ae91f81d6",
      "tree": "501b884b67bceb06a4d5ab01ecd519560fd14290",
      "parents": [
        "05c0d7d71be9578ad59d71f07f84e08c09e8d73a"
      ],
      "author": {
        "name": "Haynes Mathew George",
        "email": "hgeorge@codeaurora.org",
        "time": "Mon Oct 13 13:05:22 2014 -0700"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Wed Oct 15 16:42:11 2014 -0700"
      },
      "message": "audio policy: Fix for voice call audio loss\n\nAudio Policy service filters out one of the create patch\ncommands when it finds two pending commands with the same\npatch handles. Due to this routing command is not received\nto audio HAL and the voice call set up fails.\nFix this by filtering create patch commands only when\nthey are issued on the same output.\n\nauthored-by: Karthik Reddy Katta \u003ca_katta@codeaurora.org\u003e\n\nBug: 17787282\nChange-Id: If36f0ab71e9b72d6a8eb61d31f762bc5e1683b89\n"
    },
    {
      "commit": "96ff5c48a81f3f45c384113480bf5e28620a72ae",
      "tree": "08f238c63539621dfcb5da6b19ce13ccb6a387b5",
      "parents": [
        "801a3ff80c36aa9b55dc9b360d0e59f863011a39"
      ],
      "author": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Mon Oct 13 22:20:37 2014 -0700"
      },
      "committer": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Tue Oct 14 11:29:50 2014 -0700"
      },
      "message": "Camera2Client: avoid two consecutive sets of configure_streams calls\n\nWhen mediaRecorder starts without an active preview stream, Camera2Client\nstarts preview then immediately start recording, which could cause the second\nconfigure_streams to call into HAL before any preview request is sent. This\ncould cause HAL to run into bad state. This change work around this issue\nby making sure the first preview request is submitted to the HAL before\nstart recording.\n\nBug: 17915062\nChange-Id: I94ae64ee76487603695a469240da601ddcb29a66\n"
    },
    {
      "commit": "f2ab2191387ce7902c730cc68314ea5fdc4a9237",
      "tree": "7c96b4c90e05dedccb318ca43fd4c3bf82e7204b",
      "parents": [
        "95511add8ad4d440c67272503559f5042c4e6f1f"
      ],
      "author": {
        "name": "Vineeta Srivastava",
        "email": "vsrivastava@google.com",
        "time": "Sat Oct 11 21:59:36 2014 +0000"
      },
      "committer": {
        "name": "Vineeta Srivastava",
        "email": "vsrivastava@google.com",
        "time": "Sat Oct 11 21:59:36 2014 +0000"
      },
      "message": "Revert \"audio policy: add support for ro.audio.media_deep_buffer\"\n\nThis reverts commit 95511add8ad4d440c67272503559f5042c4e6f1f.\n\nChange-Id: I76a8b86790b06b08d8ca0f8d374e585f964ffba8\n"
    },
    {
      "commit": "95511add8ad4d440c67272503559f5042c4e6f1f",
      "tree": "a605077307327ac30bf9b553ad4e48bfa300e8cf",
      "parents": [
        "f5ada6edcc83bb1b313abcd4c4fbdc4f7724f04d"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Oct 10 15:31:38 2014 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Oct 10 15:39:14 2014 -0700"
      },
      "message": "audio policy: add support for ro.audio.media_deep_buffer\n\nBug: 17931716.\nChange-Id: Ife170f20f5d02b71059fbd384bd29759fafee826\n"
    },
    {
      "commit": "f5ada6edcc83bb1b313abcd4c4fbdc4f7724f04d",
      "tree": "7c96b4c90e05dedccb318ca43fd4c3bf82e7204b",
      "parents": [
        "a4c3d8f0f9aab53b106d95e6139e0465908909f4"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Oct 09 17:49:00 2014 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Oct 10 10:51:37 2014 -0700"
      },
      "message": "audio policy: move intializations to onFirstRef()\n\nBug: 17896324.\n\nChange-Id: I3bb74f5397142ac354bd815eb362e5ddacdcb463\n"
    },
    {
      "commit": "f380677f21240ffb78bcdf7c804fe0a7807fb08d",
      "tree": "9116f900580b1926e511970340ca97a7e717811a",
      "parents": [
        "8b1e80bf1e9f214feea219cfe981ba533b806003"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Oct 07 09:19:31 2014 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Oct 07 12:25:01 2014 -0700"
      },
      "message": "audio policy: fix build with USE_LEGACY_AUDIO_POLICY\n\nBug: 17894512.\nChange-Id: I6431c0b03ba02cf561413c34848a334caa0261fa\n"
    },
    {
      "commit": "8b1e80bf1e9f214feea219cfe981ba533b806003",
      "tree": "0d6b46a05d685e02750433f6779eb1ce09d84294",
      "parents": [
        "f0011d49c0f08753dc2dc254c5a70885a9986602"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Oct 07 09:08:47 2014 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Oct 07 12:24:30 2014 -0700"
      },
      "message": "audio policy: fix lockup during mediaserver restart\n\nWhen pre or post processing effects are applied by audio policy service\nautomatically there is a potential lockup if the first call into\nAudioPolicyService is made while creating one of those effects.\nThis is because effects are created with AudioPolicyService mutex held and\neffect creation calls into methods (e.g registerClient()) which also acquire\nthe mutex.\n\nThe fix consists in adding a new mutex to AudioPolicyEffects class and not\nhold the AudioPolicyService mutex when calling methods in of class.\n\nBug: 17830596.\nChange-Id: Ie61c3671d3147f46e99ba208f39c1a3bf180779f\n"
    },
    {
      "commit": "2b217bb3aee87ce8486014f261c0f498f6209e80",
      "tree": "3199fbc19fc6329f1e764ad63a478dbe2308ddc3",
      "parents": [
        "b220fe0e40bc3752b62a9576fc824634a16fc3ab",
        "1b92868010b5c1409692a86f6b27e4a265b64c1a"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Oct 03 20:37:46 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Oct 03 20:37:47 2014 +0000"
      },
      "message": "Merge \"audioflinger: fix pre processing transfer between record threads.\" into lmp-dev"
    },
    {
      "commit": "1b92868010b5c1409692a86f6b27e4a265b64c1a",
      "tree": "aa514a65d23d1bebbceef49cc6b7f2662c7bad76",
      "parents": [
        "d8b03abf1d003e2940a19f0071ea2892689dd10e"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Oct 02 19:41:47 2014 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Oct 02 19:41:47 2014 -0700"
      },
      "message": "audioflinger: fix pre processing transfer between record threads.\n\nFix two problems remaining with pre processing effects transfer from\none record thread to the next in case of tear down due to device connection:\n1 - the enabled state of the effects was not communicated to the new HAL\ninput stream.\n2 - the effects saved in orphan chains list were not transfered to the\nnew thread when a AudioRecord was created.\n\nBug: 17757378.\nChange-Id: I0923c98470db3b51154dc89846157780a4c21e86\n"
    },
    {
      "commit": "4c053ea158b29fa2cdd4c6f39d3c8da4ee5a7a02",
      "tree": "129617d405d098b749beafbcd87c58321bf2b055",
      "parents": [
        "8b76b592be5bc162fb5a6d7e8c47812544b6b345"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Sun Sep 28 14:41:07 2014 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Oct 02 16:50:26 2014 -0700"
      },
      "message": "Fix uncertainty of one normal mix buffer in AudioTrack::getTimestamp\n\nThe per-thread timestamp latch was not synchronized with the per-track\nreleased frames.  Now the value of each track\u0027s released frames is\nlatched along with the timestamp.\n\nBug: 17531839\nBug: 17669342\nChange-Id: I9d50c8c6a5de55a3f4561ac40e20d497376c1257\n"
    },
    {
      "commit": "cb4b6e9f05d1c0b3fcc5be5ebe3f7d6f32669b1a",
      "tree": "7bf2965353146579d1af3a5015ec468029d1f5dc",
      "parents": [
        "a49c94ea49c8329a1bdefe980e1f7d335c0d1ec5"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Oct 01 14:26:10 2014 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Oct 01 16:52:30 2014 -0700"
      },
      "message": "audioflinger: fix failure to indicate volume to effect\n\nIf an effect is added and enabled after a track is started\nit will not receive current volume information because volume\nis indicated only to active effects and if there is a volume change.\n\nAdd a flag to force EffectChain::setVolume_l() to pass volume indication\nto all effects each time an effect is enabled.\n\nBug: 17572556.\n\nChange-Id: I6b68488c9aca8b2095fb210aa124d02e4f759660\n"
    },
    {
      "commit": "a49c94ea49c8329a1bdefe980e1f7d335c0d1ec5",
      "tree": "c095d3a59114c8a893e3657ad5efc6fdb40f2c9b",
      "parents": [
        "d0b9efe7d8300e48f7a99c1dd746d60060206b3c",
        "6954127b7ace022677ac407ff943c2793f8a11be"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Oct 01 23:09:52 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Oct 01 23:09:53 2014 +0000"
      },
      "message": "Merge \"Revert \"Fix uncertainty of one normal mix buffer in AudioTrack::getTimestamp\"\" into lmp-dev"
    },
    {
      "commit": "6954127b7ace022677ac407ff943c2793f8a11be",
      "tree": "3e038561671d256e03d63fb88a32e529e198701a",
      "parents": [
        "54464ba861aaafd11ee5645f5d1ecd1171c6e9fe"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Oct 01 22:38:43 2014 +0000"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Oct 01 22:45:18 2014 +0000"
      },
      "message": "Revert \"Fix uncertainty of one normal mix buffer in AudioTrack::getTimestamp\"\n\nThis reverts commit 54464ba861aaafd11ee5645f5d1ecd1171c6e9fe.\n\nBug: 17733142.\n\nChange-Id: I9886d40032b2f7d96bee03e600e14f78943d8052\n"
    },
    {
      "commit": "955e24d3a8e218d4711cabc6558781e095011132",
      "tree": "1b27aa45a2224cbdc9e247935c811e8ab62af40a",
      "parents": [
        "6c7ae72f0eccf456744474785afd25f9e205881c",
        "54464ba861aaafd11ee5645f5d1ecd1171c6e9fe"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Sep 30 01:44:18 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Sep 30 01:44:18 2014 +0000"
      },
      "message": "Merge \"Fix uncertainty of one normal mix buffer in AudioTrack::getTimestamp\" into lmp-dev"
    },
    {
      "commit": "6c7ae72f0eccf456744474785afd25f9e205881c",
      "tree": "dd6c00b243c8aae9d23b9170b649dc11834c5f36",
      "parents": [
        "f71224ce266abb39f83ecba87783c2347631654a",
        "c260784e37dea73a2090d4ccd91472d61d3b6230"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Sep 30 01:16:13 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Sep 30 01:16:13 2014 +0000"
      },
      "message": "Merge \"audio policy: fix HW A/V sync output selection\" into lmp-dev"
    },
    {
      "commit": "f71224ce266abb39f83ecba87783c2347631654a",
      "tree": "2ab4c81c96918d94c5ff0acc66a68606c08b47de",
      "parents": [
        "c8c05d6a5821dd56209e160066314a03d2f2ca06",
        "e659ef420dae0caae84ab78f9df8952acb9ad3a0"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Sep 30 01:11:19 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Sep 30 01:11:20 2014 +0000"
      },
      "message": "Merge \"audioflinger: forward flush to direct output streams\" into lmp-dev"
    },
    {
      "commit": "54464ba861aaafd11ee5645f5d1ecd1171c6e9fe",
      "tree": "c04a12c44ee589fec8baebafe200fe95529fa76a",
      "parents": [
        "a67ced9746e6f0d4e03ff8007682091afea71f6c"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Sun Sep 28 14:41:07 2014 -0700"
      },
      "committer": {
        "name": "Rachad Alao",
        "email": "rachad@google.com",
        "time": "Tue Sep 30 01:10:58 2014 +0000"
      },
      "message": "Fix uncertainty of one normal mix buffer in AudioTrack::getTimestamp\n\nThe per-thread timestamp latch was not synchronized with the per-track\nreleased frames.  Now the value of each track\u0027s released frames is\nlatched along with the timestamp.\n\nBug: 17531839\nBug: 17669342\nChange-Id: I96252782911bd42a2534cc4030521b7eeb99a7b9\n"
    },
    {
      "commit": "c260784e37dea73a2090d4ccd91472d61d3b6230",
      "tree": "2f6ffba5fe828dc4143db34e7b05b98f27d52567",
      "parents": [
        "dc2e6ddc933e40632e79a866d9ece870db1a975e"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Sep 29 09:43:03 2014 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Sep 29 17:40:36 2014 -0700"
      },
      "message": "audio policy: fix HW A/V sync output selection\n\ncommit b732cf5a broke the selection mechanism for the\nHW A/V sync direct output.\nAdd a rule to only select a mixed output for basic PCM\nstereo content when a direct output is not explicitly requested.\n\nBug: 17702382.\n\nChange-Id: I1387690ace77cd4d6a8faf0b525c3d1008fba3f1\n"
    },
    {
      "commit": "e659ef420dae0caae84ab78f9df8952acb9ad3a0",
      "tree": "9b21158041ed871365f939fc37034858328ef115",
      "parents": [
        "dc2e6ddc933e40632e79a866d9ece870db1a975e"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Sep 29 13:06:46 2014 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Sep 29 17:39:39 2014 -0700"
      },
      "message": "audioflinger: forward flush to direct output streams\n\nTrack flush should be forwarded to the audio HAL when playing\non a direct output stream.\n\nBug: 17704953.\nChange-Id: Iafc94327fe9aebf1d4eaa97b76c6767b7ac5babe\n"
    },
    {
      "commit": "c8c05d6a5821dd56209e160066314a03d2f2ca06",
      "tree": "8fd79487fc97cf9075dbd10bd5e849f112ead82c",
      "parents": [
        "4379c03433e4613c417998ca7917059ef17dc3a9",
        "2d077d0acdbb26eeb1357489c999ec875f6ce297"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Sep 29 22:54:40 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Sep 29 22:54:40 2014 +0000"
      },
      "message": "Merge \"CameraService: API1: Reallocate JPEG ashmem heap if size changes\" into lmp-dev"
    },
    {
      "commit": "2d077d0acdbb26eeb1357489c999ec875f6ce297",
      "tree": "2ed54476026da514f70e2184a9ac3bb79605459e",
      "parents": [
        "dc2e6ddc933e40632e79a866d9ece870db1a975e"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Sep 29 13:51:17 2014 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Sep 29 14:12:30 2014 -0700"
      },
      "message": "CameraService: API1: Reallocate JPEG ashmem heap if size changes\n\nBug: 17682603\nChange-Id: I7cba3365d00c33cf4267b1b59a94bd7d0bba08df\n"
    },
    {
      "commit": "4379c03433e4613c417998ca7917059ef17dc3a9",
      "tree": "742ac9abba4fcdf509f3703ac98b4b68029b8b07",
      "parents": [
        "dc2e6ddc933e40632e79a866d9ece870db1a975e",
        "ba0b34c18da93681c0813ecdab19b0e215b6d261"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Sep 29 19:46:52 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Sep 29 19:46:53 2014 +0000"
      },
      "message": "Merge \"Fix tee sink\" into lmp-dev"
    },
    {
      "commit": "ba0b34c18da93681c0813ecdab19b0e215b6d261",
      "tree": "9f401bc394b276294b706fb42d62f35131046c55",
      "parents": [
        "a67ced9746e6f0d4e03ff8007682091afea71f6c"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Sun Sep 28 13:06:06 2014 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Sun Sep 28 13:42:35 2014 -0700"
      },
      "message": "Fix tee sink\n\nNote: this does not fix the bug below, but it helps to investigate the bug.\n\nBug: 17578238\nChange-Id: I0fd27a477b73ba0e1c5a658bdfad17c500f5dc67\n"
    },
    {
      "commit": "dc2e6ddc933e40632e79a866d9ece870db1a975e",
      "tree": "882e16001c7e5bb3c5d259836b9962be16f9e72f",
      "parents": [
        "a67ced9746e6f0d4e03ff8007682091afea71f6c"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Fri Sep 26 13:09:54 2014 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Sun Sep 28 12:06:41 2014 -0700"
      },
      "message": "Camera2Client: Revert HALv2 device behavior back to MR2\n\n- Do not idle device before video snapshot stream configuration, to\n  avoid deadlock during waiting.\n- Do not tear down ZSL stream\n- Don\u0027t refresh ZSL stream after deletion was requested.\n  The v2 HAL implementations really don\u0027t like the ZSL stream being\n  touched ever.\n\nBug: 17634430\nBug: 17628507\n\nChange-Id: I36b44a395e697be9802c4bd917a82b77c8d04be2\n"
    },
    {
      "commit": "a67ced9746e6f0d4e03ff8007682091afea71f6c",
      "tree": "3e038561671d256e03d63fb88a32e529e198701a",
      "parents": [
        "a8a4eeb95988e6bb73f7a742c8dd238c1f96c5c4",
        "248f9ce1b6052889dd55e7701f908477d16d6ff4"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Sat Sep 27 22:38:20 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Sep 27 22:38:21 2014 +0000"
      },
      "message": "Merge \"CameraService: API1: Fix flash mode\" into lmp-dev"
    },
    {
      "commit": "248f9ce1b6052889dd55e7701f908477d16d6ff4",
      "tree": "1d9813a8cd8b634cfb4bf5e5f5a534234b99cee7",
      "parents": [
        "5f5d0544454f062c1f37acad1a72d8c47b4a32b2"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Sat Sep 27 14:27:45 2014 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Sat Sep 27 14:27:45 2014 -0700"
      },
      "message": "CameraService: API1: Fix flash mode\n\nSometimes it\u0027s useful to ensure variables are initialized in\nall code paths.\n\nBug: 17680416\nChange-Id: I9bed8a3bcb94417384bf0551fe1c0eee6cc49577\n"
    },
    {
      "commit": "a8a4eeb95988e6bb73f7a742c8dd238c1f96c5c4",
      "tree": "5460fb6c8718f868c4138d9d5142ea1ae48f7593",
      "parents": [
        "504de531a08facd130fa00f64fdc00521a975175",
        "b732cf5af93c33fa183769210ce9954521fb68cd"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Sep 26 23:34:07 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 26 23:34:07 2014 +0000"
      },
      "message": "Merge \"audio policy: favor mixed over direct output for PCM format\" into lmp-dev"
    },
    {
      "commit": "b732cf5af93c33fa183769210ce9954521fb68cd",
      "tree": "f7b469e86dbf5fc673937a917a151c0c8daeecfb",
      "parents": [
        "80ec934ae7d4e3a78af87554fdb77a58f6386ba0"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Sep 24 19:08:21 2014 -0700"
      },
      "committer": {
        "name": "Rachad Alao",
        "email": "rachad@google.com",
        "time": "Fri Sep 26 23:05:10 2014 +0000"
      },
      "message": "audio policy: favor mixed over direct output for PCM format\n\nmodify getOutputForDevice() to skip direct output selection\nif the request can obviously be attached to a mixed output\nThis prevents from selecting a direct output profile that\ncan manage stereo PCM format if a mixer output is available\nto reach the same device.\n\nBug: 17628413.\nChange-Id: I02e9a0b02c9ae5f44ff5768ac4ed02ce84d521c5\n"
    }
  ],
  "next": "504de531a08facd130fa00f64fdc00521a975175"
}
