)]}'
{
  "log": [
    {
      "commit": "dc5fa1859d03ecca36fc6be2fed7bbd4ba70b51f",
      "tree": "a538a004f56db8d8c9430d6e008d5cdcc90d0f31",
      "parents": [
        "aac214800b518259306960ff9cc90de65d095398",
        "133dc2d7aecc68990c363c861716b134910a4ced"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Feb 24 15:38:07 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Feb 24 15:38:07 2012 -0800"
      },
      "message": "am 133dc2d7: Merge \"Fix issue #6048808: sometimes auto-correct is inactive\" into ics-mr1\n\n* commit \u0027133dc2d7aecc68990c363c861716b134910a4ced\u0027:\n  Fix issue #6048808: sometimes auto-correct is inactive\n"
    },
    {
      "commit": "7663d80f6b6fd6ca7a736c3802013a09c0abdeb9",
      "tree": "266fa968bd0d82616ff8d83e5f183a0ba6431cc9",
      "parents": [
        "566328a2a5fcd8c40fc67d8974d6df0df48b0056"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Feb 24 13:08:49 2012 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Feb 24 13:18:23 2012 -0800"
      },
      "message": "Fix issue #6048808: sometimes auto-correct is inactive\n\nMy previous change to speed up the time the IME is dismissed was\nfundamentally flawed.  That change basically switched the order\nthe application called the input method manager service from doing\nstartInput() and then windowGainedFocus(), to first windowGainedFocus()\nand then startInput().\n\nThe problem is that the service relies on startInput() being done\nfirst, since this is the mechanism to set up the new input focus,\nand windowGainedFocus() is just updating the IME visibility state\nafter that is done.  However, by doing the startInput() first, that\nmeans in the case where we are going to hide the IME we must first\nwait for the IME to re-initialize editing on whatever input has\nfocus in the new window.\n\nTo address this, the change here tries to find a half-way point\nbetween the two.  We now do startInput() after windowGainedFocus()\nonly when this will result in the window being hidden.\n\nIt is not as easy as that, though, because these are calls on to\nthe system service from the application.  So being able to do that\nmeant a fair amount of re-arranging of this part of the protocol\nwith the service.  Now windowGainedFocus() is called with all of\nthe information also needed for startInput(), and takes care of\nperforming both operations.  The client-side code is correspondingly\nrearranged so that the guts of it where startInput() is called can\ninstead call the windowGainedFocus() entry if appropriate.\n\nSo...  in theory this is safer than the previous change, since it\nshould not be impacting the behavior as much.  In practice, however,\nwe are touching and re-arranging a lot more code, and \"should\" is\nnot a promise.\n\nChange-Id: Icb58bef75ef4bf9979f3e2ba88cea20db2e2c3fb\n"
    },
    {
      "commit": "f08beab2d10bda159722aea6b01bf4320cff6480",
      "tree": "635252badb8a88c14539c38cbb48990935d5dc11",
      "parents": [
        "f3d94b4425615c08c3f9891726f0753142ce54de",
        "01011c3d7ce4f76c1a76b33a04fc63da784ddbea"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Feb 21 14:57:46 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Feb 21 14:57:46 2012 -0800"
      },
      "message": "am 01011c3d: Fix issue #6037252: Screen shifts after all apps are upgraded\n\n* commit \u002701011c3d7ce4f76c1a76b33a04fc63da784ddbea\u0027:\n  Fix issue #6037252: Screen shifts after all apps are upgraded\n"
    },
    {
      "commit": "01011c3d7ce4f76c1a76b33a04fc63da784ddbea",
      "tree": "8dcaf6f1e6ef5426631d2d88513fbd1218e8178b",
      "parents": [
        "2d559b5311be1cd909e5a445afe75a840688b822"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Feb 21 13:54:21 2012 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Feb 21 13:54:21 2012 -0800"
      },
      "message": "Fix issue #6037252: Screen shifts after all apps are upgraded\n\nTwo things: (1) make sure the boot message is always positioned within\nthe entire unrestricted display, and (2) allow the dim background to go\non top of the nav bar when being used for the boot message (this latter\nis really a hack that should be more generally fixed in the future).\n\nChange-Id: I7261b044eb802a39cadff931b50a679ff18781d6\n"
    },
    {
      "commit": "7874efeb138204230475720d0b97f2d199a21502",
      "tree": "d31f7d2512c4c450659254a4ffa51f9214de8738",
      "parents": [
        "e3776a47dbebc8195edeac39f7f4ce3e08b59bec",
        "c8711ca7eb962072ccd6175be3cfa861195ba6cd"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Tue Feb 14 13:41:47 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Feb 14 13:41:47 2012 -0800"
      },
      "message": "am c8711ca7: Merge \"Stop using shared DUN APN when tethering stops.\" into ics-mr1\n\n* commit \u0027c8711ca7eb962072ccd6175be3cfa861195ba6cd\u0027:\n  Stop using shared DUN APN when tethering stops.\n"
    },
    {
      "commit": "b9be8eff222d9b70079dd53d0d61de229d8d7914",
      "tree": "8c8ebb14a3df4ee22a768128309752eb092fa8dd",
      "parents": [
        "252c64f9c3e2e357f8687e18d8a066cc1cdb8c15",
        "ffc89899652f5c815b6d156f55a909001420891e"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@google.com",
        "time": "Tue Feb 14 12:37:16 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Feb 14 12:37:16 2012 -0800"
      },
      "message": "am ffc89899: Merge \"Don\\\u0027t pulse LED on new notification unless notification has LED flag set\" into ics-mr1\n\n* commit \u0027ffc89899652f5c815b6d156f55a909001420891e\u0027:\n  Don\u0027t pulse LED on new notification unless notification has LED flag set\n"
    },
    {
      "commit": "2384386f3132839bec0cf460a3f19d068ad28507",
      "tree": "c2a9ee697b4342f8bacd6dd32dd1b323261f1fe7",
      "parents": [
        "ffc89899652f5c815b6d156f55a909001420891e"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Mon Feb 13 11:39:04 2012 -0800"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Tue Feb 14 11:44:09 2012 -0800"
      },
      "message": "Stop using shared DUN APN when tethering stops.\n\nBackported from master, including a bug fix and a cdma enhancement.\n\nEven if other people are sharing the connection (ie, carrier wants\ndefault and tethered traffic on the same APN) stop using a carrier-\ndescribed APN when the tethering stops.\n\nbug:5972599\nChange-Id: I25e4831855e6b62c0c3ab3a6f4d4846aaee6ac50\n"
    },
    {
      "commit": "ece18efb35f762d2f7d2e802be29464ec6abdfbf",
      "tree": "3ef4fa0c0d155e3b6e0eb77a8d40f2f3aa65cb9d",
      "parents": [
        "08eb7dd630a2de8dd51a988a747da26ff9d3f8fb"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@google.com",
        "time": "Mon Feb 13 20:42:19 2012 -0800"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@google.com",
        "time": "Mon Feb 13 20:42:19 2012 -0800"
      },
      "message": "Don\u0027t pulse LED on new notification unless notification has LED flag set\n\nBug: 6006131\n\nChange-Id: I719c7d68e310bfaca227f6286159b3993784926b\nSigned-off-by: Mike Lockwood \u003clockwood@google.com\u003e\n"
    },
    {
      "commit": "812c2ff6312b25b9539399f38967f8a6ff40b733",
      "tree": "a4f608e58bb44add010b290e0ad78cce536fc465",
      "parents": [
        "8b6d7b063b5a94b59b4a1132763f4644ee1d8545",
        "197fe26940022be75384f4038dd789f446d33122"
      ],
      "author": {
        "name": "Wink Saville",
        "email": "wink@google.com",
        "time": "Fri Feb 10 15:14:40 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Feb 10 15:14:40 2012 -0800"
      },
      "message": "am 197fe269: Merge \"Add OEM specific USB mode enumeration based on ro.bootmode property\" into ics-mr1\n\n* commit \u0027197fe26940022be75384f4038dd789f446d33122\u0027:\n  Add OEM specific USB mode enumeration based on ro.bootmode property\n"
    },
    {
      "commit": "afd8f1820eeee21e960be44b22113dc2cecacf98",
      "tree": "4de6b15d8bb53b5da1fecb172522e565e2c7319a",
      "parents": [
        "744c5b0bdee6a26e2dc7e740a695d53c32104326"
      ],
      "author": {
        "name": "Kazuhiro Ondo",
        "email": "kazuhiro.ondo@motorola.com",
        "time": "Mon Feb 06 17:35:50 2012 -0600"
      },
      "committer": {
        "name": "Wink Saville",
        "email": "wink@google.com",
        "time": "Fri Feb 10 12:29:12 2012 -0800"
      },
      "message": "Add OEM specific USB mode enumeration based on ro.bootmode property\n\nThis patch is adding a capability so that OEM can override USB mode\nin case the device is boot up with OEM specific mode. (i.e. modem\ndebug, factory test etc.)\n\nBug:5964042\nChange-Id: Ic8e23d302563ce71eedb74ce94cca8c65838a4f7\n"
    },
    {
      "commit": "109533519153307b10e2b3ae327ca4b4cd0c75d3",
      "tree": "c9234597634d3c6a52dd76a38779779cd8f35908",
      "parents": [
        "95306d85005f165e10a25ad45cadadec6e1f6a31",
        "44f64c965776ae65ff85ef8c37afb7e14483bdf2"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Wed Jan 25 11:30:39 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jan 25 11:30:39 2012 -0800"
      },
      "message": "am 44f64c96: Merge \"Filter our v6 address from tethering dns.\" into ics-mr1\n\n* commit \u002744f64c965776ae65ff85ef8c37afb7e14483bdf2\u0027:\n  Filter our v6 address from tethering dns.\n"
    },
    {
      "commit": "03d58bc656f64f98f36462ac18dca16107da5a57",
      "tree": "a11ef82283de783e62756b85a40f726b36798e3f",
      "parents": [
        "185c0ef7e4aaa4bb978a6eb5c93c569585a07f56"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Mon Dec 19 16:59:31 2011 -0800"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Tue Jan 24 16:44:50 2012 -0800"
      },
      "message": "Filter our v6 address from tethering dns.\n\nDon\u0027t support IPv6 yet, and the tools crash when they see one, so\nfilter them out.\n\nbug:5913888\nChange-Id: Id7096aa70da4e3cc8e4702b0b489c0228a100db9\n"
    },
    {
      "commit": "535b0264a4cfa790e549bd9cd09980788f1375f4",
      "tree": "a04b81cdcd0917f4131a15eae7df11cf1cd649c9",
      "parents": [
        "dd347d515d4a4e42b2aba89a8e471392026b7824",
        "7eeaf3f07aa6fb10639d9f96c1367eb98c3e8839"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jan 24 11:51:50 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jan 24 11:51:50 2012 -0800"
      },
      "message": "am 7eeaf3f0: Merge \"AudioFlinger: refine mixer sleep time logic\" into ics-mr1\n\n* commit \u00277eeaf3f07aa6fb10639d9f96c1367eb98c3e8839\u0027:\n  AudioFlinger: refine mixer sleep time logic\n"
    },
    {
      "commit": "dd347d515d4a4e42b2aba89a8e471392026b7824",
      "tree": "9c66ad628619c851ad9ca802cb2ba61b446d771b",
      "parents": [
        "67cda1a0ec2f443293d0ada7c49708ff4a11c8c7",
        "41773d46556aa47d4322ff89fdaf7d1345c2d1f2"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jan 24 11:51:47 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jan 24 11:51:47 2012 -0800"
      },
      "message": "am 41773d46: Merge \"DO NOT MERGE Revert \"Revert \"AudioFlinger: mix track only when really ready (2)\"\"\" into ics-mr1\n\n* commit \u002741773d46556aa47d4322ff89fdaf7d1345c2d1f2\u0027:\n  DO NOT MERGE Revert \"Revert \"AudioFlinger: mix track only when really ready (2)\"\"\n"
    },
    {
      "commit": "7eeaf3f07aa6fb10639d9f96c1367eb98c3e8839",
      "tree": "1ee60909ec62718656be769b458fd14ad8272079",
      "parents": [
        "41773d46556aa47d4322ff89fdaf7d1345c2d1f2",
        "0609231f4fa415cc8198d706ee1c6b5f5e911023"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jan 24 11:49:39 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 24 11:49:39 2012 -0800"
      },
      "message": "Merge \"AudioFlinger: refine mixer sleep time logic\" into ics-mr1"
    },
    {
      "commit": "41773d46556aa47d4322ff89fdaf7d1345c2d1f2",
      "tree": "9a2dd281a4b2c19acbcc2d9cbfdbb6adec8db88e",
      "parents": [
        "f449ea9e96162698f4ec6d62c70750eb50744da7",
        "0b0896555827d2a5a9c8240f27dd94e8933dd778"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jan 24 11:49:16 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 24 11:49:16 2012 -0800"
      },
      "message": "Merge \"DO NOT MERGE Revert \"Revert \"AudioFlinger: mix track only when really ready (2)\"\"\" into ics-mr1"
    },
    {
      "commit": "67cda1a0ec2f443293d0ada7c49708ff4a11c8c7",
      "tree": "c1754e9e5bbdedd3b905b3269d7d1bdd8a9ebc76",
      "parents": [
        "a5853595165a6395ca41bbc17a3dd88e12259ad1",
        "f449ea9e96162698f4ec6d62c70750eb50744da7"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Tue Jan 24 11:42:21 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jan 24 11:42:21 2012 -0800"
      },
      "message": "am f449ea9e: Merge \"Use the carrier-given dns addrs for tethering.\" into ics-mr1\n\n* commit \u0027f449ea9e96162698f4ec6d62c70750eb50744da7\u0027:\n  Use the carrier-given dns addrs for tethering.\n"
    },
    {
      "commit": "f449ea9e96162698f4ec6d62c70750eb50744da7",
      "tree": "cf7ef3cfd707477e23ee79937d295ed83afa8be1",
      "parents": [
        "47163685eb90f9520e7ae0ac0984b4e1535e8e5b",
        "7df80fa4e8a017243f26e287c23b7c9092a391fd"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Tue Jan 24 11:40:19 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 24 11:40:19 2012 -0800"
      },
      "message": "Merge \"Use the carrier-given dns addrs for tethering.\" into ics-mr1"
    },
    {
      "commit": "a5853595165a6395ca41bbc17a3dd88e12259ad1",
      "tree": "c68b544edbb3b3f747f3d5de3045d1b1a61e77c1",
      "parents": [
        "29cd79c7b0fecd2753fc27405794c0d5b5314302",
        "47163685eb90f9520e7ae0ac0984b4e1535e8e5b"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Jan 24 11:37:02 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jan 24 11:37:02 2012 -0800"
      },
      "message": "am 47163685: Merge \"Another attempt at issue #5823276: home repaints after full-screen app is exited\" into ics-mr1\n\n* commit \u002747163685eb90f9520e7ae0ac0984b4e1535e8e5b\u0027:\n  Another attempt at issue #5823276: home repaints after full-screen app is exited\n"
    },
    {
      "commit": "47163685eb90f9520e7ae0ac0984b4e1535e8e5b",
      "tree": "559bf70973aa1b8be1106d6243553893aa43b4f0",
      "parents": [
        "c986d6f01b00dd760ba1650918baadd24a6dc838",
        "b7ff51bde92b76757a002bb5b1889f5790986513"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Jan 24 11:33:15 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 24 11:33:15 2012 -0800"
      },
      "message": "Merge \"Another attempt at issue #5823276: home repaints after full-screen app is exited\" into ics-mr1"
    },
    {
      "commit": "b7ff51bde92b76757a002bb5b1889f5790986513",
      "tree": "909e96458330c2b4203af28ee6b5bf6244a7e567",
      "parents": [
        "a486a53a02392c5d5de5a3d0856433a25e56b110"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Jan 23 19:15:27 2012 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Jan 23 19:15:27 2012 -0800"
      },
      "message": "Another attempt at issue #5823276: home repaints after full-screen app is exited\n\nThis is between the two previous attempts.  I returned the part from the\noriginal that was breaking gallery, but have some new code to detect when\nsomething about the window params has changed that would require a\nlayout pass to make sure we still do a layout then, even if the window is\nnot currently visible.\n\nChange-Id: I07745e1f66022583e3076b84cc8bbe8bd2acd48f\n"
    },
    {
      "commit": "0609231f4fa415cc8198d706ee1c6b5f5e911023",
      "tree": "d49c9a55196ca8e8517dfee39246dc222e38b20d",
      "parents": [
        "0b0896555827d2a5a9c8240f27dd94e8933dd778"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Jan 23 18:56:59 2012 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Jan 23 18:56:59 2012 -0800"
      },
      "message": "AudioFlinger: refine mixer sleep time logic\n\nWhen an AudioTrack is in underrun state, the AudioFlinger mixer will\nsleep for a short period of time to give the app a chance to fill the\nAudioTrack buffer. If the AudioTrack is still not ready during next mixing round,\nthe mixer will proceed with other tracks.\n\nIf an application keeps a steady underrun condition, the AudioFlinger mixer will\nalternate between ready and not ready states. In the longer term this will cause the\naudio HAL to underrun.\nThere is a mechanism to reduce the sleep period if the mixer is not ready several times in a\nrow but this mechanism is defeated by the alternating ready/not ready conditions.\n\nThe fix consists in only increasing sleep time if the mixer is ready for at least two\nconsecutive times.\n\nIssue 5904527.\n\nChange-Id: Id0139bca9be8c4e425ec6d428515c4d8f718e8c9\n"
    },
    {
      "commit": "0b0896555827d2a5a9c8240f27dd94e8933dd778",
      "tree": "1c5913b524ed1acdc5648df5f209d378120082e3",
      "parents": [
        "44760b106a4bafcf83fb356bf91683db40e0e5a2"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Jan 23 18:35:10 2012 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Jan 23 18:37:07 2012 -0800"
      },
      "message": "DO NOT MERGE Revert \"Revert \"AudioFlinger: mix track only when really ready (2)\"\"\n\nThis reverts commit b918035d34422a2041b6ec8c09c566bb93345b40.\n\nChange-Id: I093bcfa56ad54a080b930208b6b79169d33581fb\n"
    },
    {
      "commit": "9f080e2a5bc6a268934e32201c69ea8a86900396",
      "tree": "eddb7d732c1a8e441e1c9661eedb612faf98444e",
      "parents": [
        "feb1d988c8ea1a67a4edbf1914ea41ea73519e12",
        "44760b106a4bafcf83fb356bf91683db40e0e5a2"
      ],
      "author": {
        "name": "Jim Miller",
        "email": "jaggies@google.com",
        "time": "Mon Jan 23 15:51:23 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jan 23 15:51:23 2012 -0800"
      },
      "message": "am 44760b10: Merge \"Revert \"Fix 5797764: Increase lock screen\\\u0027s thread priority\"\" into ics-mr1\n\n* commit \u002744760b106a4bafcf83fb356bf91683db40e0e5a2\u0027:\n  Revert \"Fix 5797764: Increase lock screen\u0027s thread priority\"\n"
    },
    {
      "commit": "44760b106a4bafcf83fb356bf91683db40e0e5a2",
      "tree": "95bd104768afda39f48084ed5cdf324487a40ca5",
      "parents": [
        "fee5a860a8355cda071ff23644e943414ba7f65d",
        "54dbbce1c3cd3b534b0bf7cb15c85f966ed029b7"
      ],
      "author": {
        "name": "Jim Miller",
        "email": "jaggies@google.com",
        "time": "Mon Jan 23 15:49:32 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jan 23 15:49:32 2012 -0800"
      },
      "message": "Merge \"Revert \"Fix 5797764: Increase lock screen\u0027s thread priority\"\" into ics-mr1"
    },
    {
      "commit": "54dbbce1c3cd3b534b0bf7cb15c85f966ed029b7",
      "tree": "fda89338361f2ebbc5bc9a8fa7333b54466d1cd2",
      "parents": [
        "6d6a70a33746ef5147ab146f1802f0db424dd2f1"
      ],
      "author": {
        "name": "Jim Miller",
        "email": "jaggies@google.com",
        "time": "Mon Jan 23 15:24:42 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jan 23 15:24:42 2012 -0800"
      },
      "message": "Revert \"Fix 5797764: Increase lock screen\u0027s thread priority\"\n\nThis reverts commit 6d6a70a33746ef5147ab146f1802f0db424dd2f1\n\nThis doesn\u0027t appear to have a measurable impact for this issue."
    },
    {
      "commit": "feb1d988c8ea1a67a4edbf1914ea41ea73519e12",
      "tree": "1ec8d457cd2b0a1e7447ba25770624e7c4b3bc67",
      "parents": [
        "add87f99d9ece26c776abe40297e9a49e08932d9",
        "fee5a860a8355cda071ff23644e943414ba7f65d"
      ],
      "author": {
        "name": "Justin Ho",
        "email": "justinho@google.com",
        "time": "Mon Jan 23 15:13:19 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jan 23 15:13:19 2012 -0800"
      },
      "message": "am fee5a860: Merge \"DO NOT MERGE Revert \"AudioFlinger: mix track only when really ready (2)\"\" into ics-mr1\n\n* commit \u0027fee5a860a8355cda071ff23644e943414ba7f65d\u0027:\n  DO NOT MERGE Revert \"AudioFlinger: mix track only when really ready (2)\"\n"
    },
    {
      "commit": "b918035d34422a2041b6ec8c09c566bb93345b40",
      "tree": "316213e4d9306e8f13656664f362cf6295f89c91",
      "parents": [
        "eaa11a723150f1ea79446d7ba4bf77eb47b73337"
      ],
      "author": {
        "name": "Justin Ho",
        "email": "justinho@google.com",
        "time": "Mon Jan 23 14:01:15 2012 -0800"
      },
      "committer": {
        "name": "Justin Ho",
        "email": "justinho@google.com",
        "time": "Mon Jan 23 15:02:41 2012 -0800"
      },
      "message": "DO NOT MERGE Revert \"AudioFlinger: mix track only when really ready (2)\"\n\nThis reverts commit 71c4496a9757438afd30b4404824f296f6158a49.\n\nChange-Id: Iff10c49ea728bb10023ddeb50a3b708db770fff2\n"
    },
    {
      "commit": "7df80fa4e8a017243f26e287c23b7c9092a391fd",
      "tree": "777abb518c32c4be2f65b75150edad99b1df96a7",
      "parents": [
        "5e5b57aef29b33d03965b4dc370cde9a39220adc"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Fri Dec 09 15:36:50 2011 -0800"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Mon Jan 23 11:29:37 2012 -0800"
      },
      "message": "Use the carrier-given dns addrs for tethering.\n\nThis fixes a complaint from carriers (that we used 8.8.8.8), but also\nfixes the case where there is only room for one live radio\nconnection: the secondary connection (tethering) doesn\u0027t have a\ndefault route to prevent on-device traffic from slipping out on the\ntethering connection, but tethered dns is proxied through dnsmasq, so\nit is appearing as on-device traffic and is unroutable.  By switching\nto the carrier-indicated dns servers we can use the host-routes\nalready set for those and kill two bugs with one fix.\n\nbug:5898904\nChange-Id: Ida8777687994f353b2d4f2c7db5d6ea4b6ac3882\n"
    },
    {
      "commit": "b1c7785c1110e171d3dd3deb259b1caeed0b9da6",
      "tree": "a296b36eb41e30aae9cc7b5ee4ad0e6c95f70279",
      "parents": [
        "e46f869629ef27afb149c771e69dbbefe1135f33",
        "eaa11a723150f1ea79446d7ba4bf77eb47b73337"
      ],
      "author": {
        "name": "Jim Miller",
        "email": "jaggies@google.com",
        "time": "Fri Jan 20 15:26:42 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jan 20 15:26:42 2012 -0800"
      },
      "message": "am eaa11a72: Merge \"Fix 5797764: Increase lock screen\\\u0027s thread priority\" into ics-mr1\n\n* commit \u0027eaa11a723150f1ea79446d7ba4bf77eb47b73337\u0027:\n  Fix 5797764: Increase lock screen\u0027s thread priority\n"
    },
    {
      "commit": "eaa11a723150f1ea79446d7ba4bf77eb47b73337",
      "tree": "65340e7a9715009d887cb013c705e3eaae2f7873",
      "parents": [
        "b09f6f96e3583da320b69486869bc98fd463735e",
        "6d6a70a33746ef5147ab146f1802f0db424dd2f1"
      ],
      "author": {
        "name": "Jim Miller",
        "email": "jaggies@google.com",
        "time": "Fri Jan 20 15:24:20 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 20 15:24:20 2012 -0800"
      },
      "message": "Merge \"Fix 5797764: Increase lock screen\u0027s thread priority\" into ics-mr1"
    },
    {
      "commit": "6d6a70a33746ef5147ab146f1802f0db424dd2f1",
      "tree": "415cc2c4d78a70f8caf3300f3819d8f426e31a1f",
      "parents": [
        "ff321d496a6a07fc667112ecfe4d9a107d44147b"
      ],
      "author": {
        "name": "Jim Miller",
        "email": "jaggies@google.com",
        "time": "Fri Jan 20 14:35:56 2012 -0800"
      },
      "committer": {
        "name": "Jim Miller",
        "email": "jaggies@google.com",
        "time": "Fri Jan 20 14:41:55 2012 -0800"
      },
      "message": "Fix 5797764: Increase lock screen\u0027s thread priority\n\nThis increases lock screen\u0027s thread priority from THREAD_PRIORITY_FOREGROUND\nto THREAD_PRIORITY_DISPLAY to ensure it runs before other activities that\nmight stall lock screen when the screen turns on.\n\nChange-Id: I14cf9f3f5c092817bc6cf2d0a254001a5d34f744\n"
    },
    {
      "commit": "892d11f4925170543f166c38e594c97577b4c034",
      "tree": "020da1d4554e3675d95ddc847b903f8651cd6896",
      "parents": [
        "a64f899fa6159a8839a769d3f107f6c502da58c8",
        "1bae80668cc1d12bb4a4b93bce1960b2601de131"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jan 20 12:03:47 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jan 20 12:03:47 2012 -0800"
      },
      "message": "am 1bae8066: Merge \"Fix issue #5823276 again: home repaints after full-screen app is exited\" into ics-mr1\n\n* commit \u00271bae80668cc1d12bb4a4b93bce1960b2601de131\u0027:\n  Fix issue #5823276 again: home repaints after full-screen app is exited\n"
    },
    {
      "commit": "1bae80668cc1d12bb4a4b93bce1960b2601de131",
      "tree": "31682135168927976967c976f25d2211fe701703",
      "parents": [
        "4d3161f379195302b720e120c5e6b65a0adfaf8c",
        "cfbf7dedaddd825b608e87d3dcf46adf80a46976"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jan 20 12:01:51 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 20 12:01:51 2012 -0800"
      },
      "message": "Merge \"Fix issue #5823276 again: home repaints after full-screen app is exited\" into ics-mr1"
    },
    {
      "commit": "06a0fb953ff1c544bdbef2618d20ec1ba551eb6e",
      "tree": "8b34013b112220c0df8686547cfe0ead7c2a63c1",
      "parents": [
        "288cde7f0a17f47f7071168f442d19f703947cc9",
        "5d58eb06bcc8671bae72fb2389a9929e106131cc"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Jan 20 11:26:43 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jan 20 11:26:43 2012 -0800"
      },
      "message": "am 5d58eb06: Merge \"Fix a few memory leaks in the input dispatcher.  (DO NOT MERGE)\" into ics-mr1\n\n* commit \u00275d58eb06bcc8671bae72fb2389a9929e106131cc\u0027:\n  Fix a few memory leaks in the input dispatcher.  (DO NOT MERGE)\n"
    },
    {
      "commit": "5d58eb06bcc8671bae72fb2389a9929e106131cc",
      "tree": "a071eaa43a1b9156ce7de30e5aff51a1cb0a947e",
      "parents": [
        "820b45c0a21980a43532b9fb9823f8aa08c64a15",
        "9f63f121bdc0db64f9dd2be9db792a8698bb0d67"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Jan 20 11:24:01 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 20 11:24:01 2012 -0800"
      },
      "message": "Merge \"Fix a few memory leaks in the input dispatcher.  (DO NOT MERGE)\" into ics-mr1"
    },
    {
      "commit": "cfbf7dedaddd825b608e87d3dcf46adf80a46976",
      "tree": "75601703069be05b1da575fdb95be34ef2fd8c52",
      "parents": [
        "820b45c0a21980a43532b9fb9823f8aa08c64a15"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jan 12 14:05:03 2012 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jan 20 11:01:01 2012 -0800"
      },
      "message": "Fix issue #5823276 again: home repaints after full-screen app is exited\n\nDon\u0027t consider a window as a candidate for the top fullscreen window\nif it is not going to be a candiate for layout.\n\nThis fix does not include the change to ignore app tokens that are\nhidden.  This causes problems in some dialogs that stay hidden until\ntheir app is ready to display, but need to perform a series of relayouts\nduring that time to get to the right size.  Dropping this part of\nthe change still (mostly?) seems to allow us to avoid the bad states.\n\nChange-Id: Ic052cb1499d3287f47e9ffeac5cd2470ee5a308c\n"
    },
    {
      "commit": "ee567e08d973c0fad214889e8d980f9bfb535b34",
      "tree": "bfdb82ec6aa8f362f74e8e2715814afdb2f15468",
      "parents": [
        "45470559cd4a499fd5d38cf708f0b531dc081fed",
        "c3c36b4fe5863c8ac0ea5470be633e8fade9c483"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Jan 19 17:28:34 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jan 19 17:28:34 2012 -0800"
      },
      "message": "am c3c36b4f: am 9d25b82d: Merge \"Rename LOG_ASSERT to ALOG_ASSERT\"\n\n* commit \u0027c3c36b4fe5863c8ac0ea5470be633e8fade9c483\u0027:\n  Rename LOG_ASSERT to ALOG_ASSERT\n"
    },
    {
      "commit": "45470559cd4a499fd5d38cf708f0b531dc081fed",
      "tree": "e3ee11ad430ae05d705d9f1e0d1c2c32f1a9a3ea",
      "parents": [
        "db2b39300a8f763cf2d0c9808deb86db87d5492c",
        "12b7da69957ef894ce5134989e38479c64308ea1"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Jan 19 17:28:30 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jan 19 17:28:30 2012 -0800"
      },
      "message": "am 12b7da69: am 6df477be: Merge \"Rename (IF_)LOGE(_IF) to (IF_)ALOGE(_IF)\"\n\n* commit \u002712b7da69957ef894ce5134989e38479c64308ea1\u0027:\n  Rename (IF_)LOGE(_IF) to (IF_)ALOGE(_IF)\n"
    },
    {
      "commit": "db2b39300a8f763cf2d0c9808deb86db87d5492c",
      "tree": "fce1cbeaacc788437bfba6ae0655e93fd74c9271",
      "parents": [
        "dde686e2bdf7ea679dae4fd4edbf94c71802dc28",
        "f3f650db96d40014a0203393c585c368b0dd7a9a"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Jan 19 17:28:26 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jan 19 17:28:26 2012 -0800"
      },
      "message": "am f3f650db: am a826f9e2: Merge \"Rename (IF_)LOGW(_IF) to (IF_)ALOGW(_IF)\"\n\n* commit \u0027f3f650db96d40014a0203393c585c368b0dd7a9a\u0027:\n  Rename (IF_)LOGW(_IF) to (IF_)ALOGW(_IF)\n"
    },
    {
      "commit": "dde686e2bdf7ea679dae4fd4edbf94c71802dc28",
      "tree": "6a2ea7e5a7d5a010adb25bf920dc41dee8243da8",
      "parents": [
        "a1e873975704814416ee4d5023bf0740ec195ec0",
        "08d3c6e5ba5c3e5fcc386b07efa709325d45b9ff"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Jan 19 17:28:22 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jan 19 17:28:22 2012 -0800"
      },
      "message": "am 08d3c6e5: am 4f367f33: Merge \"Rename (IF_)LOGI(_IF) to (IF_)ALOGI(_IF)\"\n\n* commit \u002708d3c6e5ba5c3e5fcc386b07efa709325d45b9ff\u0027:\n  Rename (IF_)LOGI(_IF) to (IF_)ALOGI(_IF)\n"
    },
    {
      "commit": "a1e873975704814416ee4d5023bf0740ec195ec0",
      "tree": "ae84d90174818e7a15741507783414722a159695",
      "parents": [
        "d6b5584b67f8a2f3d8ea20d748652673d5761e33",
        "7ae84204c14b4abff70fcc19c3c33de2591df34b"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Jan 19 17:28:18 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jan 19 17:28:18 2012 -0800"
      },
      "message": "am 7ae84204: am ba7f0d2a: Merge \"Rename (IF_)LOGD(_IF) to (IF_)ALOGD(_IF)\"\n\n* commit \u00277ae84204c14b4abff70fcc19c3c33de2591df34b\u0027:\n  Rename (IF_)LOGD(_IF) to (IF_)ALOGD(_IF)\n"
    },
    {
      "commit": "c3c36b4fe5863c8ac0ea5470be633e8fade9c483",
      "tree": "1514a87b96fc32f01298f5438d32acc54f5d57c6",
      "parents": [
        "12b7da69957ef894ce5134989e38479c64308ea1",
        "9d25b82d280c2d979d500e7da4447148f32f820b"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Jan 19 17:26:16 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jan 19 17:26:16 2012 -0800"
      },
      "message": "am 9d25b82d: Merge \"Rename LOG_ASSERT to ALOG_ASSERT\"\n\n* commit \u00279d25b82d280c2d979d500e7da4447148f32f820b\u0027:\n  Rename LOG_ASSERT to ALOG_ASSERT\n"
    },
    {
      "commit": "12b7da69957ef894ce5134989e38479c64308ea1",
      "tree": "fa6d3798fddee16170c0c49d2b986c11298e8f54",
      "parents": [
        "f3f650db96d40014a0203393c585c368b0dd7a9a",
        "6df477be186233e36fc370c4d2db6c1ed928a740"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Jan 19 17:26:12 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jan 19 17:26:12 2012 -0800"
      },
      "message": "am 6df477be: Merge \"Rename (IF_)LOGE(_IF) to (IF_)ALOGE(_IF)\"\n\n* commit \u00276df477be186233e36fc370c4d2db6c1ed928a740\u0027:\n  Rename (IF_)LOGE(_IF) to (IF_)ALOGE(_IF)\n"
    },
    {
      "commit": "f3f650db96d40014a0203393c585c368b0dd7a9a",
      "tree": "7a70859dd347a8240ee02e950ea2eb1a1dad76e5",
      "parents": [
        "08d3c6e5ba5c3e5fcc386b07efa709325d45b9ff",
        "a826f9e2c4f6329d8d48c927f6e942e78ffaf92f"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Jan 19 17:26:08 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jan 19 17:26:08 2012 -0800"
      },
      "message": "am a826f9e2: Merge \"Rename (IF_)LOGW(_IF) to (IF_)ALOGW(_IF)\"\n\n* commit \u0027a826f9e2c4f6329d8d48c927f6e942e78ffaf92f\u0027:\n  Rename (IF_)LOGW(_IF) to (IF_)ALOGW(_IF)\n"
    },
    {
      "commit": "08d3c6e5ba5c3e5fcc386b07efa709325d45b9ff",
      "tree": "5aab08b8e1ace52c002db2c56c1c16607f684af3",
      "parents": [
        "7ae84204c14b4abff70fcc19c3c33de2591df34b",
        "4f367f3387887c538c81c34cc8becaea6fa5e430"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Jan 19 17:26:03 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jan 19 17:26:03 2012 -0800"
      },
      "message": "am 4f367f33: Merge \"Rename (IF_)LOGI(_IF) to (IF_)ALOGI(_IF)\"\n\n* commit \u00274f367f3387887c538c81c34cc8becaea6fa5e430\u0027:\n  Rename (IF_)LOGI(_IF) to (IF_)ALOGI(_IF)\n"
    },
    {
      "commit": "7ae84204c14b4abff70fcc19c3c33de2591df34b",
      "tree": "f56a252b78e727b92beec723899454b0e49edb22",
      "parents": [
        "97aa8ee81198234aedffceaf71ad216b96323393",
        "ba7f0d2a03643ce429421b81febf18fd50473070"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Jan 19 17:25:58 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jan 19 17:25:58 2012 -0800"
      },
      "message": "am ba7f0d2a: Merge \"Rename (IF_)LOGD(_IF) to (IF_)ALOGD(_IF)\"\n\n* commit \u0027ba7f0d2a03643ce429421b81febf18fd50473070\u0027:\n  Rename (IF_)LOGD(_IF) to (IF_)ALOGD(_IF)\n"
    },
    {
      "commit": "d6b5584b67f8a2f3d8ea20d748652673d5761e33",
      "tree": "e5ada3e1f246c08651a7f20738ffa5aeee954ab8",
      "parents": [
        "fd266b36826aa6dd8cd3fa00c159a094423899fb",
        "97aa8ee81198234aedffceaf71ad216b96323393"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Jan 19 17:20:58 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jan 19 17:20:58 2012 -0800"
      },
      "message": "am 97aa8ee8: Merge ee4618bc\n\n* commit \u002797aa8ee81198234aedffceaf71ad216b96323393\u0027:\n  Rename (IF_)LOGV(_IF) to (IF_)ALOGV(_IF)\n"
    },
    {
      "commit": "97aa8ee81198234aedffceaf71ad216b96323393",
      "tree": "b5f311825b206befcb8b4bf35ac7b09197fd40cf",
      "parents": [
        "36b48c30adf7236b00eccf87f3b5691359526540",
        "ee4618bc4da65fdabf197874e87d2923904e7acd"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Jan 19 17:18:25 2012 -0800"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Jan 19 17:18:25 2012 -0800"
      },
      "message": "Merge ee4618bc\n\nChange-Id: Ie1dc6ad38e7c30636d80f6caef11cf6673144940\n"
    },
    {
      "commit": "170997a519ce79e93e4f6984e9663232475ce92c",
      "tree": "35cfb58116933c36a5cdad70c429bdce095ed87a",
      "parents": [
        "12310ee801553e63091ce3bda6f07a5be31a473c"
      ],
      "author": {
        "name": "Justin Ho",
        "email": "justinho@google.com",
        "time": "Thu Jan 19 13:48:18 2012 -0800"
      },
      "committer": {
        "name": "Justin Ho",
        "email": "justinho@google.com",
        "time": "Thu Jan 19 15:41:33 2012 -0800"
      },
      "message": "DO NOT MERGE Revert \"Fix issue #5823276: home repaints after full-screen app is exited\"\n\nThis reverts commit 01b02a734d2988c22b00f5df6346ad03d8bf52b6.\n\nChange-Id: I848c01fc44eb9a51ead1116b2647ed838ec1825f\n"
    },
    {
      "commit": "f68633da3ced654a9344b5c3b82f4d1c79b6bd09",
      "tree": "a3ce92223f977611f6a1ab6710901a68fad8a968",
      "parents": [
        "c6aacce37191e1cc79cfeba13b39899f59c68c3b"
      ],
      "author": {
        "name": "Steve Block",
        "email": "steveblock@google.com",
        "time": "Mon Jan 09 18:35:44 2012 +0000"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Jan 19 14:45:08 2012 -0800"
      },
      "message": "Rename LOG_ASSERT to ALOG_ASSERT\n\nChange-Id: Ie2c7ea6560656d65bad791a61996174c75677517\n"
    },
    {
      "commit": "c6aacce37191e1cc79cfeba13b39899f59c68c3b",
      "tree": "df4401aaa38914e03d5eadc82507e7c6fdcc573e",
      "parents": [
        "a51f0e707f1f3142358aa919ea60ad2842803139"
      ],
      "author": {
        "name": "Steve Block",
        "email": "steveblock@google.com",
        "time": "Fri Jan 06 19:20:56 2012 +0000"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Jan 19 14:45:03 2012 -0800"
      },
      "message": "Rename (IF_)LOGE(_IF) to (IF_)ALOGE(_IF)\n\nChange-Id: I1de629b4632a4b3187ca1a28d6416daccd35f924\n"
    },
    {
      "commit": "a51f0e707f1f3142358aa919ea60ad2842803139",
      "tree": "3a4bea403affd07f7611fe13da8cbf64a61ee3e3",
      "parents": [
        "933e85615059b85a87747da57288384541cc56da"
      ],
      "author": {
        "name": "Steve Block",
        "email": "steveblock@google.com",
        "time": "Thu Jan 05 23:22:43 2012 +0000"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Jan 19 14:44:59 2012 -0800"
      },
      "message": "Rename (IF_)LOGW(_IF) to (IF_)ALOGW(_IF)\n\nChange-Id: I8fbdfa7a7581f481968dbb65aa40f7042936d7cb\n"
    },
    {
      "commit": "933e85615059b85a87747da57288384541cc56da",
      "tree": "5475260306fb9ddb48b2c7fcfe939ed59752e900",
      "parents": [
        "1afd5bab4e0eaba8b5bc2ab5c7b556cd602cf2e7"
      ],
      "author": {
        "name": "Steve Block",
        "email": "steveblock@google.com",
        "time": "Wed Jan 04 20:05:49 2012 +0000"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Jan 19 14:44:56 2012 -0800"
      },
      "message": "Rename (IF_)LOGI(_IF) to (IF_)ALOGI(_IF)\n\nChange-Id: I26f76452ac49e2890b14d133c065493d8df0fb4a\n"
    },
    {
      "commit": "1afd5bab4e0eaba8b5bc2ab5c7b556cd602cf2e7",
      "tree": "7558b2b5d1cb5e2c9c60bd5d52cab21994caa263",
      "parents": [
        "06ade6ae1bd015e8b8ad0685847911213c93cc5b"
      ],
      "author": {
        "name": "Steve Block",
        "email": "steveblock@google.com",
        "time": "Tue Dec 20 16:23:08 2011 +0000"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Jan 19 14:44:50 2012 -0800"
      },
      "message": "Rename (IF_)LOGD(_IF) to (IF_)ALOGD(_IF)\n\nChange-Id: I44f267700356967dc51e8f85ebf457dc85cfb229\n"
    },
    {
      "commit": "06ade6ae1bd015e8b8ad0685847911213c93cc5b",
      "tree": "0fb687dcbdf125a30cdb645605b57bb847d0c7b5",
      "parents": [
        "c318bbb05e02a0080e129623ec8029d31be0d60e"
      ],
      "author": {
        "name": "Steve Block",
        "email": "steveblock@google.com",
        "time": "Thu Oct 20 11:56:00 2011 +0100"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Jan 19 14:44:31 2012 -0800"
      },
      "message": "Rename (IF_)LOGV(_IF) to (IF_)ALOGV(_IF)\n\nChange-Id: I5321ebd12e9c6248a108529e82c4e1af2a4405e3\n"
    },
    {
      "commit": "230a709285abc5dfd92f05d91a8997d52a59d3c7",
      "tree": "782118afed3a59641c740dc5a32559b80eccc3cc",
      "parents": [
        "db2e71635968f455ad4f41b2e24fb8b909c24ca0",
        "93c518e4f8abd98f87cda1712b30a5a86cfa60dd"
      ],
      "author": {
        "name": "Jim Miller",
        "email": "jaggies@google.com",
        "time": "Wed Jan 18 16:44:52 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 18 16:44:52 2012 -0800"
      },
      "message": "Merge \"Fix 5863053: Add method to lock screen immediately.\" into ics-mr1"
    },
    {
      "commit": "71c4496a9757438afd30b4404824f296f6158a49",
      "tree": "dbfa675e63db41e6f7bd554026f97fc3b158b9c2",
      "parents": [
        "3938e4fbaae132db9b4676ba26f6b3c042a6879e"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jan 17 19:20:12 2012 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jan 18 12:27:38 2012 -0800"
      },
      "message": "AudioFlinger: mix track only when really ready (2)\n\nThis problem due to the way audio buffers are mixed when\nlow power mode is active was addressed by commits 19ddf0eb\nand 8a04fe03 but only partially. As a matter of fact, when more\nthan one audio track is playing, the problem is still present.\nThis is most noticeable when playing music with screen off\nand a notification or navigation instruction is played: in this case,\nthe music or notification is likely to skip.\n\nThe fix consists in declaring the mixer ready if all active tracks\nare ready. Previous behavior was to declare ready if at least one track was\nready. To avoid that one application failing to fill the track buffer blocks other\ntracks indefinitely, this condition is respected only if the mixer was ready\nin the previous round.\n\nIssue 5799167.\n\nChange-Id: Iabd4ca08d3d45f563d9824c8a03c2c68a43ae179\n"
    },
    {
      "commit": "93c518e4f8abd98f87cda1712b30a5a86cfa60dd",
      "tree": "fd9e7459bf5a228aef50826097a2cc714b8a6013",
      "parents": [
        "ff321d496a6a07fc667112ecfe4d9a107d44147b"
      ],
      "author": {
        "name": "Jim Miller",
        "email": "jaggies@google.com",
        "time": "Tue Jan 17 15:55:31 2012 -0800"
      },
      "committer": {
        "name": "Jim Miller",
        "email": "jaggies@google.com",
        "time": "Tue Jan 17 18:11:05 2012 -0800"
      },
      "message": "Fix 5863053: Add method to lock screen immediately.\n\nThis fixes a bug where the device fails to lock when DevicePolicyManagerService\nrequests the device to be locked and the screen was off because the user hit\nthe power button.\n\nThe change allows DPMS to directly invoke screen lock, bypasssing the screen state.\n\nChange-Id: Iecdda6fc61e9c519119de495be23c69c3b983921\n"
    },
    {
      "commit": "9f63f121bdc0db64f9dd2be9db792a8698bb0d67",
      "tree": "7188351e2f399cb1ebdd73b9150c9d79cc7d246a",
      "parents": [
        "722c8c02f1e17c232b041440ea97a2fda336a6e8"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Thu Jan 12 18:30:12 2012 -0800"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Jan 17 14:56:50 2012 -0800"
      },
      "message": "Fix a few memory leaks in the input dispatcher.  (DO NOT MERGE)\n\nBug: 5862398\nChange-Id: I799ee47b6e5d6c51f45aa4296c6ab8a610b74be5\n"
    },
    {
      "commit": "2e282f35b009fe4c23daca35592dae2032641643",
      "tree": "8dc3befb0826cc22653a327281f86ebc904647e9",
      "parents": [
        "da7b7700d0f499ac9b0bac51365b3da235388ae6",
        "01b02a734d2988c22b00f5df6346ad03d8bf52b6"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jan 13 12:56:40 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 13 12:56:40 2012 -0800"
      },
      "message": "Merge \"Fix issue #5823276: home repaints after full-screen app is exited\" into ics-mr1"
    },
    {
      "commit": "2cf18d28785fdd188641867503586627cb212302",
      "tree": "7b9d010b690c7ada4c3b012b244748035d4b128f",
      "parents": [
        "2753e826b2d0e7a4c5f80c3e825afa4aa579942b",
        "0bacfd2ba68d21a68a3df345b830bc2a1e515b5a"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Fri Jan 13 11:49:20 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 13 11:49:20 2012 -0800"
      },
      "message": "Merge \"Streamline package-installed handling by the Backup Manager\" into ics-mr1"
    },
    {
      "commit": "0bacfd2ba68d21a68a3df345b830bc2a1e515b5a",
      "tree": "4ba0f1c83b94a9dfe2df611cb83f10c346e00cab",
      "parents": [
        "51938e26913a98aa8de0292e9be8ea9d9ebc67c3"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Wed Jan 11 14:41:19 2012 -0800"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Thu Jan 12 16:15:09 2012 -0800"
      },
      "message": "Streamline package-installed handling by the Backup Manager\n\nIn particular, don\u0027t do O(asec_apps * installed_apps) work during the\nbroadcast receiver\u0027s operation.  On devices with many installed apps\nand a large number of them moved to ASECs, this was causing the system\nprocess to become unresponsive and the watchdog to fire -- which in turn\nwould initiate a restart loop, as the same package-installed broadcast\nwould then be issued again once the package manager rescanned the ASEC\ncontainers, ad infinitum.  With this change, the expensive call to the\npackage manager is only made once rather than asec_apps times.\n\nBug 5850283\n\nChange-Id: I14e280ea1fa6af19cebc58869a20fbb599c92c8c\n"
    },
    {
      "commit": "ff321d496a6a07fc667112ecfe4d9a107d44147b",
      "tree": "fda89338361f2ebbc5bc9a8fa7333b54466d1cd2",
      "parents": [
        "aaaafca8543eaa75f1865d70c801c9b62caa56e2",
        "50fe709995d1f126e96cafde133bc4777b31d4ed"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Thu Jan 12 14:24:30 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 12 14:24:30 2012 -0800"
      },
      "message": "Merge \"VPN: silence VPN notifications.\" into ics-mr1"
    },
    {
      "commit": "01b02a734d2988c22b00f5df6346ad03d8bf52b6",
      "tree": "36cc4f3027585963a0db3ad33f907c28182f9fe1",
      "parents": [
        "d3be0a76e46584357dbb77fcd200128d0d7dc9a8"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jan 12 14:05:03 2012 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jan 12 14:05:03 2012 -0800"
      },
      "message": "Fix issue #5823276: home repaints after full-screen app is exited\n\nDon\u0027t consider a window as a candidate for the top fullscreen window\nif it is not going to be a candiate for layout.\n\nAlso don\u0027t consider windows a candidate for layout if their app token\nis hidden.  This fixes a transient state where we are preparing to\nunhide the window but have not done so yet.\n\nChange-Id: Ife5299ffa003c1df1a4f787b7a2809cbf614ec16\n"
    },
    {
      "commit": "4b1261f17ae2a0180be09b1c987ec7e70b2b46a7",
      "tree": "06954c77300120fc643b1ceac02e06b1067adb66",
      "parents": [
        "2931d8ace9118bafe08090cd41e235048b6c2eb2",
        "b97d34c7c81ed7def6d0c1d7a76d057051f7d154"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Thu Jan 12 09:24:45 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 12 09:24:45 2012 -0800"
      },
      "message": "Merge \"Disable wimax when mobile data is in Settings\" into ics-mr1"
    },
    {
      "commit": "50fe709995d1f126e96cafde133bc4777b31d4ed",
      "tree": "cb9a7f123bcd7949be32a6b28f990fa7f9e57fe2",
      "parents": [
        "c15cf3d286f3d63d141b73f639a5a61ddb028029"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Wed Jan 11 14:26:24 2012 -0800"
      },
      "committer": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Wed Jan 11 14:26:24 2012 -0800"
      },
      "message": "VPN: silence VPN notifications.\n\nBug: 5852859\nChange-Id: I269d8de298a1fd69a8d777150ae97927537a5424\n"
    },
    {
      "commit": "de7a2f30548ac64d67e9ce8ac08090eb5458449d",
      "tree": "b60aa8928c0fe09ea5fe1363d4e5805ca6f046df",
      "parents": [
        "7944704e6c4cc10105838b78d3d8403bf66a066b"
      ],
      "author": {
        "name": "Danielle Millett",
        "email": "dmillett@google.com",
        "time": "Wed Dec 21 17:02:32 2011 -0500"
      },
      "committer": {
        "name": "Danielle Millett",
        "email": "dmillett@google.com",
        "time": "Tue Jan 10 11:40:41 2012 -0500"
      },
      "message": "DO NOT MERGE - Cherry picking from master to MR1\n\nFix 5783857: Device Policy Manager doesn\u0027t allow Face Unlock\n\nThis makes it so that if face unlock is enabled and then a device policy\nmanager that requires something more secure than face unlock is installed,\nthe user will be forced to choose a new acceptable lock type.\n\nThis was previously fixed for the case where the device had been reset, or\nthe shell was restarted after setting face unlock, but not for the case where the\ndevice remained on between setting face unlock and setting up a device policy\nmanager.\n\nAlso changed the function ordering of saveLockPattern() so that the overloaded\nwrapper function is next to the main function.\n\nChange-Id: Ibed8c4ab137ebbc07fb143faef6f047bc6dc4474\n"
    },
    {
      "commit": "b97d34c7c81ed7def6d0c1d7a76d057051f7d154",
      "tree": "5a4d87a7e767ba7ab52ae5a61b0998f62fd6eaa1",
      "parents": [
        "dacbf67ab915fa8b987f6fb9f044160af92652cd"
      ],
      "author": {
        "name": "tk.mun",
        "email": "tk.mun@samsung.com",
        "time": "Fri Jan 06 10:43:52 2012 +0900"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Fri Jan 06 10:32:54 2012 -0800"
      },
      "message": "Disable wimax when mobile data is in Settings\n\n- Add wimax related code in handleSetMobileData to disable wimax when Moblie data is disabled (Settings -\u003e Wireless \u0026 Networks - More -\u003e Mobile Networks -\u003eData Enabled)\n\nChange-Id: Ibf2d9da2eb90d161128005f26ac4b3e991526af4\nSigned-off-by: tk.mun \u003ctk.mun@samsung.com\u003e\n"
    },
    {
      "commit": "b7feb1c91f1053adb1815bc522c43db3f2c3f598",
      "tree": "7ca9c3301b21b0772ffac64bd0fdfd988ec4e750",
      "parents": [
        "dacbf67ab915fa8b987f6fb9f044160af92652cd"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Jan 05 15:34:53 2012 -0800"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Fri Jan 06 10:24:01 2012 -0800"
      },
      "message": "Switch camera sounds to always use the system enforced audio stream.\n\nInstead of picking between the music stream and the enforced audio\nstream, change the camera service to always play sounds through\nenforced system stream. Also update the currently-hidden CameraSound\nAPI to match.\n\nBug: 5778365\nChange-Id: I3cc64b1d1ff567dbac8020a665d5b19846197ff3\n"
    },
    {
      "commit": "72dafb20e036b8844775e3456e5d06a8a8a2cd50",
      "tree": "88d825ec88c2475b0d36617545f6f20bbdfaa1fd",
      "parents": [
        "c892e177c4f7a41e910c70f68d4e213589da1396"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Dec 22 16:08:41 2011 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Dec 22 16:08:41 2011 -0800"
      },
      "message": "audioflinger: fix clicks on 48kHz audio.\n\nThe calculation done in prepareTracks_l() for the minimum amount\noff frames needed to mix one output buffer had 2 issues:\n- the additional sample needed for interpolation was not included\n- the fact that the resampler does not acknowledge the frames consumed\nimmediately after each mixing round but only once all frames requested have been used\nwas not taken into account.\nThus the number of frames available in track buffer could be considered sufficient although\nit was not and the resampler would abort producing a short silence perceived as a click.\n\nIssue 5727099.\n\nChange-Id: I7419847a7474c7d9f9170bedd0a636132262142c\n"
    },
    {
      "commit": "d73b79bb314dde86cf8ff9300fefc133b31841d1",
      "tree": "a53994afb14a9a58be2a5088aa903fbe7495ff71",
      "parents": [
        "19a06fe93cccb4b1dd224b8456969821a19b07ef"
      ],
      "author": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Tue Dec 13 14:02:32 2011 -0800"
      },
      "committer": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Tue Dec 13 14:02:32 2011 -0800"
      },
      "message": "Cherry-picking Id45abeba and Ia065dec6 for MR1\n\n-------------------------------------------------------\nMCC detection fixes for CountryDetector\n\n- Don\u0027t get and cache phone tpe at the initialization time.  At this point\nTelephonyManager is probably not ready yet.\n\n- Refresh MCC whenever we get the service state changed callback, even when\nthe state hasn\u0027t actually changed, in order to make sure we get refresh\ncountry properly when MCC changes.\n\n- Also remove the initialization of mPhoneStateListener, which prevented us from\nregistering phone state listener properly.\n\n- Also fix tests which were already failing.\n\nBug 5670680\n\n-------------------------------------------------------\nAdd logging to country detector logic\n\nThis is for debugging purposes to verify the effects of\nchange Id45abeba1b1e843053ac2c946861b439ca568de4.\n\nBug: 5670680\nChange-Id: I238d953484e2c8135f7dac70fce8662c8300a286\n"
    },
    {
      "commit": "73ab6a49db2b834ce1d56c7a1164938b409ee6fc",
      "tree": "2807f9928a6ec5a5518bff83e49d2fec5081d691",
      "parents": [
        "f0bbc494d638f4c77e688bf9410027f453301559"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Dec 13 11:16:23 2011 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Dec 13 11:32:11 2011 -0800"
      },
      "message": "Fix issue #5755172: Soft menu key disappears when menu is open\n\nWe need to work more like before in determining whether the menu\nkey is needed -- in some cases look back in the window list to\ndetermine this if we don\u0027t know the value from the current window.\n\nThis requires adding a new private flag indicating whether the\ncompat menu state is known for a window, which is set by\nPhoneWindow as part of its existing process of computing the flag\nfor its own windows.\n\nNow we can have a new API on WindowState to determine the value\nof this flag for a window, which if needed walks back in the window list\nto find a window the value is known for (or stops at what the policy\nhas determined is the top full-screen window, so we stop like we used\nto at things like the lock screen or the bottom of an application).\n\nChange-Id: I829de6d629b5af8bcb422cb85249ee4041c7205e\n"
    },
    {
      "commit": "d04ff11d6fa5eb26ca19ac9962b899d9fb0470f0",
      "tree": "c7fc853d82ba14c388d4f1c2ff369b2057446c50",
      "parents": [
        "359bb3b432b21590c12588c3ca3880ac17aadc96"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Dec 12 18:51:26 2011 -0800"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Dec 12 18:51:26 2011 -0800"
      },
      "message": "Avoid NPE when missing network stats.\n\nBug: 5750339\nChange-Id: I4b739dbd076b270a5a2b2e2a1e0f6e445d8c124e\n"
    },
    {
      "commit": "46a4e81dbdc9a5f401b5a3c0d26dea2e42b61487",
      "tree": "391776ec7b1164680125b0c87273471be1bb9f43",
      "parents": [
        "97ff7893321362020211fae3c5a52b95c3ec19e1",
        "c1872732922214de80f790e14865e41dd1b98203"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Thu Dec 08 17:22:16 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 08 17:22:16 2011 -0800"
      },
      "message": "Merge \"VPN: delete the \"abort\" file before starting VPN daemons.\" into ics-mr1"
    },
    {
      "commit": "c1872732922214de80f790e14865e41dd1b98203",
      "tree": "6fecd1c6d1b7eba52b069df35168402063894255",
      "parents": [
        "68f592a8210af27df4339089bbee47fb602cae6a"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Thu Dec 08 16:51:41 2011 -0800"
      },
      "committer": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Thu Dec 08 16:51:41 2011 -0800"
      },
      "message": "VPN: delete the \"abort\" file before starting VPN daemons.\n\nBug: 5714296\nChange-Id: Idba41b9f3907747a84387ea4f3e930b3a185a06e\n"
    },
    {
      "commit": "97ff7893321362020211fae3c5a52b95c3ec19e1",
      "tree": "643f67cbf20547d0055c5a1e2796e6fe33503eed",
      "parents": [
        "c40f70a5cb1f24a9ea0b5b0cadea75db8fc1cdd3",
        "5401f0b87b9bdcd603c55871a37fff07ab3054d7"
      ],
      "author": {
        "name": "Irfan Sheriff",
        "email": "isheriff@google.com",
        "time": "Thu Dec 08 15:59:26 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 08 15:59:26 2011 -0800"
      },
      "message": "Merge \"Fix wifi bring up at boot up\" into ics-mr1"
    },
    {
      "commit": "5401f0b87b9bdcd603c55871a37fff07ab3054d7",
      "tree": "26e5d0fba45769ed741635e2812abf2505e60ac6",
      "parents": [
        "641a5624075ee942b85b17646b57f65377567a06"
      ],
      "author": {
        "name": "Irfan Sheriff",
        "email": "isheriff@google.com",
        "time": "Wed Dec 07 16:27:49 2011 -0800"
      },
      "committer": {
        "name": "Irfan Sheriff",
        "email": "isheriff@google.com",
        "time": "Thu Dec 08 15:50:47 2011 -0800"
      },
      "message": "Fix wifi bring up at boot up\n\nBug: 5719176\nChange-Id: Iac879fc634f6ab6289b73c46931d754bc0af2f87\n"
    },
    {
      "commit": "4494c906168f1b93eb9d130096036d06cfa1e291",
      "tree": "dfe9fd9e670ac2b300b7eb3220988df425251a11",
      "parents": [
        "641a5624075ee942b85b17646b57f65377567a06"
      ],
      "author": {
        "name": "Irfan Sheriff",
        "email": "isheriff@google.com",
        "time": "Thu Dec 08 10:47:54 2011 -0800"
      },
      "committer": {
        "name": "Irfan Sheriff",
        "email": "isheriff@google.com",
        "time": "Thu Dec 08 11:31:52 2011 -0800"
      },
      "message": "Handle emergency call back mode correctly\n\nBug: 5726996\nChange-Id: I5815dd402bd73c530b9ba6d545d8956064949aa2\n"
    },
    {
      "commit": "e0e9fd981ca71aeaa45c888485c11788456bd838",
      "tree": "c8768a73a111ef8357efa1befeecc2d28fd9ead7",
      "parents": [
        "ef8913c035e679ea8b8891e26db1fa571e9b9d54",
        "68b909d8acd92343fa0b1dff2f77fcd9d9991f9f"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Wed Dec 07 23:29:45 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 07 23:29:45 2011 -0800"
      },
      "message": "Merge \"Fix system hotkey handling.\" into ics-mr1"
    },
    {
      "commit": "68b909d8acd92343fa0b1dff2f77fcd9d9991f9f",
      "tree": "73df34f562dafe3807615c773530dedce3d83ae0",
      "parents": [
        "eb3e4b98a45722d5d1ea73e45d86c119d678bb05"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Wed Dec 07 16:36:01 2011 -0800"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Wed Dec 07 21:37:16 2011 -0800"
      },
      "message": "Fix system hotkey handling.\n\nFixed a problem where the key up for the ALT or META key was not\ndelivered to the task switcher dialog because it was deemed\nto be inconsistent with the window\u0027s observed state.  Consequently\nthe dialog would not be dismissed when the key was released.\n\nMoved global hotkey handling for META+* shortcuts and ALT/META-TAB\ninto the window manager policy\u0027s interceptKeyBeforeDispatching\nmethod.  This change prevents applications from hijacking these\nkeys.\n\nThe original idea was that these shortcuts would be handled only\nif the application did not handle them itself.  That way certain\napplications, such as remote desktop tools, could deliberately\noverride some of these less important system shortcuts.\nUnfortunately, that does make the behavior inconsistent across\napplications.  What\u0027s more, bugs in the onKeyDown handler of\napplications can cause the shortcuts to not work at all, for\nno good reason.\n\nPerhaps we can add an opt-in feature later to enable specific\napplications to repurpose these keys when it makes sense.\n\nBug: 5720358\nChange-Id: I22bf17606d12dbea6549c60d20763e6608576cf7\n"
    },
    {
      "commit": "87e06ec2fa57a54b92fe82f2cacfbf8a44e47baf",
      "tree": "4ca2fc12b27b0b72e7e4b6c2fb713ed8423e0497",
      "parents": [
        "0a361b10a665a3d158c846722290f26ce62276e1",
        "ae0a0a84d1a1e5fcba0b18d473e1f31e11b7018e"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Dec 07 15:01:55 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 07 15:01:55 2011 -0800"
      },
      "message": "Merge \"Fix issue #5144065: Tap on Music icon from Home screen...\" into ics-mr1"
    },
    {
      "commit": "0a361b10a665a3d158c846722290f26ce62276e1",
      "tree": "00b7b64311aaa9614588803504cb327216fafe38",
      "parents": [
        "54a53841a9ff48ba4cd004469ae4ff77caed900a",
        "c3f581b0474a216938810885f4f606e0db1f21ff"
      ],
      "author": {
        "name": "Winson Chung",
        "email": "winsonc@google.com",
        "time": "Wed Dec 07 14:33:31 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 07 14:33:31 2011 -0800"
      },
      "message": "Merge \"Workaround for issue where the notifyDatasetChanged call chain is broken when Launcher is killed. (Bug 5703782)\" into ics-mr1"
    },
    {
      "commit": "ae0a0a84d1a1e5fcba0b18d473e1f31e11b7018e",
      "tree": "fdc9814d93531b556e576baa63cc38e5304b62d9",
      "parents": [
        "fb90df8c6e6d48c4b6701014a3053915b94f4b9e"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Dec 07 14:03:01 2011 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Dec 07 14:03:01 2011 -0800"
      },
      "message": "Fix issue #5144065: Tap on Music icon from Home screen...\n\n... a different app opens\n\nIn some cases when reparenting activities we could end up with a reply\nchain that crosses task boundaries, so if an activity below that needs\nto be reparented we pull that and the activities above it up into the\nnew task.\n\nChange-Id: Ia4fa041ab7069e39dac162ddbf5b8e1de98675b9\n"
    },
    {
      "commit": "87f0a7b1aa3fcd688358f92389d3eeaf1ae99008",
      "tree": "457168e3f5f5a1cb4ead57573bcd5eb2b81fd15a",
      "parents": [
        "fb90df8c6e6d48c4b6701014a3053915b94f4b9e"
      ],
      "author": {
        "name": "Irfan Sheriff",
        "email": "isheriff@google.com",
        "time": "Wed Dec 07 11:25:21 2011 -0800"
      },
      "committer": {
        "name": "Irfan Sheriff",
        "email": "isheriff@google.com",
        "time": "Wed Dec 07 11:28:21 2011 -0800"
      },
      "message": "Fix CS wakelock handling\n\nChange-Id: Ibe1c1ab3e26ff0ae7cab7bfb0bd868bfab246037\n"
    },
    {
      "commit": "c3f581b0474a216938810885f4f606e0db1f21ff",
      "tree": "065a4f8a4c8598c43dd92da25d7416ce114a233c",
      "parents": [
        "3124e6f9e96b730cdfbbf068f15c41b6d5c8a819"
      ],
      "author": {
        "name": "Winson Chung",
        "email": "winsonc@google.com",
        "time": "Mon Dec 05 14:56:29 2011 -0800"
      },
      "committer": {
        "name": "Winson Chung",
        "email": "winsonc@google.com",
        "time": "Tue Dec 06 14:21:10 2011 -0800"
      },
      "message": "Workaround for issue where the notifyDatasetChanged call chain is broken when Launcher is killed. (Bug 5703782)\n\nChange-Id: Ic57a7ce85f41d58cd40b7d30eef4a1bf685182e5\n"
    },
    {
      "commit": "0c0120efa2dedaf25ae789bced5a3f9fa33c32bb",
      "tree": "f65f21fdd02011d1b8b10a85f2039fbe0245d105",
      "parents": [
        "52245ac7c41735c561199d9ec7e9577d592ca852",
        "f5b8671c340f189c50b41c53622f979b6d5e0a57"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Dec 05 19:16:54 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Dec 05 19:16:54 2011 -0800"
      },
      "message": "Merge \"Fix issue #5714517: App shortcuts can result in bad task intents\" into ics-mr1"
    },
    {
      "commit": "52245ac7c41735c561199d9ec7e9577d592ca852",
      "tree": "22eb1d8f5ca1fa1b48660920073637150634ee67",
      "parents": [
        "f66664a50e914e1cc5d66046cfc4c5b195a09eab",
        "77eaaf04c6d73a6cc2f09bf6573babb578d27ae7"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Dec 05 19:07:52 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Dec 05 19:07:52 2011 -0800"
      },
      "message": "Merge \"Fix issue #5713576: Home redraws after returning from app on Nexus S 4G\" into ics-mr1"
    },
    {
      "commit": "77eaaf04c6d73a6cc2f09bf6573babb578d27ae7",
      "tree": "ead9891d281f78f1dd6e61e338f90d3bed9b3d20",
      "parents": [
        "003c15d72ccd3856d5abfe6d66a2a40d0eca85bc"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Dec 05 18:05:31 2011 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Dec 05 19:00:42 2011 -0800"
      },
      "message": "Fix issue #5713576: Home redraws after returning from app on Nexus S 4G\n\nTurn of destroying of activities during memory trimming.\n\nChange-Id: Ibea415c13fca4f67f56adefe81a1495f5f9ad273\n"
    },
    {
      "commit": "f5b8671c340f189c50b41c53622f979b6d5e0a57",
      "tree": "fe81dca6cd70d011c62a036b3fc0f940cc71bf23",
      "parents": [
        "003c15d72ccd3856d5abfe6d66a2a40d0eca85bc"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Dec 05 17:42:41 2011 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Dec 05 17:42:41 2011 -0800"
      },
      "message": "Fix issue #5714517: App shortcuts can result in bad task intents\n\nNew API to let you build an Intent whose base configuration is correct,\nbut has an additional \"selector\" to pick out the specific app that you\nwould like launched.\n\nChange-Id: Ide9db6dc60e2844b7696cfe09b28337fe7dd63db\n"
    },
    {
      "commit": "7b6aff23735a9ef8759c5ecb4427784413e9b85b",
      "tree": "7953c8ee4a1497ab48468b82aff142caac6dc15a",
      "parents": [
        "b5f2dfbc221d3dc799232e0ada3b6621d3d4d597",
        "4433169a64eddb8598735bd950491ed35ad9c5f8"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Dec 05 17:20:53 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Dec 05 17:20:53 2011 -0800"
      },
      "message": "Merge \"audioflinger: fix audio skipping over A2DP\" into ics-mr1"
    },
    {
      "commit": "4433169a64eddb8598735bd950491ed35ad9c5f8",
      "tree": "0af1c5609ff4233ecfad3820200aac096b2ffeeb",
      "parents": [
        "e35581ad5ad635f9dcfe4ab6a432c48b46b782cd"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Dec 05 09:47:19 2011 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Dec 05 10:40:18 2011 -0800"
      },
      "message": "audioflinger: fix audio skipping over A2DP\n\nThe maximum sleep time allowed in the mixer thread when audio tracks\nare enabled but not ready for mixing is derived from the latency\nreported by the output stream.\nThis does not work for A2DP where the latency also reflects encoding, decoding\nand transfer time.\n\nModified activeSleepTimeUs() to take A2DP case into account.\n\nIssue 5682206.\n\nChange-Id: I3784ac01fb6f836b5a6ce6f764fb15347586de35\n"
    },
    {
      "commit": "8a7c940effda8651e205eab62334d4e58b1eaeb5",
      "tree": "192aef7ba926c8a4215f95e37d5e3d5579aab3b4",
      "parents": [
        "335c4e6cb2094c7cbd6039e0c7915702b69e7657"
      ],
      "author": {
        "name": "Jesse Hall",
        "email": "jessehall@google.com",
        "time": "Fri Dec 02 10:00:00 2011 -0800"
      },
      "committer": {
        "name": "Jesse Hall",
        "email": "jessehall@google.com",
        "time": "Fri Dec 02 10:03:25 2011 -0800"
      },
      "message": "SurfaceFlinger: fix layer removal race condition\n\nLayer::lockPageFlip() and layer::onRemove() could be called on\ndifferent threads and race such that lockPageFlip() successfully\ncalled mSurfaceTexture-\u003eupdateTexImage() but then gets NULL back from\nmSurfaceTexture-\u003egetCurrentBuffer(), leading to a crash.\n\nThis change moves Layer::onRemove() calls to\nSurfaceFlinger::commitTransaction() so they happen after the Layer is\ndone being drawn from and only happen on the main surfaceflinger\nthread.\n\nChange-Id: I4b550caadff4cc1878d7c3bca6129193fb0c713e\n"
    },
    {
      "commit": "5a7c91769f011bc150c9def9edab9cccb4761c66",
      "tree": "54ea1b90e2f26140c9ffd733ca0d263c6574cd3d",
      "parents": [
        "a7d825dddcb2e8bfd765bad2fb406498f4f1e37e",
        "ad757e9b36d6bc6b8e39be00612d0e60863aaafc"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Thu Dec 01 14:14:22 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 01 14:14:22 2011 -0800"
      },
      "message": "Merge \"Fix free_cache to actually work\" into ics-mr1"
    },
    {
      "commit": "55e81bd0f219acbe00bbeebc8d33ef9c67a4aa60",
      "tree": "d0f5629ac2350c858c1a550b276f716ab204652f",
      "parents": [
        "b73dc9c852f73c7d61f317b5ec7b74766d2f22d5",
        "50685606cfa045213bcc1bf29ce1c00c256b055c"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Dec 01 12:47:43 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 01 12:47:43 2011 -0800"
      },
      "message": "Merge \"Improve how we manage the previous app.\" into ics-mr1"
    },
    {
      "commit": "50685606cfa045213bcc1bf29ce1c00c256b055c",
      "tree": "b9c668774cadbb44806bd802b55a4d1667e7a32c",
      "parents": [
        "a1240184efd1d4391540a6e3e9cae50d56d05cb2"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Dec 01 12:23:37 2011 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Dec 01 12:23:37 2011 -0800"
      },
      "message": "Improve how we manage the previous app.\n\nSetting it when a new activity is being resumed is too soon, because\nthings like an activity launching an exiting (without being seen by\nthe user) can knock out the real previous app that we want.\n\nSo now we set it when an activity is stopped.  At this point it is\ngoing to move from the preceptible to background oom adj, so it is\na good point to determine whether it should be a previous app to\ninstead put it to that oom adj.  This also avoids things like\nactivities that start and immediately finish from impacting the\nprevious app.\n\nFurther, we keep track of the time each activity was last shown, and\nuse this to further filter what is set as the previous app.\n\nChange-Id: I72d1cac4de0cc2d4598170296028f11b06918d4f\n"
    },
    {
      "commit": "ad757e9b36d6bc6b8e39be00612d0e60863aaafc",
      "tree": "47f4ed2af449ef51d817d43cc434f7edb380bf53",
      "parents": [
        "88f10c6ce5a97b1990934148deb8ed6aa6ef7a48"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Tue Nov 29 15:54:55 2011 -0800"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Thu Dec 01 09:07:55 2011 -0800"
      },
      "message": "Fix free_cache to actually work\n\nThis broke with some other path-related changes, so it was scanning for\n/data/*/cache instead of /data/data/*/cache\n\nAlso remove redundant call to restat\n\nBug: 5686310\nChange-Id: Id1661f0f1337858fc9ead53c56ab7557f421c591\n"
    },
    {
      "commit": "2a40d0d92b208021b492e9af3d944720cbf269fc",
      "tree": "0fed812542ce9f29c2c329bfb8d360f7984e0b53",
      "parents": [
        "41a5774a99215025628b83db54c45f84b876678e",
        "d2b22a885a79d537c79e98257647cc120bde2998"
      ],
      "author": {
        "name": "Daniel Sandler",
        "email": "dsandler@android.com",
        "time": "Thu Dec 01 06:29:53 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 01 06:29:53 2011 -0800"
      },
      "message": "Merge \"Put screensavers back in the icebox for now. DO NOT MERGE.\" into ics-mr1"
    },
    {
      "commit": "b94a7fb3d7483e8b47e4f0229fc7abff10a6572d",
      "tree": "b0980fb588b6f1fca7080744e1b2466c64a521ac",
      "parents": [
        "d8ec8db5e0f227e4f63e948acb78d829f5ad30c8",
        "4c3fa642ef1c0e1bb3303d4b25d8af4e6a7d08a2"
      ],
      "author": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Wed Nov 30 17:37:52 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 30 17:37:52 2011 -0800"
      },
      "message": "Merge \"Fix ConcurrentModificationException in TextServicesManagerService\" into ics-mr1"
    },
    {
      "commit": "d8ec8db5e0f227e4f63e948acb78d829f5ad30c8",
      "tree": "cb598a2cc487e3298e9cbafd3e0e4d274347fa1f",
      "parents": [
        "88f10c6ce5a97b1990934148deb8ed6aa6ef7a48",
        "d116d7c78a9c53f30a73bf273bd7618312cf3847"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Wed Nov 30 16:56:41 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 30 16:56:41 2011 -0800"
      },
      "message": "Merge \"Fixing memory leaks in the accessiiblity layer.\" into ics-mr1"
    }
  ],
  "next": "88f10c6ce5a97b1990934148deb8ed6aa6ef7a48"
}
