)]}'
{
  "log": [
    {
      "commit": "af3f29e62b35c0ce100f20f9d96affd5ef6e5e96",
      "tree": "b6c0433fb73b8d9835fdedf36def498aea94e280",
      "parents": [
        "6fcf3a518526d4f844830735ca1a2ae82a7500d8"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Aug 03 15:29:20 2010 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Aug 03 15:29:20 2010 -0700"
      },
      "message": "Replace CHECK with a failure return value when mCamera-\u003esetParameters() fails\nif the camera is locked by someone else.\n\nbug - 2827892\n\nChange-Id: I217d4a00f04ebd57b557d3faef28787c14f23ea0\n"
    },
    {
      "commit": "6fcf3a518526d4f844830735ca1a2ae82a7500d8",
      "tree": "9c454fcfc1bbe2be750a81e26b5df2b97cfb087d",
      "parents": [
        "321f7fad5c4a6ef27e944dc72e2ddbfb61af81de",
        "f8e1219cf8992a22d6c48c2c70d4fbbccc2494f6"
      ],
      "author": {
        "name": "Konstantin Lopyrev",
        "email": "klopyrev@google.com",
        "time": "Tue Aug 03 11:24:23 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Aug 03 11:24:23 2010 -0700"
      },
      "message": "Merge \"Improving profiling of views.\" into gingerbread"
    },
    {
      "commit": "321f7fad5c4a6ef27e944dc72e2ddbfb61af81de",
      "tree": "b5bf9e4ff1df05fd412899e020fca38fac896fd0",
      "parents": [
        "3d84280ccc31d12765e2efe03e2dd3ade1acfc33"
      ],
      "author": {
        "name": "Konstantin Lopyrev",
        "email": "klopyrev@google.com",
        "time": "Mon Aug 02 20:01:01 2010 -0700"
      },
      "committer": {
        "name": "Konstantin Lopyrev",
        "email": "klopyrev@google.com",
        "time": "Tue Aug 03 11:21:55 2010 -0700"
      },
      "message": "Making sure that there is no notification when focus changes from something to nothing.\n\nChange-Id: Ib8b3bdd7f5dd999c933a017fe1b34263afe38e4a\n"
    },
    {
      "commit": "3d84280ccc31d12765e2efe03e2dd3ade1acfc33",
      "tree": "e06618f632296775dfd408b6cfea8a61a3190c06",
      "parents": [
        "a788026fd35eee2190dc7635e1fdbc781f6ef668",
        "da8073c68e63179e1d4f5fb562e5625af686c984"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Aug 03 10:35:55 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Aug 03 10:35:55 2010 -0700"
      },
      "message": "Merge \"File writer has a designated writer thread now\" into gingerbread"
    },
    {
      "commit": "a788026fd35eee2190dc7635e1fdbc781f6ef668",
      "tree": "3a9ab1e4ac4d9274f9146bfdb7510fbc164cf4b0",
      "parents": [
        "23796e3b622c6be4feb15d4d57e58645acfa431b",
        "a9015bb24f09b16f1bd643de3bd844923a4d6c31"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Aug 03 09:59:11 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Aug 03 09:59:11 2010 -0700"
      },
      "message": "Merge \"Fixed a typo in a method name of MediaPlayerPerformance.java class\" into gingerbread"
    },
    {
      "commit": "f8e1219cf8992a22d6c48c2c70d4fbbccc2494f6",
      "tree": "3a5622da27e7a30efdb6a890c46e42a7174685b1",
      "parents": [
        "739cdab7cb63d53440bb411fa2d558e2114b4c81"
      ],
      "author": {
        "name": "Konstantin Lopyrev",
        "email": "klopyrev@google.com",
        "time": "Mon Aug 02 19:08:56 2010 -0700"
      },
      "committer": {
        "name": "Konstantin Lopyrev",
        "email": "klopyrev@google.com",
        "time": "Mon Aug 02 19:08:56 2010 -0700"
      },
      "message": "Improving profiling of views.\n\nChange-Id: I1abb8c21f1769ad55416f37e7bfa1458b80ace63\n"
    },
    {
      "commit": "23796e3b622c6be4feb15d4d57e58645acfa431b",
      "tree": "f7809a2c5d162a296c4ce68c0e5706c6bdf6466f",
      "parents": [
        "f2d16bc595fec67e1fe08c341abb9ec2e776aafb",
        "c3ae937a95cbaf4afbe8aa006dc3db4c27f0ad44"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Aug 02 18:13:54 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Aug 02 18:13:54 2010 -0700"
      },
      "message": "Merge \"Add lost frame handling in AudioSource\" into gingerbread"
    },
    {
      "commit": "da8073c68e63179e1d4f5fb562e5625af686c984",
      "tree": "1698b33512a3246334d2aa7f4eb11cc16768cff0",
      "parents": [
        "d3579580df0cea7e37334d83ef7a9aa85ad70368"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Jul 30 17:41:22 2010 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Aug 02 18:08:02 2010 -0700"
      },
      "message": "File writer has a designated writer thread now\n\n+ This reduces the file I/O block time for audio/video track processing\n- Since the file writer is buffering some output samples, the memory\n  usage would go up, depending on how many output samples are buffered.\n\nChange-Id: I780cc5b26f4b53a5efbd643fcf9505dfc19cd4cd\n"
    },
    {
      "commit": "f2d16bc595fec67e1fe08c341abb9ec2e776aafb",
      "tree": "84f296c85a209b23467c4decebfe49d35d72d476",
      "parents": [
        "14805b6c1ff0fe5324d05ba1dd5053cdf61459b7",
        "5aa4680eb07fd4ca9212ee29c4fc0659e00c958d"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Mon Aug 02 17:42:11 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Aug 02 17:42:11 2010 -0700"
      },
      "message": "am 5aa4680e: update device dashboard\n\nMerge commit \u00275aa4680eb07fd4ca9212ee29c4fc0659e00c958d\u0027 into gingerbread\n\n* commit \u00275aa4680eb07fd4ca9212ee29c4fc0659e00c958d\u0027:\n  update device dashboard\n"
    },
    {
      "commit": "5aa4680eb07fd4ca9212ee29c4fc0659e00c958d",
      "tree": "f326acf1af335371b8347229b919089d0ff024ac",
      "parents": [
        "c69f5be0ed3529564e5db6874de52775c2c99007"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Mon Aug 02 17:22:11 2010 -0700"
      },
      "committer": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Mon Aug 02 17:38:37 2010 -0700"
      },
      "message": "update device dashboard\n\nChange-Id: I79ebf6fa740e19f32d724e9b8a387f2a143fdf7a\n"
    },
    {
      "commit": "14805b6c1ff0fe5324d05ba1dd5053cdf61459b7",
      "tree": "95a1de93d6a5e33f489df92c6709957460bc1dd3",
      "parents": [
        "8bffa72b9c711fec231108977ad9f2ba72678a82",
        "9c4e33e04a0202f2207d1c738a045effb490b99f"
      ],
      "author": {
        "name": "Steve Howard",
        "email": "showard@google.com",
        "time": "Mon Aug 02 16:49:22 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Aug 02 16:49:22 2010 -0700"
      },
      "message": "Merge \"New secure setting for mobile download size limit.\" into gingerbread"
    },
    {
      "commit": "9c4e33e04a0202f2207d1c738a045effb490b99f",
      "tree": "d3bb1b34635b84353e681e50503f634fa209917f",
      "parents": [
        "432c5b6c1d4181194cb82a14107b6d10105231a9"
      ],
      "author": {
        "name": "Steve Howard",
        "email": "showard@google.com",
        "time": "Wed Jul 28 15:59:29 2010 -0700"
      },
      "committer": {
        "name": "Steve Howard",
        "email": "showard@google.com",
        "time": "Mon Aug 02 16:35:23 2010 -0700"
      },
      "message": "New secure setting for mobile download size limit.\n\nChange-Id: I0024d632721f59349e211c0b74dd7271423dacd5\n"
    },
    {
      "commit": "8bffa72b9c711fec231108977ad9f2ba72678a82",
      "tree": "f813de0d73b7707d546b6d6dc9b03fab101cca56",
      "parents": [
        "a213ce02ced6511edf02e29c45057f344bfe8636",
        "4de9d202604657c0a55cc4ff1e9c633257c78160"
      ],
      "author": {
        "name": "John Wang",
        "email": "johnwang@google.com",
        "time": "Mon Aug 02 15:31:37 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Aug 02 15:31:37 2010 -0700"
      },
      "message": "Merge changes Ic30e2801,I387bab4d into gingerbread\n\n* changes:\n  Handle call list in CallManager \"do not merge\".\n  Create CallManager class \"do not merge\"\n"
    },
    {
      "commit": "4de9d202604657c0a55cc4ff1e9c633257c78160",
      "tree": "94da4ab731d75ac882077ef9427fac3d51d9534f",
      "parents": [
        "ccd88b65940eca419fab4b68d087573e7034d3f4"
      ],
      "author": {
        "name": "John Wang",
        "email": "johnwang@google.com",
        "time": "Mon Aug 02 15:16:45 2010 -0700"
      },
      "committer": {
        "name": "John Wang",
        "email": "johnwang@google.com",
        "time": "Mon Aug 02 15:18:17 2010 -0700"
      },
      "message": "Handle call list in CallManager \"do not merge\".\n\nCherry-picked from master.\nUpdate APIs to access foregroudCalls, backgroudCalls, and ringingCalls\n     * 1. APIs to access list of calls\n     * 2. APIs to check if any active call, which has connection other than\n     * disconnected ones, pleaser refer to Call.isIdle()\n     * 3. APIs to return first active call\n     * 4. APIs to return the connections of first active call\n     * 5. APIs to return other property of first active call\n\nChange-Id: Ic30e28018d14e496e9427f96fec8a7c2ff7c1549\n"
    },
    {
      "commit": "a213ce02ced6511edf02e29c45057f344bfe8636",
      "tree": "7f8f88cd7cadc69a35329da6fda1db294b05a0e0",
      "parents": [
        "739cdab7cb63d53440bb411fa2d558e2114b4c81",
        "09e85dc0270ac9ce660c17ee8290ff2d136b395b"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Mon Aug 02 15:14:44 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Aug 02 15:14:44 2010 -0700"
      },
      "message": "Merge \"Mute a common-case progress log about input injection\" into gingerbread"
    },
    {
      "commit": "ccd88b65940eca419fab4b68d087573e7034d3f4",
      "tree": "f042dcf8d8a365b6f8a0de74280a9157d57355f3",
      "parents": [
        "739cdab7cb63d53440bb411fa2d558e2114b4c81"
      ],
      "author": {
        "name": "John Wang",
        "email": "johnwang@google.com",
        "time": "Mon Jun 21 13:55:19 2010 -0700"
      },
      "committer": {
        "name": "John Wang",
        "email": "johnwang@google.com",
        "time": "Mon Aug 02 15:13:53 2010 -0700"
      },
      "message": "Create CallManager class \"do not merge\"\n\nCherry-pick from master.\nInitial check-in to support multiple call channels.\n\nChange-Id: I387bab4d69ee38d738c5e0e0a51f1ac6607b9759\n"
    },
    {
      "commit": "739cdab7cb63d53440bb411fa2d558e2114b4c81",
      "tree": "d51390327a6d9de2fc7ef118a403b07393ddf4a6",
      "parents": [
        "1540a7ea1afcb772b5fcf90f635153f6489eb8ed",
        "930d3af75f9e9663222f4c4a1d75b326cf811e35"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Mon Aug 02 12:33:40 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Aug 02 12:33:40 2010 -0700"
      },
      "message": "Merge \"Do not deference before null check\" into gingerbread"
    },
    {
      "commit": "1540a7ea1afcb772b5fcf90f635153f6489eb8ed",
      "tree": "f3f56ba6222f700696407b9697ec8a291a80e555",
      "parents": [
        "d3579580df0cea7e37334d83ef7a9aa85ad70368",
        "c69f5be0ed3529564e5db6874de52775c2c99007"
      ],
      "author": {
        "name": "Wink Saville",
        "email": "wink@google.com",
        "time": "Mon Aug 02 12:02:42 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Aug 02 12:02:42 2010 -0700"
      },
      "message": "am c69f5be0: Add PhoneSubInfo.getCompleteVoiceMailNumber.\n\nMerge commit \u0027c69f5be0ed3529564e5db6874de52775c2c99007\u0027 into gingerbread\n\n* commit \u0027c69f5be0ed3529564e5db6874de52775c2c99007\u0027:\n  Add PhoneSubInfo.getCompleteVoiceMailNumber.\n"
    },
    {
      "commit": "09e85dc0270ac9ce660c17ee8290ff2d136b395b",
      "tree": "1f7957006b9cb393315856ef00418733b8073266",
      "parents": [
        "d3579580df0cea7e37334d83ef7a9aa85ad70368"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Mon Aug 02 11:54:41 2010 -0700"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Mon Aug 02 11:59:11 2010 -0700"
      },
      "message": "Mute a common-case progress log about input injection\n\nChange-Id: I37c9f5cb239ab93fde3a42f71f2782d8734c53ce\n"
    },
    {
      "commit": "c69f5be0ed3529564e5db6874de52775c2c99007",
      "tree": "146dbfd52029a8b8ecee79201682a6133be573dc",
      "parents": [
        "9cd797902ec8404c5958214fc078d75e87248bf3"
      ],
      "author": {
        "name": "Wink Saville",
        "email": "wink@google.com",
        "time": "Mon Aug 02 11:05:28 2010 -0700"
      },
      "committer": {
        "name": "Wink Saville",
        "email": "wink@google.com",
        "time": "Mon Aug 02 11:07:51 2010 -0700"
      },
      "message": "Add PhoneSubInfo.getCompleteVoiceMailNumber.\n\nPhoneSubInfo.getVoiceMailNumber now returns only the network\nportion of the voicemail number. Use the new method\nPhoneSubInfo.getCompleteVoiceMailNumber to get the netowrk\nportion and the post dial portion.\n\nBug: 2881483\nChange-Id: I7637d4fa0ffa046b4eebc4d599719bb668c940b5\n"
    },
    {
      "commit": "d3579580df0cea7e37334d83ef7a9aa85ad70368",
      "tree": "18b1f8e49848251d2ce47881e08c7d75c4104c22",
      "parents": [
        "ee34a49ffc92590cb59f3e17a3df136b67701529",
        "9cd797902ec8404c5958214fc078d75e87248bf3"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Mon Aug 02 09:23:50 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Aug 02 09:23:50 2010 -0700"
      },
      "message": "am 9cd79790: Merge \"Doc change: Add nexus one to dev phones.\" into froyo\n\nMerge commit \u00279cd797902ec8404c5958214fc078d75e87248bf3\u0027 into gingerbread\n\n* commit \u00279cd797902ec8404c5958214fc078d75e87248bf3\u0027:\n  Doc change: Add nexus one to dev phones.\n"
    },
    {
      "commit": "9cd797902ec8404c5958214fc078d75e87248bf3",
      "tree": "665790724e8c93d36bb07c526a34631aaffbe9d5",
      "parents": [
        "2ff1ba012c59169c9719cfab4516b9149414380b",
        "d116e3ee8222f83498db2c39afa035080d034b3b"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Mon Aug 02 09:16:30 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Aug 02 09:16:30 2010 -0700"
      },
      "message": "Merge \"Doc change: Add nexus one to dev phones.\" into froyo"
    },
    {
      "commit": "ee34a49ffc92590cb59f3e17a3df136b67701529",
      "tree": "2fc1af828ecd73d4438417d41f5d800587adf21f",
      "parents": [
        "543f250d9cb05ebca4fb4dacce37545c0bb9a8ca"
      ],
      "author": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@android.com",
        "time": "Mon Aug 02 07:54:18 2010 -0700"
      },
      "committer": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@android.com",
        "time": "Mon Aug 02 07:54:18 2010 -0700"
      },
      "message": "Add missing word from docs.\n\nMy mistaker from an earlier commit.\n\nChange-Id: Ic04b3c411da32f7dca03d23d39182915e3567172\n"
    },
    {
      "commit": "930d3af75f9e9663222f4c4a1d75b326cf811e35",
      "tree": "30950867a1eec93131934190d0faae893cacd4e3",
      "parents": [
        "7c600369c9695de73ca37db552eb81b8b89d5e76"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Fri Jul 30 16:52:29 2010 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Mon Aug 02 07:52:56 2010 -0700"
      },
      "message": "Do not deference before null check\n\nThe return of parsePackageLite wasn\u0027t checked until after it was\ndeferenced. Move the deference below the null check and remove redundant\nset.\n\nBug: 2852726\nChange-Id: I3eaaea5050948145eed44b64507dc846993d98eb\n"
    },
    {
      "commit": "543f250d9cb05ebca4fb4dacce37545c0bb9a8ca",
      "tree": "b016bbe7f5da974685cdbc21014cef9e46d39095",
      "parents": [
        "4d7fc3651bd93d588d2b8580010414b59bc67729",
        "26755a347c78e33feb70abeded1e5aca8acd4cf5"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jul 30 19:10:01 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 30 19:10:01 2010 -0700"
      },
      "message": "Merge \"Make the systemui process persistent.\" into gingerbread"
    },
    {
      "commit": "4d7fc3651bd93d588d2b8580010414b59bc67729",
      "tree": "b4dcee8ac4dcc5b34eb7f988aab0e6a558e2a7c5",
      "parents": [
        "483b20e5ae65495d841de1844d97d79fbc0c1866",
        "bd2de0e42adc3fad30d86ed2c8d0488bc9501f36"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Jul 30 18:01:25 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 30 18:01:25 2010 -0700"
      },
      "message": "Merge \"remove copybit hack from software opengl (libagl)\" into gingerbread"
    },
    {
      "commit": "483b20e5ae65495d841de1844d97d79fbc0c1866",
      "tree": "4f5b89583ab28b58c93381b620c13faa5f06f1b5",
      "parents": [
        "8b61b68b648985df37197de204398f608c4ad8b1",
        "2ff1ba012c59169c9719cfab4516b9149414380b"
      ],
      "author": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Fri Jul 30 17:37:39 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jul 30 17:37:39 2010 -0700"
      },
      "message": "am 2ff1ba01: Doc change: Cleanup for licensing doc.\n\nMerge commit \u00272ff1ba012c59169c9719cfab4516b9149414380b\u0027 into gingerbread\n\n* commit \u00272ff1ba012c59169c9719cfab4516b9149414380b\u0027:\n  Doc change: Cleanup for licensing doc.\n"
    },
    {
      "commit": "26755a347c78e33feb70abeded1e5aca8acd4cf5",
      "tree": "3cb25c78058dc629335f17a945fd73e965b92df5",
      "parents": [
        "d2165cfce7911dac66d1195ed9123e79b086d22b"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jul 30 17:24:38 2010 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jul 30 17:24:38 2010 -0700"
      },
      "message": "Make the systemui process persistent.\n\nThis ensures that the system won\u0027t kill it for memory,\nthe user can\u0027t stop services inside of it, etc.\n\nChange-Id: I923c376afa1133bccc000253f5bba851f9119a52\n"
    },
    {
      "commit": "a9015bb24f09b16f1bd643de3bd844923a4d6c31",
      "tree": "fa80a836bc3054ecbf22b81966f8c00f50c1d4b7",
      "parents": [
        "8b61b68b648985df37197de204398f608c4ad8b1"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Jul 30 17:16:19 2010 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Jul 30 17:16:19 2010 -0700"
      },
      "message": "Fixed a typo in a method name of MediaPlayerPerformance.java class\n\nChange-Id: Ice9f931312b738fc62205988891f35907e8733d9\n"
    },
    {
      "commit": "8b61b68b648985df37197de204398f608c4ad8b1",
      "tree": "3060ed71f863619d629b9d3a95f7ca44a40de980",
      "parents": [
        "d2165cfce7911dac66d1195ed9123e79b086d22b",
        "6f89fa07b4105b2e0cfac87db7ce5e7c9b9feead"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Fri Jul 30 16:55:37 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 30 16:55:37 2010 -0700"
      },
      "message": "Merge \"Only install after MCS success\" into gingerbread"
    },
    {
      "commit": "6f89fa07b4105b2e0cfac87db7ce5e7c9b9feead",
      "tree": "ee8da2d3ed9867716b4f44526074b868cff3fe5d",
      "parents": [
        "7c600369c9695de73ca37db552eb81b8b89d5e76"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Fri Jul 30 16:33:47 2010 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Fri Jul 30 16:35:04 2010 -0700"
      },
      "message": "Only install after MCS success\n\nIf MCS dies in the middle of a call during install, only proceed if the\ncall was successful. Otherwise wait for the max retries to be reached\nand run the failure handling code there.\n\nChange-Id: I00a27ea91046ea6521a3cff5e5ffe2c71b2b5bb4\n"
    },
    {
      "commit": "2ff1ba012c59169c9719cfab4516b9149414380b",
      "tree": "1b3129cb3da54b8127037b6b0947395167292392",
      "parents": [
        "7f9fe5fdfab8dbfffb279ae1687361ca1d939bb6"
      ],
      "author": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Wed Jul 28 19:37:01 2010 -0700"
      },
      "committer": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Fri Jul 30 16:00:18 2010 -0700"
      },
      "message": "Doc change: Cleanup for licensing doc.\n\nChange-Id: Iff046768d70adf0489f5241212061045cef2572f\n"
    },
    {
      "commit": "d2165cfce7911dac66d1195ed9123e79b086d22b",
      "tree": "f5b615ce18d786aa15680265dc42a1fe509b2f76",
      "parents": [
        "f0aa24d91d23195f811e317c4cc4ddbe06db8974",
        "cb9ceb1029036363a81952d8ed5dfcbc83e6ff72"
      ],
      "author": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@android.com",
        "time": "Fri Jul 30 15:20:28 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 30 15:20:28 2010 -0700"
      },
      "message": "Merge \"StrictMode: time violations in Binder calls\" into gingerbread"
    },
    {
      "commit": "f0aa24d91d23195f811e317c4cc4ddbe06db8974",
      "tree": "8d5e7a89889b4031bfcf2aebbab0a22edaccd557",
      "parents": [
        "00e5c61366d3d3d62c259277823ea15a14f68ad4",
        "c80218a9665344a465383fd067f89778d4b6a3f1"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Jul 30 14:49:23 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 30 14:49:23 2010 -0700"
      },
      "message": "Merge \"Added damr box for AMR (NB and WB) sample entry\" into gingerbread"
    },
    {
      "commit": "00e5c61366d3d3d62c259277823ea15a14f68ad4",
      "tree": "a4550b43fbec48553d0e04e4b1eedc9bef7ccdac",
      "parents": [
        "d973a533da16a1fbf13aa1b58ddf60d7d7c9b4ec",
        "6328cdc89e099806a1893b89e4c724d596272d9e"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Jul 30 14:48:25 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 30 14:48:25 2010 -0700"
      },
      "message": "Merge \"Improve thread safety of input mappers.\" into gingerbread"
    },
    {
      "commit": "6328cdc89e099806a1893b89e4c724d596272d9e",
      "tree": "691dfe8a5296cdc6c6773351b21114e7a34aec86",
      "parents": [
        "04d7e83e65e246e154b5b346e3eb0081b741ae88"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Thu Jul 29 18:18:33 2010 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Jul 30 14:43:58 2010 -0700"
      },
      "message": "Improve thread safety of input mappers.\n\nAlso fixed bug where old touch screen size could be reported by\ngetMotionRange if an orientation change occurred but the user has not\nyet touched the screen.\n\nBug: 2877345\nChange-Id: I7878f47458f310ed6ebe6a5d1b2c9bec2c598ab9\n"
    },
    {
      "commit": "c3ae937a95cbaf4afbe8aa006dc3db4c27f0ad44",
      "tree": "eab735659ca06317aeb547acc0699711dfd8c8b6",
      "parents": [
        "31b5d5485f7336639d252da7ba979234dbd2f1e1"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Jul 29 18:06:08 2010 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Jul 30 14:35:37 2010 -0700"
      },
      "message": "Add lost frame handling in AudioSource\n\n- Also collect stats on lost audio frames instead of time spent on reading\n\nChange-Id: I6380b143e4fbdcd894491aaae523331e90d0f04f\n"
    },
    {
      "commit": "cb9ceb1029036363a81952d8ed5dfcbc83e6ff72",
      "tree": "20c48fd7126f64778944060ce2c2d8d4159bc36b",
      "parents": [
        "31b5d5485f7336639d252da7ba979234dbd2f1e1"
      ],
      "author": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@android.com",
        "time": "Thu Jul 29 14:29:02 2010 -0700"
      },
      "committer": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@android.com",
        "time": "Fri Jul 30 14:28:55 2010 -0700"
      },
      "message": "StrictMode: time violations in Binder calls\n\nChange-Id: I5796993dce98be722cf679b78acaf0c9de0ba461\n"
    },
    {
      "commit": "d973a533da16a1fbf13aa1b58ddf60d7d7c9b4ec",
      "tree": "8825970e242c9a2ead5d61cff364b20ae9cc5dbb",
      "parents": [
        "131ce67d276416e3cb23a5e31121fdff1a8bf290",
        "8894de6d3e81649b3005bdbd0a95cbada0a6e418"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Jul 30 14:28:26 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 30 14:28:26 2010 -0700"
      },
      "message": "Merge \"Lower the lower bound for max file duration check\" into gingerbread"
    },
    {
      "commit": "c80218a9665344a465383fd067f89778d4b6a3f1",
      "tree": "ece0bda3f714525645ce5c0815ad334ad01ea4ed",
      "parents": [
        "31b5d5485f7336639d252da7ba979234dbd2f1e1"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Jul 30 13:48:46 2010 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Jul 30 13:55:18 2010 -0700"
      },
      "message": "Added damr box for AMR (NB and WB) sample entry\n\n- Some players, like QT, sometimes are picky about the missing sample entry\n\nChange-Id: Ia32d78e48ac9fd8af8285dbc67f0d69142ba98b4\n"
    },
    {
      "commit": "131ce67d276416e3cb23a5e31121fdff1a8bf290",
      "tree": "346a5048fdaed067c8b776bc3f8efa98769a4ee6",
      "parents": [
        "432c5b6c1d4181194cb82a14107b6d10105231a9",
        "8f076ec3c3133c70b67cdb9f5ae0907fd20492dd"
      ],
      "author": {
        "name": "Xia Wang",
        "email": "xiaw@google.com",
        "time": "Fri Jul 30 13:44:23 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 30 13:44:23 2010 -0700"
      },
      "message": "Merge \"DO NOT MERGE\" into gingerbread"
    },
    {
      "commit": "8894de6d3e81649b3005bdbd0a95cbada0a6e418",
      "tree": "191eb1337fe311e04aeab813de767363a4ef3d20",
      "parents": [
        "31b5d5485f7336639d252da7ba979234dbd2f1e1"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Jul 30 12:41:59 2010 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Jul 30 12:41:59 2010 -0700"
      },
      "message": "Lower the lower bound for max file duration check\n\n- This fixed a CTS test where 200 ms is being used\n\nChange-Id: Ib598b7b94be54e98a96703c58c5f244bc379cf7d\n"
    },
    {
      "commit": "432c5b6c1d4181194cb82a14107b6d10105231a9",
      "tree": "a134148c3f13d24f3aca4ebc574899669d3efa63",
      "parents": [
        "154a320069a316491c25b716f2aeea8c51a758e8",
        "7f9fe5fdfab8dbfffb279ae1687361ca1d939bb6"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Jul 30 12:15:02 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jul 30 12:15:02 2010 -0700"
      },
      "message": "am 7f9fe5fd: Merge \"Add a missing break; to restore old functionality and not turn off the screen after 30secs regardless of system preference.\" into froyo\n\nMerge commit \u00277f9fe5fdfab8dbfffb279ae1687361ca1d939bb6\u0027 into gingerbread\n\n* commit \u00277f9fe5fdfab8dbfffb279ae1687361ca1d939bb6\u0027:\n  Add a missing break; to restore old functionality and not turn off the screen after 30secs regardless of system preference.\n"
    },
    {
      "commit": "154a320069a316491c25b716f2aeea8c51a758e8",
      "tree": "a134148c3f13d24f3aca4ebc574899669d3efa63",
      "parents": [
        "4609b0a8fcfbed9b893301232dfa3b70bb30e4e2",
        "27eecb704a27c1c73ed3449eba0307d8138b9c2e"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Fri Jul 30 12:08:31 2010 -0700"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Fri Jul 30 12:08:31 2010 -0700"
      },
      "message": "resolved conflicts for merge of 27eecb70 to gingerbread\n\nChange-Id: If064f2f4950fc1a4ff38e6927fe2120af76b26f1\n"
    },
    {
      "commit": "4609b0a8fcfbed9b893301232dfa3b70bb30e4e2",
      "tree": "52d85f7343bb55ba021d9e1867fd7c5a7a902e1e",
      "parents": [
        "628be513e67ce6c61884b1baaf0379abfc56100b",
        "3d8d9440d844816f065d2b10eb75bb693683cdad"
      ],
      "author": {
        "name": "Gilles Debunne",
        "email": "debunne@google.com",
        "time": "Fri Jul 30 11:53:21 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jul 30 11:53:21 2010 -0700"
      },
      "message": "am 3d8d9440: Merge \"Fixes regarding densities in \"Providing Resources\" documentation page.\" into froyo\n\nMerge commit \u00273d8d9440d844816f065d2b10eb75bb693683cdad\u0027 into gingerbread\n\n* commit \u00273d8d9440d844816f065d2b10eb75bb693683cdad\u0027:\n  Fixes regarding densities in \"Providing Resources\" documentation page.\n"
    },
    {
      "commit": "628be513e67ce6c61884b1baaf0379abfc56100b",
      "tree": "67fbdfe3327d8a5dd7ac335b3b6218e5256efe59",
      "parents": [
        "7c600369c9695de73ca37db552eb81b8b89d5e76",
        "83884db9dc0fbddb6ece566284259f6b941beb33"
      ],
      "author": {
        "name": "Gilles Debunne",
        "email": "debunne@google.com",
        "time": "Fri Jul 30 11:53:16 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jul 30 11:53:16 2010 -0700"
      },
      "message": "am 83884db9: Merge \"Fixed doc typos in HeterogeneousExpandableList.java.\" into froyo\n\nMerge commit \u002783884db9dc0fbddb6ece566284259f6b941beb33\u0027 into gingerbread\n\n* commit \u002783884db9dc0fbddb6ece566284259f6b941beb33\u0027:\n  Fixed doc typos in HeterogeneousExpandableList.java.\n"
    },
    {
      "commit": "7c600369c9695de73ca37db552eb81b8b89d5e76",
      "tree": "d083a771e7a1d7c48fb516c948b530b4fd0a28f7",
      "parents": [
        "92e847ed8e455dca3b2d33d92999e3960404d9af",
        "7083c42fff819b2c4949984a461bd54e9fa822a3"
      ],
      "author": {
        "name": "Steve Howard",
        "email": "showard@google.com",
        "time": "Fri Jul 30 11:09:48 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 30 11:09:48 2010 -0700"
      },
      "message": "Merge \"Update Context.getSystemService() docs for download manager.\" into gingerbread"
    },
    {
      "commit": "92e847ed8e455dca3b2d33d92999e3960404d9af",
      "tree": "752abb5d10bc782fb798be47293d72341c924771",
      "parents": [
        "55a76dd8d9996c1e93762d7611789aea696d536c"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jul 30 09:12:51 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jul 30 09:12:51 2010 -0700"
      },
      "message": "Audio effects: aligned Equalizer API argument types on OpenSL ES SLEqualizerItf.\n\nModified types of some arguments and returned values of the Equalizer class from int to short\nto match those defined by OpenSL ES SLEqualizerItf interface.\n\nAlso fixed a problem with set properties in equalizer engine implementation.\n\nChange-Id: I75894bad0cb67b01c18ca5e22f9687e75ee491b8\n"
    },
    {
      "commit": "7f9fe5fdfab8dbfffb279ae1687361ca1d939bb6",
      "tree": "f48c4878fe5c5c5019f02b8255e52474537b7f26",
      "parents": [
        "27eecb704a27c1c73ed3449eba0307d8138b9c2e",
        "d04ed08a7c894d2cf54209b408ca673d4e7669a9"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Jul 30 08:05:56 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 30 08:05:56 2010 -0700"
      },
      "message": "Merge \"Add a missing break; to restore old functionality and not turn off the screen after 30secs regardless of system preference.\" into froyo"
    },
    {
      "commit": "bd2de0e42adc3fad30d86ed2c8d0488bc9501f36",
      "tree": "3e8d90e3aa44cbf12d8f1ac39bac703ed4487990",
      "parents": [
        "55a76dd8d9996c1e93762d7611789aea696d536c"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu Jul 29 23:28:03 2010 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu Jul 29 23:28:03 2010 -0700"
      },
      "message": "remove copybit hack from software opengl (libagl)\n\nh/w acceleration is not supported through software gl + copybit anylonger,\ninstead, h/w opengl must be used. in the system compositor, a new h/w\ncomposition api will be introduced to allow h/w accelerated composition with\noverlays and/or 2D blocks.\n\nChange-Id: I04949cb074ba8c4d637319ace23497c16a58d5bf\n"
    },
    {
      "commit": "55a76dd8d9996c1e93762d7611789aea696d536c",
      "tree": "19564c9d9817127c1882727fbd944a213d130abf",
      "parents": [
        "04d7e83e65e246e154b5b346e3eb0081b741ae88",
        "3ad6c442441615802121ff87641534fb438226c9"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu Jul 29 20:52:26 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 29 20:52:26 2010 -0700"
      },
      "message": "Merge \"fix [2870926] Issue 9802: EGL wrapper has not been implemented correctly for eglQuerySurface().\" into gingerbread"
    },
    {
      "commit": "8f076ec3c3133c70b67cdb9f5ae0907fd20492dd",
      "tree": "0bd2660feb511a395684fa46ebd723b0866f91d0",
      "parents": [
        "04d7e83e65e246e154b5b346e3eb0081b741ae88"
      ],
      "author": {
        "name": "Xia Wang",
        "email": "xiaw@google.com",
        "time": "Mon Jul 26 11:27:06 2010 -0700"
      },
      "committer": {
        "name": "Xia Wang",
        "email": "xiaw@google.com",
        "time": "Thu Jul 29 19:15:33 2010 -0700"
      },
      "message": "DO NOT MERGE\n\nmove change to gingerbread.\n\nWait for broadcast even if the network state has been changed.\nbug: 2863356\n\nChange-Id: Ia78d1d6c2906371b56dfd4765845431047e9e9c0\n"
    },
    {
      "commit": "04d7e83e65e246e154b5b346e3eb0081b741ae88",
      "tree": "010c86fa7361f8e09dee2e496a4ed04b2f077d38",
      "parents": [
        "050b56244ff46d43e4886018d7cd20f0b1dc02b9"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu Jul 29 17:59:58 2010 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu Jul 29 18:18:01 2010 -0700"
      },
      "message": "Added SensorManager.getAltitude()\n\nthis is a helper function to calculate the altitude from the\npressure and pressure at sea level.\n\nChange-Id: I3f6f14fee6190388f95afa36a66287e3d59eef9b\n"
    },
    {
      "commit": "050b56244ff46d43e4886018d7cd20f0b1dc02b9",
      "tree": "1c0cfcd08dbd18b386bebe5dd2cbeb1c945ccbda",
      "parents": [
        "3fb627525e077fa5452a99ac1e2a7e9c41995044"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu Jul 29 16:51:38 2010 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu Jul 29 18:18:00 2010 -0700"
      },
      "message": "Added SensorManager.getMinDelay()\n\nExposed the new \"min delay\" sensor property through native and\njava sensor apis. This allows the caller to know what is the\nmaximum rate at which a sensor can return events, or, if a sensor\nworks in \"update\" mode (events returned only when the value changes).\n\nAlso augmented SensorManager.regusterSensorEvent() so that it can\naccept a value in microsecond in addition to the 4 constants already\ndefined.\n\nChange-Id: If425e9979892666df8c989d7de3c362230fa19e0\n"
    },
    {
      "commit": "27eecb704a27c1c73ed3449eba0307d8138b9c2e",
      "tree": "65bfdcc360ba98d1c639f2d77cb099c1fefeab0c",
      "parents": [
        "3d8d9440d844816f065d2b10eb75bb693683cdad",
        "83407b993f79e06470100f605748aba41cbeb966"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu Jul 29 17:45:56 2010 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu Jul 29 17:45:56 2010 -0700"
      },
      "message": "Merge branch \u0027froyo\u0027 of git://android.git.kernel.org/platform/frameworks/base into HEAD\n"
    },
    {
      "commit": "83407b993f79e06470100f605748aba41cbeb966",
      "tree": "3d07a0bafba647b56cfb83013c0a65786cc62e64",
      "parents": [
        "3855980b4355017fa9a4988d7b150f3222075198"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Jul 29 17:35:37 2010 -0700"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Jul 29 17:41:35 2010 -0700"
      },
      "message": "fix inaccurate copyrights\n\nChange-Id: I33b0f68f2da34ca4728211d83159cf32a127f6dd\n"
    },
    {
      "commit": "3d8d9440d844816f065d2b10eb75bb693683cdad",
      "tree": "08356f845f20c08bd9cd005172d1cc434176cdc5",
      "parents": [
        "83884db9dc0fbddb6ece566284259f6b941beb33",
        "c09a6977ae3922522dd59ff4fcb84f329f0d695c"
      ],
      "author": {
        "name": "Gilles Debunne",
        "email": "debunne@google.com",
        "time": "Thu Jul 29 17:39:32 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 29 17:39:32 2010 -0700"
      },
      "message": "Merge \"Fixes regarding densities in \"Providing Resources\" documentation page.\" into froyo"
    },
    {
      "commit": "83884db9dc0fbddb6ece566284259f6b941beb33",
      "tree": "989595a153979afae378bc008c8045b88ae75fdd",
      "parents": [
        "392edec1162e9d00bcb66b271f43908f75d42ace",
        "5d658d048e820f1b0e07fe45b947f197e7f2f346"
      ],
      "author": {
        "name": "Gilles Debunne",
        "email": "debunne@google.com",
        "time": "Thu Jul 29 17:39:18 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 29 17:39:18 2010 -0700"
      },
      "message": "Merge \"Fixed doc typos in HeterogeneousExpandableList.java.\" into froyo"
    },
    {
      "commit": "5d658d048e820f1b0e07fe45b947f197e7f2f346",
      "tree": "59624cdc996e91c216c35b338b27d9561c034839",
      "parents": [
        "3bf5c4cd30f8bd598842d8ded5f1655406b5c27a"
      ],
      "author": {
        "name": "Gilles Debunne",
        "email": "debunne@google.com",
        "time": "Wed Jul 28 09:00:41 2010 -0700"
      },
      "committer": {
        "name": "Gilles Debunne",
        "email": "debunne@google.com",
        "time": "Thu Jul 29 16:56:25 2010 -0700"
      },
      "message": "Fixed doc typos in HeterogeneousExpandableList.java.\n\nBad links.\n\nCherry-pick from master for a documentation update.\nhttps://android-git.corp.google.com/g/#change,59176\n\nChange-Id: Ib69b05c09fc80434cb9cd79d61fae4035adc1970\n"
    },
    {
      "commit": "c09a6977ae3922522dd59ff4fcb84f329f0d695c",
      "tree": "76e596affb553285498d1f747c3b5954ca3ec900",
      "parents": [
        "3bf5c4cd30f8bd598842d8ded5f1655406b5c27a"
      ],
      "author": {
        "name": "Gilles Debunne",
        "email": "debunne@google.com",
        "time": "Wed Jul 28 09:01:34 2010 -0700"
      },
      "committer": {
        "name": "Gilles Debunne",
        "email": "debunne@google.com",
        "time": "Thu Jul 29 16:54:03 2010 -0700"
      },
      "message": "Fixes regarding densities in \"Providing Resources\" documentation page.\n\nThe ratio between densities is not constant.\n\nThe Exception for dpi qualifier in point 4 of the algorithm should be detailed.\n\nI understand that if my config is ldpi-trackball-v5\nand I have the choice between mdpi and hdpi-trackball-v5, mdpi will be chosen.\n\nCherry-picked from master CL 59188.\n\nChange-Id: Ibe412a82845527ebdb104605c99c205ca52ab97c\n"
    },
    {
      "commit": "3fb627525e077fa5452a99ac1e2a7e9c41995044",
      "tree": "149d0d8de3a73420feac657cb8252f7ee2ce0020",
      "parents": [
        "31b5d5485f7336639d252da7ba979234dbd2f1e1",
        "392edec1162e9d00bcb66b271f43908f75d42ace"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu Jul 29 15:46:48 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jul 29 15:46:48 2010 -0700"
      },
      "message": "am 392edec1: Merge from open-source froyo\n\nMerge commit \u0027392edec1162e9d00bcb66b271f43908f75d42ace\u0027 into gingerbread\n\n* commit \u0027392edec1162e9d00bcb66b271f43908f75d42ace\u0027:\n  Fix a bug where we cleaned an apps external data when upgrading it. :(\n"
    },
    {
      "commit": "392edec1162e9d00bcb66b271f43908f75d42ace",
      "tree": "5ecf0d7fb1e22166761f51b530aac6ac88b0f714",
      "parents": [
        "16263d9f8cc01392c2f3678b381ce897647c8c81",
        "3855980b4355017fa9a4988d7b150f3222075198"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu Jul 29 15:38:41 2010 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu Jul 29 15:38:49 2010 -0700"
      },
      "message": "Merge from open-source froyo\n\nChange-Id: Ifa75fce9bd362b06ecb622219ef501e61e89fd76\n"
    },
    {
      "commit": "3855980b4355017fa9a4988d7b150f3222075198",
      "tree": "c078487e21c67006d0725783a4571c6b79f1f535",
      "parents": [
        "e8605af513e846f6cd223c9e92461189727d8c9b"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jul 29 13:57:56 2010 -0700"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Jul 29 15:24:15 2010 -0700"
      },
      "message": "Fix a bug where we cleaned an apps external data when upgrading it. :(\n\nChange-Id: I0eee1e7062d334c66d6daa3c43e11a292263aada\n"
    },
    {
      "commit": "31b5d5485f7336639d252da7ba979234dbd2f1e1",
      "tree": "149d0d8de3a73420feac657cb8252f7ee2ce0020",
      "parents": [
        "571180c4c72e0bb4f930f8971edf000a652f10f6",
        "fb1f103191f1cf424a79aaf1cd67d2d1900138e0"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jul 29 14:07:14 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 29 14:07:14 2010 -0700"
      },
      "message": "Merge \"Fix a bug where we cleaned an apps external data when upgrading it. :(\" into gingerbread"
    },
    {
      "commit": "fb1f103191f1cf424a79aaf1cd67d2d1900138e0",
      "tree": "764b1869ec3a254798133506c7059ac491a19bf0",
      "parents": [
        "a0ae8bc5c62b12269f20cbebdb0d8614e4e8eb1a"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jul 29 13:57:56 2010 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jul 29 13:58:32 2010 -0700"
      },
      "message": "Fix a bug where we cleaned an apps external data when upgrading it. :(\n\nChange-Id: I0eee1e7062d334c66d6daa3c43e11a292263aada\n"
    },
    {
      "commit": "571180c4c72e0bb4f930f8971edf000a652f10f6",
      "tree": "db7e1ec2ce58c64c250d035a15db3d5288d4c49e",
      "parents": [
        "aab985b951c4cf5ec2753ffbec516164b3c03c3a",
        "466b22b76e438b3419cedbe782ab71b8ade18260"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Thu Jul 29 13:53:37 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 29 13:53:37 2010 -0700"
      },
      "message": "Merge \"Attempt to fix the SDK build\" into gingerbread"
    },
    {
      "commit": "466b22b76e438b3419cedbe782ab71b8ade18260",
      "tree": "c407a0750d7a221815fbf07087ec3173a0250587",
      "parents": [
        "6dea6f4e71b53e421564d783c227cbe0a2469183"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Thu Jul 29 13:16:38 2010 -0700"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Thu Jul 29 13:42:45 2010 -0700"
      },
      "message": "Attempt to fix the SDK build\n\nOn the assumption that the local min() function declaration is in\nconflict with some \u0027min\u0027 #define floating around, rename the local\nfunction to min_of().\n\nChange-Id: I62aa27f213c6093cc78805de611cf4aa75f0eef2\n"
    },
    {
      "commit": "aab985b951c4cf5ec2753ffbec516164b3c03c3a",
      "tree": "2072dd6ce828bcfae5fd9f88c852367099912f5f",
      "parents": [
        "6ec402b5ae33c8927694d8522b4cc6a5c8ba974e"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Thu Jul 29 13:05:52 2010 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Thu Jul 29 13:05:52 2010 -0700"
      },
      "message": "Fix touch input in landscape mode.\n\nChange-Id: I7d47e9b02e6443ed604a6bf842028a5db934d90d\n"
    },
    {
      "commit": "6ec402b5ae33c8927694d8522b4cc6a5c8ba974e",
      "tree": "5d4b19eda9ade71d7e34635479426f1dd484e8c2",
      "parents": [
        "6dea6f4e71b53e421564d783c227cbe0a2469183"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Wed Jul 28 15:48:59 2010 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Thu Jul 29 12:54:27 2010 -0700"
      },
      "message": "DO NOT MERGE: Fix input event injection ANRs on UI thread.\n\nAdded a new asynchronous injection mode and made the existing\nsynchronization mechanism more robust.\n\nChange-Id: Ia4aa04fd9b75ea2461a844c5b7933c831c1027e6\n"
    },
    {
      "commit": "6dea6f4e71b53e421564d783c227cbe0a2469183",
      "tree": "831d44d4450fd36e0f228e5dc2186899a78b52f0",
      "parents": [
        "8dc16c27e23dae5bdf65fd2a2ced97c2f645a633",
        "16263d9f8cc01392c2f3678b381ce897647c8c81"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Jul 29 11:07:49 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jul 29 11:07:49 2010 -0700"
      },
      "message": "am 16263d9f: Squashed commit of the following:\n\nMerge commit \u002716263d9f8cc01392c2f3678b381ce897647c8c81\u0027 into gingerbread\n\n* commit \u002716263d9f8cc01392c2f3678b381ce897647c8c81\u0027:\n  Squashed commit of the following:\n"
    },
    {
      "commit": "16263d9f8cc01392c2f3678b381ce897647c8c81",
      "tree": "4fc80a3142efdb1b7a34959bcc4a8068640656d4",
      "parents": [
        "3bf5c4cd30f8bd598842d8ded5f1655406b5c27a"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Jul 20 09:44:34 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Jul 29 09:45:06 2010 -0700"
      },
      "message": "Squashed commit of the following:\n\ncommit 4abf16bb04dc9695fedf4007a84f903074312ccd\nAuthor: Andreas Huber \u003candih@google.com\u003e\nDate:   Tue Jul 20 09:21:17 2010 -0700\n\n    Support a single format change at the beginning of audio playback. This way the AAC+ decoder may change its output format from what is originally encoded in the audio stream and we\u0027ll still play it back correctly.\n\n    Change-Id: Icc790122744745e9a88099788d4818ca1e265a82\n    related-to-bug: 2826841\n\ncommit 09c74da63e6ad5cb5dafb70f62696d75d2978967\nAuthor: James Dong \u003cjdong@google.com\u003e\nDate:   Sun Jul 18 17:57:01 2010 -0700\n\n    Fix MPEG4Extractor to extract sampling frequency correctly when SBR is enabled.\n\n    Change-Id: I883c81dad3ea465e71cb5590e89d763671a90ff8\n\ncommit f672bf2a782dc7d5fb6325d611a7fe17045dfe9a\nAuthor: James Dong \u003cjdong@google.com\u003e\nDate:   Thu Jul 8 20:56:13 2010 -0700\n\n    Enable the support for decoding audio with AAC+ and eAAC+ features\n\n    bug - 282684\n\n    Change-Id: I73c8377af3cc4edd3ee7cea86dc3b1c369fbd78b\n\nChange-Id: I012f1179e933b6d1345d2368f357576c722485f7\n"
    },
    {
      "commit": "d04ed08a7c894d2cf54209b408ca673d4e7669a9",
      "tree": "ed53a7a9ed4ee634e6242fd5b82dd76d4a38ebb5",
      "parents": [
        "3bf5c4cd30f8bd598842d8ded5f1655406b5c27a"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Jul 27 16:49:10 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Jul 29 09:25:10 2010 -0700"
      },
      "message": "Add a missing break; to restore old functionality and not turn off the screen after 30secs regardless of system preference.\n\nChange-Id: Ib71113a3bc5aa5fdc088ab4ac3627352499ad3fa\n"
    },
    {
      "commit": "8dc16c27e23dae5bdf65fd2a2ced97c2f645a633",
      "tree": "f13d07246db7fbaaf63550c9dd570da5677c62a0",
      "parents": [
        "a54d7d3d7dd691334189aab20d23c65710092869"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Jul 29 11:39:55 2010 -0400"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Jul 29 11:39:55 2010 -0400"
      },
      "message": "Fix typo in GPS mode logic.\n\nMS-Assisted support should not be required for using MS-Based mode.\n\nChange-Id: Ia6ee219674de3e9cc13190b753f8776305a4fa90\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "a54d7d3d7dd691334189aab20d23c65710092869",
      "tree": "c210f11aa8f51610a039b1a2f6a2d59330710940",
      "parents": [
        "493941b8d8a12ee843d9823c0177f8005a7be54f"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jul 29 06:50:24 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jul 29 06:50:24 2010 -0700"
      },
      "message": "Fixed underrun in audioflinger mixer.\n\nWhen all audio tracks have been disabled and the mixer is running idle before the output stream is placed in standby,\nthe mixer sometimes fails to write to the output stream on time to avoid underrun.\n\nThis is because the sleep period used to wait before the next write to output stream is too close to the actual buffer duration.\nIn fact this sleep time is not critical as if we write too early to the output stream, the kernel driver will wait for free buffers\nfrom the audio DSP DMA and we will sleep anyways.\n\nThe fix consists in dividing the calculated wait period by 2 to increase the margin.\n\nChange-Id: I5730887dc2ccce2a511bc858494a6f7da6b392a0\n"
    },
    {
      "commit": "493941b8d8a12ee843d9823c0177f8005a7be54f",
      "tree": "4f65a1e32a5eb1ce656ab9acd9c5020707cc68fd",
      "parents": [
        "7b40518e56a3238b28b24a786a2ff22d5a425765"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jul 28 01:32:47 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jul 29 02:34:40 2010 -0700"
      },
      "message": "Allow creation of an audio effect on a session with no audio tracks.\n\nThis is necessary to allow creating and enabling an effect attached to a particular player\nsession before the playback is started. As a matter of fact, the implementation of the mediaplayer\ndoes not create the AudioTrack before playback starts.\n\nChange-Id: I1266e8885f9d756acc949303321aaac0fbf83e34\n"
    },
    {
      "commit": "7b40518e56a3238b28b24a786a2ff22d5a425765",
      "tree": "c16e2ed15ce137d5fd9852b4d174b19877eb061a",
      "parents": [
        "a0ae8bc5c62b12269f20cbebdb0d8614e4e8eb1a",
        "a4879bad704981da014206380eca93163f4c5a2b"
      ],
      "author": {
        "name": "Chris Tate",
        "email": "ctate@android.com",
        "time": "Wed Jul 28 18:14:51 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 28 18:14:51 2010 -0700"
      },
      "message": "Merge \"Change unistd.h to stddef.h to be correct\" into gingerbread"
    },
    {
      "commit": "a0ae8bc5c62b12269f20cbebdb0d8614e4e8eb1a",
      "tree": "13aab5c9a7962f9f3cbc2fa983e0e2ce17d73a8e",
      "parents": [
        "3de27d5a56f4b9e3d76ac71445b33e47c635d207",
        "1b088be8bb304e4ab7a1896d3ec3b9df9d9cf68e"
      ],
      "author": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Wed Jul 28 16:56:13 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 28 16:56:13 2010 -0700"
      },
      "message": "Merge \"Fix a bug that could cause flings to last too long using a Scroller\" into gingerbread"
    },
    {
      "commit": "a4879bad704981da014206380eca93163f4c5a2b",
      "tree": "43ba2e498263f9901d449f473aa53f3f5ee954e3",
      "parents": [
        "e30de4e6a312aa921633d119f2518f4b07a7effa"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Jul 28 16:46:12 2010 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Jul 28 16:46:12 2010 -0700"
      },
      "message": "Change unistd.h to stddef.h to be correct\n\nsize_t should be defined through inclusion of stddef.h instead of unistd.h\n\nChange-Id: Ieaadacfca1e1c44c2533ea95f73fc060c1519b52\n"
    },
    {
      "commit": "1b088be8bb304e4ab7a1896d3ec3b9df9d9cf68e",
      "tree": "3459113adba13d98e4793755796fdfb39ece632a",
      "parents": [
        "8c5d9430d2f029be0c1100f7b3c38a2fb9fe99b6"
      ],
      "author": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Fri Jul 23 15:49:03 2010 -0700"
      },
      "committer": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Wed Jul 28 16:43:45 2010 -0700"
      },
      "message": "Fix a bug that could cause flings to last too long using a Scroller\n\nBug 2866552\n\nChange-Id: I6979b3da54ca2aeaf4583629e28ee81fa5bd70da\n"
    },
    {
      "commit": "3de27d5a56f4b9e3d76ac71445b33e47c635d207",
      "tree": "43508b6262ff21c4947fd587d24d87dcbc3e4990",
      "parents": [
        "8c5d9430d2f029be0c1100f7b3c38a2fb9fe99b6",
        "e30de4e6a312aa921633d119f2518f4b07a7effa"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Jul 28 16:41:49 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 28 16:41:49 2010 -0700"
      },
      "message": "Merge \"Add stdint.h to fix sim-eng\" into gingerbread"
    },
    {
      "commit": "e30de4e6a312aa921633d119f2518f4b07a7effa",
      "tree": "8e154eb1ce1fa9fed249409a08dd254db0b681f9",
      "parents": [
        "9d90ed71ccf45bc1e422ee2abc9acf0a806b9319"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Jul 28 16:41:02 2010 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Jul 28 16:41:02 2010 -0700"
      },
      "message": "Add stdint.h to fix sim-eng\n\nChange-Id: I82cebe3e769aa4db99bd758bd2f182b0d462de6f\n"
    },
    {
      "commit": "8c5d9430d2f029be0c1100f7b3c38a2fb9fe99b6",
      "tree": "c949a293706e2d5a7678752e4a8bc913a70313af",
      "parents": [
        "9f2a91bc2b01c2cc60f73a0bae673225fdddec09",
        "9d90ed71ccf45bc1e422ee2abc9acf0a806b9319"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Jul 28 16:37:20 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 28 16:37:20 2010 -0700"
      },
      "message": "Merge \"Add unistd.h for size_t typedef to fix sim-eng\" into gingerbread"
    },
    {
      "commit": "9d90ed71ccf45bc1e422ee2abc9acf0a806b9319",
      "tree": "388949d378d71236471652b5f26d6f6f73580e6c",
      "parents": [
        "bae6fe242ff9a97840ff0c5d9d87c0575d261682"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Jul 28 16:31:24 2010 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Jul 28 16:31:24 2010 -0700"
      },
      "message": "Add unistd.h for size_t typedef to fix sim-eng\n\nChange-Id: Ida4f1742547f39539b601f13182c722aa7cf863e\n"
    },
    {
      "commit": "9f2a91bc2b01c2cc60f73a0bae673225fdddec09",
      "tree": "4896baaf07143ebe2be37685c49714b223e3f100",
      "parents": [
        "bae6fe242ff9a97840ff0c5d9d87c0575d261682",
        "51c70e3e41ee8bedc1d951a06a74202dafa13009"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Jul 28 16:30:56 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 28 16:30:56 2010 -0700"
      },
      "message": "Merge \"fix [2873058] Surface::dequeueBuffer blocks on last buffer, i.e. cannot dequeue all allocated buffers at once.\" into gingerbread"
    },
    {
      "commit": "7083c42fff819b2c4949984a461bd54e9fa822a3",
      "tree": "e7f9f7cefaaeb5cb220bfb98c775aa7ee98e1c8b",
      "parents": [
        "9b8e5566f99c55222db4127719440272f63a5361"
      ],
      "author": {
        "name": "Steve Howard",
        "email": "showard@google.com",
        "time": "Wed Jul 28 16:01:23 2010 -0700"
      },
      "committer": {
        "name": "Steve Howard",
        "email": "showard@google.com",
        "time": "Wed Jul 28 16:01:23 2010 -0700"
      },
      "message": "Update Context.getSystemService() docs for download manager.\n\nChange-Id: Ic514b3289b38d6da7d5fe4ffc87c6865280d66d8\n"
    },
    {
      "commit": "bae6fe242ff9a97840ff0c5d9d87c0575d261682",
      "tree": "428e2e84aef9faeaf4a89d9663a42438649fcc36",
      "parents": [
        "bc1daf016020ce022ceb971f09e862da5ee82b1d",
        "b100cbf178e91d6652ebbad3ed36684cacb9d10e"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Wed Jul 28 15:36:48 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 28 15:36:48 2010 -0700"
      },
      "message": "Merge \"Support streaming of compressed assets \u003e 1 megabyte\" into gingerbread"
    },
    {
      "commit": "b100cbf178e91d6652ebbad3ed36684cacb9d10e",
      "tree": "acb386c8adee2d0390193fc631f841f8d76ea5d7",
      "parents": [
        "0c39b6c65bcb96ed6438c7d792a67708409d8f0f"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Mon Jul 26 11:24:18 2010 -0700"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Wed Jul 28 15:33:28 2010 -0700"
      },
      "message": "Support streaming of compressed assets \u003e 1 megabyte\n\nCompressed assets larger than one megabyte are now decompressed on demand\nrather than being decompressed in their entirety and held in memory.  Reading\nthe data in order is relatively efficient, as is seeking forward in the stream.\nSeeking backwards is supported, but requires reprocessing the compressed data\nfrom the beginning, so is very inefficient.\n\nIn addition, the size limit on compressed assets has been eliminated.\n\nChange-Id: I6e68247957e6c53e7e8ba70d12764695f1723bad\n"
    },
    {
      "commit": "bc1daf016020ce022ceb971f09e862da5ee82b1d",
      "tree": "8b1cf897648a36633fc93ab5307e61990f67dc8a",
      "parents": [
        "f369a9b5f7b2ae75875753caf90ec68fd9dbc144",
        "e991e5f334c287737b6d82b050185a20185d7def"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Jul 28 15:28:54 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 28 15:28:54 2010 -0700"
      },
      "message": "Merge \"Eliminate the linear cost associated with mSampleSizes.size()\" into gingerbread"
    },
    {
      "commit": "e991e5f334c287737b6d82b050185a20185d7def",
      "tree": "dd726883a24efef0489938e4a7394f65f48af970",
      "parents": [
        "b350bec514eb9fee473e4ef62680c53e992dc49b"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Jul 28 13:18:14 2010 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Jul 28 15:21:59 2010 -0700"
      },
      "message": "Eliminate the linear cost associated with mSampleSizes.size()\n\n- The linear cost associated with mSampleSizes.size() call causes the\n  CPU load to increase overtime as more and more audio/video samples\n  are recorded.\n\n- Other Lists used in the MP4 file writer may have similar issues, but\n  the size() call is not made for each output audio/video output sample,\n  or the size of the list is bounded (not linear to the total number\n  of audio/video output samples). As for now, we can live with the small\n  cost (tested with 30 minutes long recording).\n\nChange-Id: I23bd93ea4256cb0be0c1649760e39e6809eb4946\n"
    },
    {
      "commit": "f369a9b5f7b2ae75875753caf90ec68fd9dbc144",
      "tree": "65ddddfda965f4d2d140fcbc365317f4307be6db",
      "parents": [
        "56c02dc3d325bab8549ec34b9d6aa7c62ef742d0"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Jul 28 14:47:01 2010 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Jul 28 14:48:58 2010 -0700"
      },
      "message": "Remove stale temporary ASEC containers\n\nWhen a temporary container is created, its existence should be\nephemeral. However, if there is an error that causes system_server to be\nkilled during the process of creating a finalized ASEC, delete the stale\ncontainers on the next start-up of system_server.\n\nChange-Id: I7be8f94638a824295474c9a95960594848cb726b\n"
    },
    {
      "commit": "56c02dc3d325bab8549ec34b9d6aa7c62ef742d0",
      "tree": "b465b8f43821db74dc7c27afc2b214d882f82978",
      "parents": [
        "b1bb7180ec3446208ea717d96f6a507ea9955a13",
        "c78a8079740bfcad2e4439ccd74da52f6dc7fae2"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Jul 28 14:48:40 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 28 14:48:40 2010 -0700"
      },
      "message": "Merge \"Fix getTempContainerId()\" into gingerbread"
    },
    {
      "commit": "c78a8079740bfcad2e4439ccd74da52f6dc7fae2",
      "tree": "32980045a8a1e809f407a9c7c9ba51d283bfd004",
      "parents": [
        "7feab3470156c7864fe159115d575c16f0974493"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Tue Jul 27 15:18:38 2010 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Jul 28 14:45:14 2010 -0700"
      },
      "message": "Fix getTempContainerId()\n\ngetTempContainerId() would always return \"smdl2tmp1\" unless you had\nMAX_CONTAINERS number of SD card SDKs, because of an array sort that put\nall the zeros at the beginning.\n\nSwitch from trying to find a hole in the series of numbers to just\ngetting a number that\u0027s one larger than the previous. This reduces the\nalgorithmic complexity and the memory requirements.\n\nBug: 2832580\nChange-Id: I32dc75ef5a6645f594ea47b032d7402e8860ebcd\n"
    },
    {
      "commit": "b1bb7180ec3446208ea717d96f6a507ea9955a13",
      "tree": "b729cb871251aa025918b0e0ea04e4701295f548",
      "parents": [
        "6d0fec2de3601821f4f44eeb7d7deedebb2b7117",
        "3bf5c4cd30f8bd598842d8ded5f1655406b5c27a"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Wed Jul 28 14:23:16 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jul 28 14:23:16 2010 -0700"
      },
      "message": "am 3bf5c4cd: Merge \"fix markup error bug:2871538\" into froyo\n\nMerge commit \u00273bf5c4cd30f8bd598842d8ded5f1655406b5c27a\u0027 into gingerbread\n\n* commit \u00273bf5c4cd30f8bd598842d8ded5f1655406b5c27a\u0027:\n  fix markup error\n"
    },
    {
      "commit": "3bf5c4cd30f8bd598842d8ded5f1655406b5c27a",
      "tree": "fb43420300be09155622d17350cdb2ced3e70d29",
      "parents": [
        "17876aa586cc9acfb3e5b909c14b9e73537a1a8d",
        "8a52f3d6836aec401034a6afa9443e68f7fde662"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Wed Jul 28 14:20:18 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 28 14:20:18 2010 -0700"
      },
      "message": "Merge \"fix markup error bug:2871538\" into froyo"
    },
    {
      "commit": "6d0fec2de3601821f4f44eeb7d7deedebb2b7117",
      "tree": "9fdea32c5691a6d0bcb3085df47f42a8e6ecd565",
      "parents": [
        "b350bec514eb9fee473e4ef62680c53e992dc49b"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Jul 23 21:28:06 2010 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Wed Jul 28 14:16:15 2010 -0700"
      },
      "message": "Refactor input reader to support new device types more easily.\n\nRefactored the input reader so that each raw input protocol is handled\nby a separate subclass of the new InputMapper type.  This way, behaviors\npertaining to keyboard, trackballs, touchscreens, switches and other\ndevices are clearly distinguished for improved maintainability.\n\nAdded partial support for describing capabilities of input devices\n(incomplete and untested for now, will be fleshed out in later commits).\n\nSimplified EventHub interface somewhat since InputReader is taking over\nmore of the work.\n\nCleaned up some of the interactions between InputManager and\nWindowManagerService related to reading input state.\n\nFixed swiping finger from screen edge into display area.\n\nAdded logging of device information to \u0027dumpsys window\u0027.\n\nChange-Id: I17faffc33e3aec3a0f33f0b37e81a70609378612\n"
    },
    {
      "commit": "8a52f3d6836aec401034a6afa9443e68f7fde662",
      "tree": "5de6c1f02f5a99601f664eccf6fa1ce43d918aea",
      "parents": [
        "86c035f0d176be9cb06b1e4f2390c25701417586"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Wed Jul 28 14:14:40 2010 -0700"
      },
      "committer": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Wed Jul 28 14:15:26 2010 -0700"
      },
      "message": "fix markup error\nbug:2871538\n\nChange-Id: I7ab4a9bb722ee8b3e5d740f79143776be8b56a6f\n"
    },
    {
      "commit": "b350bec514eb9fee473e4ef62680c53e992dc49b",
      "tree": "bd0eab64212d1d82aec1143890b5b488479f09c9",
      "parents": [
        "7e397842d53a4242a019daa4b234910273121c30",
        "17876aa586cc9acfb3e5b909c14b9e73537a1a8d"
      ],
      "author": {
        "name": "Dan Egnor",
        "email": "egnor@google.com",
        "time": "Wed Jul 28 12:40:16 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jul 28 12:40:16 2010 -0700"
      },
      "message": "am 17876aa5: Minor changes to ContentProvider javadoc to improve consistency.\n\nMerge commit \u002717876aa586cc9acfb3e5b909c14b9e73537a1a8d\u0027 into gingerbread\n\n* commit \u002717876aa586cc9acfb3e5b909c14b9e73537a1a8d\u0027:\n  Minor changes to ContentProvider javadoc to improve consistency.\n"
    },
    {
      "commit": "17876aa586cc9acfb3e5b909c14b9e73537a1a8d",
      "tree": "96f1a4d96d6aa3be90251a93efc056e19f0ff61d",
      "parents": [
        "86c035f0d176be9cb06b1e4f2390c25701417586"
      ],
      "author": {
        "name": "Dan Egnor",
        "email": "egnor@google.com",
        "time": "Wed Jul 28 12:28:04 2010 -0700"
      },
      "committer": {
        "name": "Dan Egnor",
        "email": "egnor@google.com",
        "time": "Wed Jul 28 12:28:04 2010 -0700"
      },
      "message": "Minor changes to ContentProvider javadoc to improve consistency.\n\nChange-Id: I710f618c94ffd5d6368ef04a39ac08f675bec11b\n"
    },
    {
      "commit": "7e397842d53a4242a019daa4b234910273121c30",
      "tree": "5da609e102427e2720364965c4d4ac4b2deabefb",
      "parents": [
        "5587bb7e375c17c1320918e6f473625af1f5e5ac"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Jul 28 10:24:39 2010 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Jul 28 12:02:57 2010 -0700"
      },
      "message": "Reduce memory usage by the MP4 file writer\n- Don\u0027t store timestamp for each output sample\n- Don\u0027t store timestamp for statistical data collection if the collection of statistical data is not requested\n\nTODO:\n1. Reduce CPU load by elimnating the list cost associated with List.size() call.\n\nChange-Id: I590bc17176596a65952c982574b82ee3b15b7d1c\n"
    },
    {
      "commit": "5587bb7e375c17c1320918e6f473625af1f5e5ac",
      "tree": "d168206181d11cb0f849473a345892cd94d2a088",
      "parents": [
        "0c39b6c65bcb96ed6438c7d792a67708409d8f0f",
        "63299c03875f414ff6d5867fbca9a7b11699a644"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Jul 28 11:58:12 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 28 11:58:12 2010 -0700"
      },
      "message": "Merge \"Interleave the audio and video by default - default interleave duration is set to 1 second\" into gingerbread"
    }
  ],
  "next": "63299c03875f414ff6d5867fbca9a7b11699a644"
}
