)]}'
{
  "log": [
    {
      "commit": "58e0eefeb5e2e270e2b04369bbf29fc22abda8d5",
      "tree": "b4ac8f5dd31ceb5ee39590c56a95a77c79b3059b",
      "parents": [
        "0741a5ed38757ef2f6b52945ad494d965b3b83de"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Sep 16 01:22:10 2010 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Sep 17 15:14:57 2010 -0700"
      },
      "message": "Improve power tracking of WIFI use.\n\nWe now distribute \"wifi started\" time across all apps that are\nholding WIFI locks that cause it to be started.  But only when\nWIFI would not normally be running.  Also have a mechanism to\ndistribute other WIFI work that has happened across those processes\nbased on their use.\n\nAlso fixed a bug where we were not retaining the CPU speed step\nstats across boots...!\n\nChange-Id: I00e3153b98429166273750512cc37e7975211ab9\n"
    },
    {
      "commit": "9352cf1a4d46492fc48a20f7d825a9bcb6e8b365",
      "tree": "e3831a9433892110570f4a7c1a1e11bcabc39465",
      "parents": [
        "c7510581b81d63536db7d46ca8533106c8cf57c6"
      ],
      "author": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Thu Sep 16 20:14:18 2010 +0800"
      },
      "committer": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Fri Sep 17 13:31:05 2010 +0800"
      },
      "message": "Add timer to SIP session creation process.\n\n+ add timer parameter to ISipSession.make/changeCall(),\n+ add timer paramter to SipAudioCall.make/answer/hold/continueCall()\u0027s,\n+ add timer parameter to SipManager.makeAudioCall(),\n+ modify implementation in SipSessionGroup, SipAudioCallImpl accordingly,\n+ make SipPhone to use it with 8-second timeout.\n\nhttp://b/issue?id\u003d2994748\n\nChange-Id: I661a887e5810087ddc5e2318335e2fa427f80ec6\n"
    },
    {
      "commit": "c7510581b81d63536db7d46ca8533106c8cf57c6",
      "tree": "d6db7ba7eefd854c0be421ef8ad804d2a6a420e4",
      "parents": [
        "d8f3d167353f6c6f6c5cb7a4c8e941c03b8e9511"
      ],
      "author": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Thu Sep 16 05:45:19 2010 +0800"
      },
      "committer": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Thu Sep 16 19:45:20 2010 +0800"
      },
      "message": "SipService: add log control, suppress ping log.\n\nChange-Id: I78332ddee1272be41b1fbc80c603e41200c6be1a\n"
    },
    {
      "commit": "0e0633828928481658c0e09e5893f6214b57ba38",
      "tree": "0dec239ed2bbb74eb82354d960dcfa5e96d48c5b",
      "parents": [
        "07980dc8a723c6a26003c1ebe74372a2b4fa6777"
      ],
      "author": {
        "name": "Chung-yih Wang",
        "email": "cywang@google.com",
        "time": "Thu Sep 16 12:32:26 2010 +0800"
      },
      "committer": {
        "name": "Chung-yih Wang",
        "email": "cywang@google.com",
        "time": "Thu Sep 16 12:32:26 2010 +0800"
      },
      "message": "Fix the unhandled authentication message.\n\nbug id: http://b/2991911\n\nChange-Id: Iec86e3aee0fb12034ee25bc0e93fd575c1208a5f\n"
    },
    {
      "commit": "f4d788c9309bc5480100d980608472e4cb04f309",
      "tree": "9788b033de37af1570d63497986d2e953ccd164a",
      "parents": [
        "747c61535281b4d2958e293e83245a19ba58f6a0",
        "519e024d1e682ca458cc2dab743589a12992c0e1"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Wed Sep 15 18:55:25 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 15 18:55:25 2010 -0700"
      },
      "message": "Merge \"Make input dispatcher only ANR for foreground windows.\" into gingerbread"
    },
    {
      "commit": "519e024d1e682ca458cc2dab743589a12992c0e1",
      "tree": "1dfdac05031e352b7404a07f347b0444c70bc95b",
      "parents": [
        "3fd5fa4ca9dbdd5be46ec2952c7038cdd59e35d5"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Wed Sep 15 15:18:56 2010 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Wed Sep 15 18:52:08 2010 -0700"
      },
      "message": "Make input dispatcher only ANR for foreground windows.\n\nRedesigned the input dispatcher\u0027s ANR timeout mechanism so it is much\ncloser to Froyo\u0027s policy.  ANR is only ever signalled if the dispatcher\nis waiting on a window to finish processing its previous event(s) and\nthere is new pending input.\n\nIn the old code, we tracked the dispatch timeout separately for each\ninput channel.  This was somewhat complicated and also resulted in the\nsituation where applications could ANR long after the user had pushed\nthem into the background.\n\nChange-Id: I666ecada0952d4b95f1d67b9f733842b745c7f4b\n"
    },
    {
      "commit": "134b28a7f049719cb74fd5baadbbcc5915bc861b",
      "tree": "d53c72098eafb29f8d520cc0c44520a358c97d80",
      "parents": [
        "b8dbdc293a8495a873a9c36353d6a9408c698256",
        "1e9aac2bd855f12708d3049eff4435fa4a2f4317"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Wed Sep 15 17:59:54 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 15 17:59:54 2010 -0700"
      },
      "message": "Merge \"Update Inet Connection Status display\" into gingerbread"
    },
    {
      "commit": "1e9aac2bd855f12708d3049eff4435fa4a2f4317",
      "tree": "b03fe366c106053c936a9ccbc442706a39b382bf",
      "parents": [
        "94126238427f04ecb86fe6832113afb2f04e89b5"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Wed Sep 15 17:36:33 2010 -0700"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Wed Sep 15 17:54:17 2010 -0700"
      },
      "message": "Update Inet Connection Status display\n\nCellular signal strength should also be green - these assets aren\u0027t, but\nthe art guys are working on that.\n\nAlso using a new intent so we don\u0027t overload the CONNECTIVITY_ACTION and\nconfuse the apps.\nbug:2994024\n\nChange-Id: I6fe8f65dd6e9869d9724064c4fae45340491a4d8\n"
    },
    {
      "commit": "5306e0a85dabd4c18a7b3f81acc0f582f9429482",
      "tree": "3275e3c6c9eb2701083ebaef645d52fd950befab",
      "parents": [
        "096df8197b9133703d2ed0abb69813db0c8b4129",
        "ae076d3981fda732d54b6c6e37e5659b2e7ba130"
      ],
      "author": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Tue Sep 14 23:10:03 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Sep 14 23:10:03 2010 -0700"
      },
      "message": "Merge \"SIP: add PEER_NOT_REACHABLE error feedback.\" into gingerbread"
    },
    {
      "commit": "096df8197b9133703d2ed0abb69813db0c8b4129",
      "tree": "4a57bdf40998eef7040fde3cd4a7dea681658c5d",
      "parents": [
        "cee0b97eed0a460e2da58500e24d3e4dac5cb9f6",
        "88203cb111cd9605edcdedb402f8f2a96f8f01e1"
      ],
      "author": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Tue Sep 14 23:09:26 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Sep 14 23:09:26 2010 -0700"
      },
      "message": "Merge \"SipService: send SERVER_ERROR if server doesn\u0027t provide nonce\" into gingerbread"
    },
    {
      "commit": "ae076d3981fda732d54b6c6e37e5659b2e7ba130",
      "tree": "0be4664793a64e1e90ef9e6b639a84cd3aab0b8f",
      "parents": [
        "88203cb111cd9605edcdedb402f8f2a96f8f01e1"
      ],
      "author": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Wed Sep 15 11:23:22 2010 +0800"
      },
      "committer": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Wed Sep 15 11:30:45 2010 +0800"
      },
      "message": "SIP: add PEER_NOT_REACHABLE error feedback.\n\nhttp://b/issue?id\u003d3002033\n\nChange-Id: Ib64b08919d214acbab89945ac19dc113a68e62ad\n"
    },
    {
      "commit": "cee0b97eed0a460e2da58500e24d3e4dac5cb9f6",
      "tree": "5018fe3d5af56fd6e88b6807fa436948c0327af4",
      "parents": [
        "536ee090ef75add0f7244c1c22be83fe03a66010",
        "aa48540222ef11115b29b8d7f2b7bd1ece772418"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Tue Sep 14 18:02:39 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Sep 14 18:02:39 2010 -0700"
      },
      "message": "Merge \"Free AssetManager weak refs before unmounting\" into gingerbread"
    },
    {
      "commit": "536ee090ef75add0f7244c1c22be83fe03a66010",
      "tree": "4167c39059b67364d360f11ef193dfbd13dd447c",
      "parents": [
        "5bade703fd8434ba4cd5c9d1e8e1dc0f383b32b5",
        "0de8ddb0cfd65968387b51fb0d4f505b81d8b0a2"
      ],
      "author": {
        "name": "Steve Howard",
        "email": "showard@google.com",
        "time": "Tue Sep 14 17:46:22 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Sep 14 17:46:22 2010 -0700"
      },
      "message": "Merge \"Fix name shadowing bug with revoking URI permissions.\" into gingerbread"
    },
    {
      "commit": "0de8ddb0cfd65968387b51fb0d4f505b81d8b0a2",
      "tree": "cb535dfbbe723e987c262639fac407bc7f32f470",
      "parents": [
        "bd2e9ec64d9a292a1309504c6c5fe33e1bc2333a"
      ],
      "author": {
        "name": "Steve Howard",
        "email": "showard@google.com",
        "time": "Tue Sep 14 16:29:26 2010 -0700"
      },
      "committer": {
        "name": "Steve Howard",
        "email": "showard@google.com",
        "time": "Tue Sep 14 16:29:26 2010 -0700"
      },
      "message": "Fix name shadowing bug with revoking URI permissions.\n\nChange-Id: Ibfcb0dc73c6b1a111dbb8d56e6f0b78084f5e4e6\n"
    },
    {
      "commit": "aa48540222ef11115b29b8d7f2b7bd1ece772418",
      "tree": "985a28185e02c467f4685798c65653ac1cd69839",
      "parents": [
        "e7b92d7b53343119173558302ecfb3986ae0fbd6"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Tue Sep 14 14:49:41 2010 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Tue Sep 14 14:49:41 2010 -0700"
      },
      "message": "Free AssetManager weak refs before unmounting\n\nAssetManagers are kept in WeakReference pools so there\u0027s a change\nanother thread in the system_server has opened a file on the external\ncard. Attempt to force a garbage collection to free these references\neach time we\u0027re about to unmount a volume on the external storage.\n\nChange-Id: I6e816e8c67b179887e488dc6758b43bcdd5914fb\n"
    },
    {
      "commit": "1188f5e76cfcd512c4e2fae00ac0bfba3150bd7b",
      "tree": "2d84dc9a0565e57211319df72b93157d2efff34d",
      "parents": [
        "b92788aa040d0971b4e54589aef7675f34d96e5d",
        "70be1673abf6334d2caf60fdc0504088b0e0859c"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Sep 14 12:28:08 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Sep 14 12:28:08 2010 -0700"
      },
      "message": "Merge \"Fix problem where power manager was calling battery stats with bad wl type.\" into gingerbread"
    },
    {
      "commit": "88203cb111cd9605edcdedb402f8f2a96f8f01e1",
      "tree": "f3405371e35b7cc60843dda140717e9970c6e4c0",
      "parents": [
        "89a7180a242043a0b4d6695bf386c93365bf6797"
      ],
      "author": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Wed Sep 15 03:00:19 2010 +0800"
      },
      "committer": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Wed Sep 15 03:00:19 2010 +0800"
      },
      "message": "SipService: send SERVER_ERROR if server doesn\u0027t provide nonce\n\nin authentication response.\n\nChange-Id: I93e8c0d6754399ca2f382033085e40fc4c6ccb19\n"
    },
    {
      "commit": "96d6c3454c3550486a2efa25ca0c83732b5e2eaf",
      "tree": "f186ee895ddae8c535ed6f1074d58e3bb595213b",
      "parents": [
        "fb85bc66c467be96fe8420338321df6f15359d7d",
        "50d66f9fcdac84b2af65a82be56728f54b1a7ef0"
      ],
      "author": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@android.com",
        "time": "Tue Sep 14 11:37:13 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Sep 14 11:37:13 2010 -0700"
      },
      "message": "Merge \"Unify some duplicate StrictMode-enabling code.\" into gingerbread"
    },
    {
      "commit": "fb85bc66c467be96fe8420338321df6f15359d7d",
      "tree": "c79a2289466e967751b1525163c609d033ba4a50",
      "parents": [
        "52e19d5917b8f057131c1dc8b3eb772febd791d9",
        "194b19a4b3ff877d2720ed35e607e329fcfa8186"
      ],
      "author": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@android.com",
        "time": "Tue Sep 14 11:37:05 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Sep 14 11:37:05 2010 -0700"
      },
      "message": "Merge \"Add missing wallpaper service lock.\" into gingerbread"
    },
    {
      "commit": "194b19a4b3ff877d2720ed35e607e329fcfa8186",
      "tree": "52249141dc3e6913b1227cdcb7307034bd6946e6",
      "parents": [
        "13f6270eb14b409709c936b828e2a2fd40e427c4"
      ],
      "author": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@android.com",
        "time": "Tue Sep 14 11:30:29 2010 -0700"
      },
      "committer": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@android.com",
        "time": "Tue Sep 14 11:30:29 2010 -0700"
      },
      "message": "Add missing wallpaper service lock.\n\nUnimportant, but found while reading the code for other reasons.\n\nChange-Id: I9f2fad3ff5d081aef7a35e5f33ec5de7dc92195e\n"
    },
    {
      "commit": "70be1673abf6334d2caf60fdc0504088b0e0859c",
      "tree": "9add2a9aadf5a58d872c0e81ed9c370fd5c9fe59",
      "parents": [
        "a224f70b1efc29d9698da5b5c143251a43838f2b"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Sep 14 11:13:03 2010 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Sep 14 11:13:03 2010 -0700"
      },
      "message": "Fix problem where power manager was calling battery stats with bad wl type.\n\nAlso fiddle code to reduce duplication.\n\nChange-Id: I3f1b086e53ef88dac1ec1896fe711b3cfe7fdd58\n"
    },
    {
      "commit": "89a7180a242043a0b4d6695bf386c93365bf6797",
      "tree": "255ce07123504e4b81320880ab069467f922012c",
      "parents": [
        "e71396cf4704ee9e26f510b511c1e793d8048d83",
        "12bec5ddf58ad3a69728810480e6194c806567d6"
      ],
      "author": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Tue Sep 14 09:57:47 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Sep 14 09:57:47 2010 -0700"
      },
      "message": "Merge \"SipService: ignore connect event for non-active networks.\" into gingerbread"
    },
    {
      "commit": "12bec5ddf58ad3a69728810480e6194c806567d6",
      "tree": "31434b9f5ba4004382c7543cb679d2967794b66d",
      "parents": [
        "13f6270eb14b409709c936b828e2a2fd40e427c4"
      ],
      "author": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Tue Sep 14 19:33:10 2010 +0800"
      },
      "committer": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Wed Sep 15 00:49:02 2010 +0800"
      },
      "message": "SipService: ignore connect event for non-active networks.\n\n+ sanity check and remove redundant code.\n\nChange-Id: I4d3e226851ad7fc4d88ddcd0a5c58f7e33b6c14a\n"
    },
    {
      "commit": "3043441511e4483d24dc6f42e1ee7f7e9dc71be2",
      "tree": "7c056e5613acd24849e01dbccc332370b77f252a",
      "parents": [
        "13f6270eb14b409709c936b828e2a2fd40e427c4",
        "7d794fbd305d9954a93136af7d54654e05f2508f"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Tue Sep 14 09:29:48 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Sep 14 09:29:48 2010 -0700"
      },
      "message": "Merge \"Dedupe timestamp in PackageSettings\" into gingerbread"
    },
    {
      "commit": "50d66f9fcdac84b2af65a82be56728f54b1a7ef0",
      "tree": "ff058166b5bfb1888f40d01dd5927f8c60542bce",
      "parents": [
        "13f6270eb14b409709c936b828e2a2fd40e427c4"
      ],
      "author": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@android.com",
        "time": "Mon Sep 13 21:29:05 2010 -0700"
      },
      "committer": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@android.com",
        "time": "Tue Sep 14 08:22:30 2010 -0700"
      },
      "message": "Unify some duplicate StrictMode-enabling code.\n\nChange-Id: Ifb92f35d9e245dbdb5e201597d8be702bce9e8b8\n"
    },
    {
      "commit": "99bf4e45c4566172189735b34b368b76660ca57a",
      "tree": "3a6e4f484b97ca0839d496b44dc8446971c41bf1",
      "parents": [
        "5dde95b8fe0fea1a115a68f8acf826371da89da7"
      ],
      "author": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Tue Sep 14 20:12:59 2010 +0800"
      },
      "committer": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Tue Sep 14 20:29:02 2010 +0800"
      },
      "message": "SIP: remove dependency on javax.sip\n\nand change errorCodeString to errorCode in\nSipRegistrationListener.onRegistrationFailed().\n\nChange-Id: Id9618f5a4b0effaed04f8b0dc60347499d9e4501\n"
    },
    {
      "commit": "7d137e40cd36290c6bfb5beaf66f4018ae92c97f",
      "tree": "91f5e415016d5e7c1162d464a8765ed5e7f09ca5",
      "parents": [
        "4565933f03a99750a333e97e95408c404984510f"
      ],
      "author": {
        "name": "Chung-yih Wang",
        "email": "cywang@google.com",
        "time": "Tue Sep 14 14:01:13 2010 +0800"
      },
      "committer": {
        "name": "Chung-yih Wang",
        "email": "cywang@google.com",
        "time": "Tue Sep 14 14:17:02 2010 +0800"
      },
      "message": "Fix the bug of authentication in an outgoing call.\n\nSince we missed the check of another challenge header in the\nproxy authentication response.\n\nChange-Id: Ie5b9d22c6c55b4d65619d2194c88845e7dd59f15\n"
    },
    {
      "commit": "4565933f03a99750a333e97e95408c404984510f",
      "tree": "d4cd52828ab787553a1e604cc533fba6f8baf492",
      "parents": [
        "5251c800c93c6f6fd473475c36b8ab3b360c1e4d",
        "d231aa880ab006d51ffe03454c1fc082f1c97bb8"
      ],
      "author": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Mon Sep 13 19:53:58 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Sep 13 19:53:58 2010 -0700"
      },
      "message": "Merge \"SipService: deliver connectivity change to all sessions.\" into gingerbread"
    },
    {
      "commit": "d231aa880ab006d51ffe03454c1fc082f1c97bb8",
      "tree": "4b1c1b33c96e8d475879d76e3e81d79d27fc3b98",
      "parents": [
        "3d7606aa607b24817e37c264f2141ed7b2d50be0"
      ],
      "author": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Tue Sep 14 00:17:51 2010 +0800"
      },
      "committer": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Tue Sep 14 08:00:09 2010 +0800"
      },
      "message": "SipService: deliver connectivity change to all sessions.\n\n+ add DATA_CONNECTION_LOST to SipErrorCode\n+ convert it to Connection.DisconnectCause.LOST_SIGNAL in SipPhone\n\nhttp://b/issue?id\u003d2992548\n\nChange-Id: Ie8983c1b81077b21f46304cf60b8e61df1ffd241\n"
    },
    {
      "commit": "8c5755aab5bac94a15e923d07c423629737fa6a2",
      "tree": "761cae7cc71416c8ca08ed9139e93f8b43f683c4",
      "parents": [
        "7e9f4eb2608148436cef36c9969bf8a599b39e72"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Sep 13 16:58:59 2010 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Sep 13 16:58:59 2010 -0700"
      },
      "message": "Work on issue #2991868: A toast pops up informing users...\n\n...that Market took over the screen after signing into a Google account\n\nDon\u0027t warn the user about a new activity coming up on an activity that\nis finishing.\n\nChange-Id: I573073139d42a485473d0c8a7df450c1a23c35c3\n"
    },
    {
      "commit": "7d794fbd305d9954a93136af7d54654e05f2508f",
      "tree": "ebd5c72a7f8db1de1d1efd53c870417e780d7b93",
      "parents": [
        "bd2e9ec64d9a292a1309504c6c5fe33e1bc2333a"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Mon Sep 13 16:29:49 2010 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Mon Sep 13 16:34:05 2010 -0700"
      },
      "message": "Dedupe timestamp in PackageSettings\n\nTimestamp data was duplicated making the management of timestamp\nunnecessarily complicated.\n\nChange-Id: Ia13be6ee9809a314232453e8627a54f9c9d8374d\n"
    },
    {
      "commit": "7e9f4eb2608148436cef36c9969bf8a599b39e72",
      "tree": "16351bff3017f948792a6308f4f6698e0a9d769c",
      "parents": [
        "cc5494c9996f809e36539b24e8b6b67683383d29"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Sep 10 18:43:00 2010 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Sep 13 14:20:48 2010 -0700"
      },
      "message": "Track client requests through location manager.\n\nThis fixes a problem where applications could ask the location\nmanager to do very heavy-weight things (like...  say... update\nlocation every minute), which would get accounted against the\nsystem instead of the application because ultimately it is the\nsystem making the heavy calls (wake locks, etc).\n\nTo solve this, we introduce a new class WorkSource representing\nthe source of some work.  Wake locks and Wifi locks allow you\nto set the source to use (but only if you are system code and thus\ncan get the permission to do so), which is what will be reported\nto the battery stats until the actual caller.\n\nFor the initial implementation, the location manager keeps track\nof all clients requesting periodic updates, and tells its providers\nabout them as a WorkSource param when setting their min update time.\nThe network location provider uses this to set the source on the\nwake and wifi locks it acquires, when doing work because of the\nupdate period.\n\nThis should also be used elsewhere, such as in the GPS provider,\nbut this is a good start.\n\nChange-Id: I2b6ffafad9e90ecf15d7c502e2db675fd52ae3cf\n"
    },
    {
      "commit": "3d7606aa607b24817e37c264f2141ed7b2d50be0",
      "tree": "2819b037501a73e477a9aea58753149ac5a926fd",
      "parents": [
        "25b52a2f97df112c2836972d0b6d9a4c7a9c4a4e"
      ],
      "author": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Sun Sep 12 23:50:38 2010 +0800"
      },
      "committer": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Mon Sep 13 17:45:39 2010 +0800"
      },
      "message": "SIP: enhance timeout and registration status feedback.\n\nhttp://b/issue?id\u003d2984419\nhttp://b/issue?id\u003d2991065\n\nChange-Id: I2d3b1dd3a70079ff347f7256f4684aea07847f4e\n"
    },
    {
      "commit": "07a9e8d39f818e54f0feccff10c99b9629007a64",
      "tree": "cb3631bc06d340bfb166232e847aff74d08b6ed3",
      "parents": [
        "692065128e66de77470de2c50ead2bef0452952a",
        "8f7cc02c7c4bd542376648dbd54be3ceb8521f73"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Sun Sep 12 17:59:41 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Sep 12 17:59:41 2010 -0700"
      },
      "message": "Merge changes Ie3648509,I53db73c3 into gingerbread\n\n* changes:\n  Move native library removal function to helper\n  Initialize native library path in PackageSetting\n"
    },
    {
      "commit": "b88102f5b7e51552a3576cf197b4c8cf96f193d1",
      "tree": "c714dce33893a048f42a36e78b25dc0bc971b1c3",
      "parents": [
        "11fe181e16501103d7c0f70344661ea2ef5d3df9"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Wed Sep 08 11:49:43 2010 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Sun Sep 12 16:52:03 2010 -0700"
      },
      "message": "Input dispatcher ANR handling enhancements.\n\nThis change is essentially a rewrite of the main input dispatcher loop\nwith the target identification folded in.  Since the input dispatcher now\nhas all of the window state, it can make better decisions about\nwhen to ANR.\n\nAdded a .5 second deadline for processing app switch keys.  This behavior\npredates Gingerbread but had not previously been ported.\n\nFixed some timing inaccuracies in the ANR accounting that could cause\napplications to ANR sooner than they should have.\n\nAdded a mechanism for tracking key and motion events that have been\ndispatched to a window so that appropriate cancelation events can be\nsynthesized when recovering from ANR.  This change helps to keep\napplications in sync so they don\u0027t end up with stuck buttons upon\nrecovery from ANRs.\n\nAdded more comments to describe the tricky parts of PollLoop.\n\nChange-Id: I13dffca27acb436fc383980db536abc4d8b9e6f1\n"
    },
    {
      "commit": "8f7cc02c7c4bd542376648dbd54be3ceb8521f73",
      "tree": "8e53b10d1d24a3cd288e8a40822337b77f4a062c",
      "parents": [
        "806cc13a08f04a69ded4df0ae1557c19816843a8"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Sun Sep 12 09:04:56 2010 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Sun Sep 12 09:04:56 2010 -0700"
      },
      "message": "Move native library removal function to helper\n\nMoves the remoteNativeLibrariesLI call to NativeLibraryHelper to prepare\nfor being able to symlink the /data/data/\u003cpackage\u003e/lib dir to the ASEC\ncontainer.\n\nChange-Id: Ie3648509c6b6293a8d9bdd815610ab408df5047f\n"
    },
    {
      "commit": "806cc13a08f04a69ded4df0ae1557c19816843a8",
      "tree": "a7007b17e7802a4b86b803d10c9beb52d818ea03",
      "parents": [
        "9a3ce10c6cafa4a2528ce9f3fdb6163acf5eb7b2"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Sun Sep 12 08:34:19 2010 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Sun Sep 12 09:04:48 2010 -0700"
      },
      "message": "Initialize native library path in PackageSetting\n\nDuring boot-up we weren\u0027t paying attention to the nativeLibraryPath that\nwas read from the package settings XML file which reset the path to the\ndefault /data/data/\u003cpackage\u003e/lib directory.\n\nThis adds nativeLibraryPath as an argument to the PackageSettings\nconstructor and related functions that will pull that value in from the\nsettings file.\n\nIt also removes the call to nativeLibraryDir.mkdir() which installd does\nby itself.\n\nChange-Id: I53db73c3b1bc90997a4a73f7f2fbaee125e6f67e\n"
    },
    {
      "commit": "1e02d36b0f1dc833cf8a837c7619fbe6478694c8",
      "tree": "e364db25610607edd63a0289df87ea2c7d67c1f3",
      "parents": [
        "219eb7ec8403ef9b98125f2b58cc27669ae69712"
      ],
      "author": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@android.com",
        "time": "Fri Sep 10 09:19:50 2010 -0700"
      },
      "committer": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@android.com",
        "time": "Fri Sep 10 09:19:50 2010 -0700"
      },
      "message": "Enable strictmode logging in system_server \u0026 add a lock.\n\nWe weren\u0027t logging strictmode violation in the system_server process\nin non-user builds (only system apps), even though the rest of the\nstrictmode logging supports it.\n\nAlso add a missing lock in ActivityManagerService.\n\nChange-Id: If2af96a7e4fdde604a647b836097f0029ef1334b\n"
    },
    {
      "commit": "ca3c24db3ae4b7a513f1ca76b1e7a3f56a020680",
      "tree": "1d9b25f6d8ac1565f5140812b0effeec78ab42ee",
      "parents": [
        "506d724cc356a7ba73995ef2929c65062277c83d",
        "903e1031605d715e904811b0dd06cc6a518f0048"
      ],
      "author": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Fri Sep 10 02:19:22 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 10 02:19:22 2010 -0700"
      },
      "message": "Merge \"SIP: add SipErrorCode for error feedback.\" into gingerbread"
    },
    {
      "commit": "903e1031605d715e904811b0dd06cc6a518f0048",
      "tree": "410e5f2d1152cb9579f51598f04b705ecd420f31",
      "parents": [
        "a71d69947d4a74730b17021b4c809d054d66c741"
      ],
      "author": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Thu Sep 09 20:07:14 2010 +0800"
      },
      "committer": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Fri Sep 10 17:15:06 2010 +0800"
      },
      "message": "SIP: add SipErrorCode for error feedback.\n\nChange-Id: I8b071d4933479b780a403d0bfa30511f4c23ca8f\n"
    },
    {
      "commit": "a7d868d4f99dfaf85e13498210aecf1ad8efd859",
      "tree": "5a92cc100ef554d4cd683221b84e1716df703deb",
      "parents": [
        "7f07f842c9c375648b52de5d8a84c080e9394d71",
        "0dad364adb9e9cbc2f7fa115602552f4897387ad"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Sep 09 21:31:34 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Sep 09 21:31:34 2010 -0700"
      },
      "message": "Merge \"Add toast when an app intercepts the launch of another app.\" into gingerbread"
    },
    {
      "commit": "0dad364adb9e9cbc2f7fa115602552f4897387ad",
      "tree": "2f7d9825ab2261d3349250b4d09c94acc005f035",
      "parents": [
        "ee455f5a9572bc0d23c3328f6c22da91dc109a50"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Sep 09 21:25:35 2010 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Sep 09 21:25:35 2010 -0700"
      },
      "message": "Add toast when an app intercepts the launch of another app.\n\nThe activity manager looks for cases where one app launches immediately\nafter another.  If this happens, a brief toast is shown telling the user\nwhen app is actually running and what was originally starting.\n\nChange-Id: If94cf5bd393dd0bc0f09789dae044fde1386c481\n"
    },
    {
      "commit": "8d578836dc4f9fb41532b8b3dd7a6b168d6f4f9d",
      "tree": "0b1d4c4c5f51e723f9139244d9ac05d0a77fa847",
      "parents": [
        "76e4fa19264793e3ed7e2ee7afccfc808a1a7458"
      ],
      "author": {
        "name": "Rich Cannings",
        "email": "richc@google.com",
        "time": "Thu Sep 09 15:12:40 2010 -0700"
      },
      "committer": {
        "name": "Rich Cannings",
        "email": "richc@google.com",
        "time": "Thu Sep 09 16:28:48 2010 -0700"
      },
      "message": "Remove the use of FileInputStream.available()\n\nBug: 2976294\nChange-Id: I34b13cedbf1d2338163ef74454817c318a3a24f5\n"
    },
    {
      "commit": "76e4fa19264793e3ed7e2ee7afccfc808a1a7458",
      "tree": "41b8715b16752fda312c074e7c335e0df26624e0",
      "parents": [
        "47fa8e800ca3ce56733f7b3a54bace86ad37a1f4",
        "2117f6fa3880e55e6a90fbd8b3a12d469c9b738b"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Sep 09 14:02:19 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Sep 09 14:02:19 2010 -0700"
      },
      "message": "Merge \"Only pulse notification light if a new notification has been received since the screen was last turned off\" into gingerbread"
    },
    {
      "commit": "0727a865d83b944c2fecc0bf1228a36976fe5300",
      "tree": "10f6c738a653b4a5be5c744a6f956d91199ef94a",
      "parents": [
        "f6936a3a52b6bb6de27f75d4e38d116e896b7f4d",
        "d7085fcf6567452a9d6fc69b0c6b1bf556f4c1b9"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Thu Sep 09 09:41:05 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Sep 09 09:41:05 2010 -0700"
      },
      "message": "Merge \"Add network condition reporting.\" into gingerbread"
    },
    {
      "commit": "d7085fcf6567452a9d6fc69b0c6b1bf556f4c1b9",
      "tree": "0a659201bb5520ba870fc16535165df616421803",
      "parents": [
        "65634a7935ed6f173179e7ac91a05288693b2bbf"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Wed Sep 08 15:24:47 2010 -0700"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Thu Sep 09 09:33:02 2010 -0700"
      },
      "message": "Add network condition reporting.\n\nApps can report if they like their connection to the nets\nand we display either not-really-connected or fully-connected\nicons.  Final icons TBD.\n\nbug:2978624\nChange-Id: I28be52085edfe54571c0d4559aba0df883548654\n"
    },
    {
      "commit": "2117f6fa3880e55e6a90fbd8b3a12d469c9b738b",
      "tree": "7b7a054ea3306a8b93a7354e3b995a453c7df152",
      "parents": [
        "f6936a3a52b6bb6de27f75d4e38d116e896b7f4d"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Sep 09 09:48:08 2010 -0400"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Sep 09 09:48:08 2010 -0400"
      },
      "message": "Only pulse notification light if a new notification has been received since the screen was last turned off\n\nBUG: 2980248\n\nChange-Id: I4dca527a191fae4ad87eeff8ad32594fd6aeb417\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "4d1e0121277b566b5e1c22e790a3b607b75d945d",
      "tree": "b0a9d91b9f51025f58ef91268c9887bfd3907300",
      "parents": [
        "edbb8083a815e9d911f8e659fc5c293543fdf502"
      ],
      "author": {
        "name": "Chung-yih Wang",
        "email": "cywang@google.com",
        "time": "Thu Sep 09 13:27:10 2010 +0800"
      },
      "committer": {
        "name": "Chung-yih Wang",
        "email": "cywang@google.com",
        "time": "Thu Sep 09 13:27:10 2010 +0800"
      },
      "message": "Change the keep-alive interval to 10 seconds.\n\nChange-Id: I216cee622f57ee18533de3960d4da1a41e01f1ae\n"
    },
    {
      "commit": "65634a7935ed6f173179e7ac91a05288693b2bbf",
      "tree": "2b365855f611d0113cf7bc0d164c9e65bd584874",
      "parents": [
        "d9c80ab31ac3755141765e2c030bd1404ff0b050",
        "3dd42334ee971ad668eb8ca97f8b363292fc828d"
      ],
      "author": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@android.com",
        "time": "Wed Sep 08 15:20:20 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 08 15:20:20 2010 -0700"
      },
      "message": "Merge \"Don\u0027t block in the BackupManagerService.dataChanged() Binder call.\" into gingerbread"
    },
    {
      "commit": "ee455f5a9572bc0d23c3328f6c22da91dc109a50",
      "tree": "5fe731d867f3ac63b0d6fe476df253571a913928",
      "parents": [
        "5872e9d7f31e5a4c5f3d871dba02b6d72a7ada78",
        "0d903a84d04d241a648ec429e3a0e82c712677fd"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Sep 08 14:15:35 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 08 14:15:35 2010 -0700"
      },
      "message": "Merge \"People holding partial wake locks now get blamed for CPU usage.\" into gingerbread"
    },
    {
      "commit": "0d903a84d04d241a648ec429e3a0e82c712677fd",
      "tree": "815e9535debd0db364ef41a3882ed1bda51a4efa",
      "parents": [
        "de2f3340d64e20e51029ff438f0d635d97b8a3e0"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Sep 07 23:51:03 2010 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Sep 08 12:41:24 2010 -0700"
      },
      "message": "People holding partial wake locks now get blamed for CPU usage.\n\nFor the duration of the wake lock, 50% of all CPU usage is now\naccounted against the app(s) holding partial wake locks, evenly\ndistributed between them.  This is only while the device is on\nbattery and screen off.\n\nChange-Id: I3e5c978b792b6ef17bf8540705bfe8343dadd464\n"
    },
    {
      "commit": "bb3716332321e22537a5015be13e2229fb9b90bc",
      "tree": "95cee569b2a4093366944cf236131aead4165089",
      "parents": [
        "de2f3340d64e20e51029ff438f0d635d97b8a3e0"
      ],
      "author": {
        "name": "Jake Hamby",
        "email": "jhamby@google.com",
        "time": "Mon Aug 23 18:16:48 2010 -0700"
      },
      "committer": {
        "name": "Jake Hamby",
        "email": "jhamby@google.com",
        "time": "Wed Sep 08 12:37:18 2010 -0700"
      },
      "message": "Allow incoming SMS until internal storage is almost full.\n\nFix for bug 2382830: new incoming SMS should not be rejected when\nrunning low on internal phone storage.\n\nTesting revealed that the /data partition should have at least 256 KiB\navailable in order to prevent random app crashes (including system apps)\ndue to SQLite transaction failures. With 256 KiB free, the device should\nsafely boot without storage full errors. This takes into account the\n36-40 KiB that the YAFFS2 filesystem reports as available even after\nthe partition has been completely filled. I\u0027ve set the default full\nthreshold to 1 MiB to provide a generous safety margin.\n\nFor this bug, I changed the DeviceStorageMonitorService demon to send\ntwo new hidden notifications for device storage \"full\" and \"not full\",\nwhen the free space falls below the full threshold (default 1 MiB,\nbut configurable as a system setting), in addition to the existing\nstorage low/okay notifications sent when the storage crosses the threshold\nof 90% full (also configurable).\n\nThe SMS code was changed to use these new notifications so that it can\naccept messages until the data partition has been filled to the maximum\nsafe capacity rather than stopping when it hits 90% full. There should\nbe no negative impact on battery life because the additional check in\nthe storage polling service should be offset by an optimization to cache\nthe free threshold values which were previously being computed every time\nthrough the loop.\n\nWhile testing this change, I discovered that SMSDispatcher was being\ninstantiated twice, the first time in GSMPhone/CDMAPhone, and the second\ntime in SimSmsInterfaceManager / RuimSmsInterfaceManager. Changed the code\nto pass the original SMSDispatcher to the Sim/RuimSmsInterfaceManager\nconstructor.\n\nChange-Id: Ie0c6d05294778ab6ee42e0fa01313af96d824c77\n"
    },
    {
      "commit": "85a3176704b5bfbeece9bd928369fbb76eec7dc6",
      "tree": "1a84f21c037b514c5b6717b106f5a9a2c4fd6c99",
      "parents": [
        "c0b4f6d30d962d75125628317b5f5ea622531dfe"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Wed Sep 01 17:01:00 2010 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Wed Sep 08 11:50:55 2010 -0700"
      },
      "message": "Add support for secure views.\n\nAdded the MotionEvent.FLAG_WINDOW_IS_OBSCURED flag which is set by the\ninput manager whenever another visible window is partly or wholly obscured\nthe target of a touch event so that applications can filter touches\naccordingly.\n\nAdded a \"filterTouchesWhenObscured\" attribute to View which can be used to\nenable filtering of touches when the view\u0027s window is obscured.\n\nChange-Id: I936d9c85013fd2d77fb296a600528d30a29027d2\n"
    },
    {
      "commit": "3dd42334ee971ad668eb8ca97f8b363292fc828d",
      "tree": "ae6e3cda95449cde601b5911e00406c42026fe86",
      "parents": [
        "5de1d36dd0415c4cf9afdf093a4915951ef6c770"
      ],
      "author": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@android.com",
        "time": "Tue Sep 07 23:40:30 2010 -0700"
      },
      "committer": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@android.com",
        "time": "Tue Sep 07 23:40:30 2010 -0700"
      },
      "message": "Don\u0027t block in the BackupManagerService.dataChanged() Binder call.\n\nThis unnecessarily blocks callers.\n\nBug: 2977348\nChange-Id: I5267e575cdd5eb2136379f9710126b62a1bd75ad\n"
    },
    {
      "commit": "5de1d36dd0415c4cf9afdf093a4915951ef6c770",
      "tree": "c9c1a7f0c42083549c81571648126dce7a7aa8ae",
      "parents": [
        "6aec2250108b7db774643bbc088590138099adb6"
      ],
      "author": {
        "name": "Chung-yih Wang",
        "email": "cywang@google.com",
        "time": "Wed Sep 08 13:15:55 2010 +0800"
      },
      "committer": {
        "name": "Chung-yih Wang",
        "email": "cywang@google.com",
        "time": "Wed Sep 08 13:15:55 2010 +0800"
      },
      "message": "Log outbound proxy address if exists for debugging.\n\nChange-Id: I2d2dffe3536e674b6956164c400e397c2f00f212\n"
    },
    {
      "commit": "1b1601d740c34de4680ec96368002893aa5f71de",
      "tree": "3d8647636826b9d642d2d7cbf2c52f122e433ad5",
      "parents": [
        "6dc003a73f7f01aa5dd5831e777e2aa44f65b032"
      ],
      "author": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Sun Sep 05 00:26:11 2010 +0800"
      },
      "committer": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Sun Sep 05 00:26:11 2010 +0800"
      },
      "message": "SipService: unset session listener if listener is gone.\n\nChange-Id: I0b85ee7bcb32c24cf64dfc3edc40c0cad9717562\n"
    },
    {
      "commit": "e25b4bc76fef584b38ce4e72f919fba119bdfa99",
      "tree": "781dfba1a3a08ceda9d7f63071ef8490f6371f5d",
      "parents": [
        "2b136832be7326caed0c79bae418c2dd54372bea",
        "482566ed5cc7307b0401361509fb06acc5476115"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Sep 03 13:24:33 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 03 13:24:33 2010 -0700"
      },
      "message": "Merge \"These are not ready to be exposed.  Also rename them to be better.\" into gingerbread"
    },
    {
      "commit": "482566ed5cc7307b0401361509fb06acc5476115",
      "tree": "3a41c2b2301bf17dc1575d32641a8cbfaa9e7af9",
      "parents": [
        "46e63b346770efa14451b8e67b7f7636c4e5a76c"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Sep 03 12:51:28 2010 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Sep 03 12:51:28 2010 -0700"
      },
      "message": "These are not ready to be exposed.  Also rename them to be better.\n\nChange-Id: I7c234144497084b7769f8c46761b7d74d1c583d5\n"
    },
    {
      "commit": "d85621c938286a568b1173e7ab29f80ab93d27e1",
      "tree": "cd67b767301b16439d7d1dfb4cab353771ce171d",
      "parents": [
        "7755cdd69690ccbb42c6fd47b3e9c4594d4ade82"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Sep 03 09:25:33 2010 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Sep 03 11:46:19 2010 -0700"
      },
      "message": "Don\u0027t crash when extra logging is enabled.\n\nChange-Id: I76cf8db0f51ed33e91acee9636180e8d7c0b5ff9\n"
    },
    {
      "commit": "305bcbf0c961840c4505770d084a1caacc074dbb",
      "tree": "6ccdf93bd6bbc7728370f7ceefad72f4ec39ecfc",
      "parents": [
        "12da9d7472ae87b841575d5358e19f143d12f900"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Fri Sep 03 07:56:38 2010 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Fri Sep 03 09:33:34 2010 -0700"
      },
      "message": "Decrease PackageManagerService wait time for vold\n\nUp the blocking queue maximum to twice the number of containers we\nallow which should let \"asec list\" complete without blocking the thread\nseveral times.\n\nChange the threads for the NativeDaemonConnector to vold and netd to be\nmore descriptive instead of the same name.\n\nBug: 2501075\nChange-Id: I7e7949845a6c70a3d619aec0fa79ceef3c17a4be\n"
    },
    {
      "commit": "12da9d7472ae87b841575d5358e19f143d12f900",
      "tree": "69bb942ca890c1b732145b06a480bd3bced0e80c",
      "parents": [
        "b355714a2995ebe343808e06f69da5067f52a833"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Thu Sep 02 22:18:14 2010 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Thu Sep 02 22:24:06 2010 -0700"
      },
      "message": "Fix buffer compacting in NativeDaemonConnector\n\nThe buffer was being compacted in the read loop, but the start offset on\nthe compacted buffer wasn\u0027t being considered after the next read.\n\nBug: 2501075\nChange-Id: I163297d751cf800d0bbc66df66b1a0fa0785de49\n"
    },
    {
      "commit": "95b15c35608fe3ea679c8a478c6cbd841623371e",
      "tree": "42c634c71c513a3f87bde823fb79120f9ecf4e31",
      "parents": [
        "79492a0d75b0b02f11f35500f79dd3fcbc6e2211"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Thu Sep 02 22:15:26 2010 +0800"
      },
      "committer": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Thu Sep 02 22:15:26 2010 +0800"
      },
      "message": "SipService: reduce the usage of javax.sdp.*.\n\nAfter this change, SipAudioCallImpl is the only place still using it.\n\nChange-Id: I5693bffa54f9e19cbfa70b45dfcf40fba04dedbb\n"
    },
    {
      "commit": "a1c69e084b5242ad4e4a1ef2fe8d99ba259b5af4",
      "tree": "a7717db542b45f4ad8fa9dc7f22c0a663d047c6b",
      "parents": [
        "d3efa3924407da6d38aa5931ac29aa088d9eb986"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Sep 01 22:55:02 2010 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Sep 01 22:55:02 2010 -0700"
      },
      "message": "Fix a small bug when granting permissions through activity results.\n\nChange-Id: I2a5c4025fb5f566e29c219fde4d50ed2eba6e174\n"
    },
    {
      "commit": "3424c02e6b931a8bbd651ae75217bebd008b2605",
      "tree": "f8113a62a05f612a54da4c277661542edbcb9773",
      "parents": [
        "a2511da9d65b11be7f59ed3f525f77e85aeb4bef"
      ],
      "author": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Fri Aug 27 18:08:19 2010 +0800"
      },
      "committer": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Thu Sep 02 08:10:13 2010 +0800"
      },
      "message": "Add software features for SIP and VOIP\n\nand block SipService creation and SIP API if the feature is not available.\n\nChange-Id: Icf780af1ac20dda4d8180cea3e5b20e21a8350bc\n"
    },
    {
      "commit": "7c1bd7fdbf9ac539c9832693b403511b2fc7bac7",
      "tree": "94709083ad4790f053717189587c326f74c50f42",
      "parents": [
        "fca5677aeefc3b9cbaecefbb10d5ccbaff974391"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Sep 01 13:44:11 2010 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Sep 01 14:10:36 2010 -0700"
      },
      "message": "Fix logic error in downgrade of system apps\n\nA logic error would allow not deleting data when uninstalling a system\napp upgrade that\u0027s of a newer release than the on on the system\npartition. If the system app had a database upgrade and this happened,\nyou might be in trouble.\n\nLuckily it appears no one ever does this in code. You\u0027d have to manually\nget there doing:\n\nadb uninstall -k updated.system.package\n\nChange-Id: I3110fedf2d147975a0635c71898d985dd642a2c1\n"
    },
    {
      "commit": "9ee9274e5ebd131cef02d543fdb5cd1c1ae9a9f6",
      "tree": "b63990a7fd4a5a2faf88d894dab89781367265f9",
      "parents": [
        "1751086360056bc60d00f2ed2988bc82be9e7bd9"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Sep 01 13:40:57 2010 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Sep 01 13:59:02 2010 -0700"
      },
      "message": "Add null check for package settings\n\nA few lines down \"ps\" is run through a null check, so apparently there\ncould be some screwy system conditions where this is encountered. And,\nin fact, this was encountered through an updated system pacakge that\nmanaged to delete the package from /system/app during testing. It left\nthe PackageSetting in mDisabledSysPackages which would cause a deference\nof a null variable.\n\nChange-Id: Ic7faca569abd16a87a8a69c20df08c11a274a001\n"
    },
    {
      "commit": "361199b5e742c6635d4d7a03de6cf37b31cf442c",
      "tree": "170d0ba61242ba04a3491a98f894f3a2e416bbe7",
      "parents": [
        "22cd420bfa431b4ad55e699afadf109dcc54f201"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Aug 30 17:42:07 2010 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Aug 31 18:59:04 2010 -0700"
      },
      "message": "Add PackageManager API to get information about a provider component.\n\nKind-of useful when all you have is a ComponentName.\n\nChange-Id: I9a99f12daabb29e97e882e09c43ca0df70c00651\n"
    },
    {
      "commit": "6b1afebdaca6c27d49a243c4283e5e2e4924de8c",
      "tree": "da5c6e37a15b708d10ab9e5198d5f4b55c4a33f8",
      "parents": [
        "f560ceabe11b4f541c568bead61a5ec8f527151c"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Aug 31 15:40:21 2010 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Aug 31 18:51:27 2010 -0700"
      },
      "message": "Improve debug output when an ANR happens.\n\n- Collect data at better times.\n- Collect per-thread CPU usage as soon as possible after the ANR, and print\n  in log.\n- Based on new per-thread CPU usage, limit the number of processes we\n  collect stacks from to not include inactive not interesting procs.\n- Improve the way ProcessStats compute and reports its data.\n\nChange-Id: I12b17fb47d593d175be69bb792c1f57179bf4fdf\n"
    },
    {
      "commit": "8d60866e2100db70ecf0502c14768a384514d7e9",
      "tree": "514e46b4e4d58fd68cd52de93b93e7782fdf4e9f",
      "parents": [
        "bb660d7e1bed3a07a1804bd9641d9634bfaa4972"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Aug 30 03:02:23 2010 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Aug 30 18:16:43 2010 -0700"
      },
      "message": "Input device calibration and capabilities.\n\nFinished the input device capability API.\nAdded a mechanism for calibrating touch devices to obtain more\naccurate information about the touch contact area.\nImproved pointer location to show new coordinates and capabilities.\nOptimized pointer location display and formatting to avoid allocating large\nnumbers of temporary objects.  The GC churn was causing the application to\nstutter very badly when more than a couple of fingers were down).\nAdded more diagnostics.\n\nChange-Id: Ie25380278ed6f16c5b04cd9df848015850383498\n"
    },
    {
      "commit": "66fce5068a8a3aeb28aaf713843891b286a75280",
      "tree": "12b92e7b95f0251c4edb67cdab6374c58cae9608",
      "parents": [
        "2e86809b6c79375d23c0975914efc3b66e89ac90"
      ],
      "author": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@android.com",
        "time": "Mon Aug 30 18:10:49 2010 -0700"
      },
      "committer": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@android.com",
        "time": "Mon Aug 30 18:10:49 2010 -0700"
      },
      "message": "Renaming SharedPreferences$Editor.startCommit to apply\n\nAlso removes the artifical restriction that only one apply() can be in\nflight at once.  That was old from when I thought it\u0027d end up being\nrequired, but wasn\u0027t.\n\nChange-Id: I3540ea8be6e0760d6a51d218186f71655c2f3f55\n"
    },
    {
      "commit": "0ac83f5a7c05ff5b7e213e5953590bfbeb4efb43",
      "tree": "e341141f94dc0f43e8926c11bece5f671d20fab8",
      "parents": [
        "858bb4f66ea1bd9c48b9817cb44a59c8b0394229"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Mon Aug 30 15:12:24 2010 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Mon Aug 30 15:14:06 2010 -0700"
      },
      "message": "Native libraries on SD\n\n* Add native library tests during package move\n\n* Fix omission that let PackageSettings and ApplicationInfo get out of\n  sync.\n\nChange-Id: Ic4958f971cb2c9cfd270522fdc120b4031c1124a\n"
    },
    {
      "commit": "d02bdaab495641ab50e2123fdfd99a819cc40540",
      "tree": "63b4618d41b340ea2d4f01b98da2ce0ba478c032",
      "parents": [
        "7046bd924f77c54585b9e0e0c95e5edd2ceb55a3"
      ],
      "author": {
        "name": "Daniel Sandler",
        "email": "dsandler@android.com",
        "time": "Thu Aug 26 10:28:46 2010 -0400"
      },
      "committer": {
        "name": "Daniel Sandler",
        "email": "dsandler@android.com",
        "time": "Fri Aug 27 22:57:39 2010 -0400"
      },
      "message": "Remove experimental immersive mode support. DO NOT MERGE\n\nBug: 2949215\n\nChange-Id: I7d998ef571ef7e149bb96261430e92150b80b77d\n"
    },
    {
      "commit": "85387d7ba36e56b291cbde87acb5a5b2200fe01c",
      "tree": "adea29b181a25c2ffd8ecaebded62fb4d2dc1a93",
      "parents": [
        "4f8c2f26bfd9de8c8a31369dbedd415c7d6d9699"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Thu Aug 26 10:13:11 2010 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Fri Aug 27 16:40:06 2010 -0700"
      },
      "message": "Allow native shared libraries in ASEC containers\n\nThis change moves the native library handling earlier in the package\ninstallation process so that it may be inserted into ASEC containers\nbefore they are finalized in the DefaultContainerService.\n\nNote that native libraries on SD card requires that vold mount ASEC\ncontainers without the \"noexec\" flag on the mount point.\n\nChange-Id: Ib34b1886bf6f94b99bb7b3781db6e9b5a58807ba\n"
    },
    {
      "commit": "0c5a04014d3833c9a82772a832d3bc6410fc52ac",
      "tree": "79831e18eee9d29207d199499a9ece7a7068fedc",
      "parents": [
        "445ab76c49779998543bb78881f5d9f8ae81e598"
      ],
      "author": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@android.com",
        "time": "Fri Aug 27 14:01:23 2010 -0700"
      },
      "committer": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@android.com",
        "time": "Fri Aug 27 14:01:23 2010 -0700"
      },
      "message": "Send broadcast intent when configured location providers change.\n\nSee e.g. http://code.google.com/p/android/issues/detail?id\u003d10042\n\nThis is also needed by the power control widget, which has no reliable\nway otherwise of staying in-sync.\n\nChange-Id: I8f2b6b79b1843329bae952a25ea56f15e3cf92aa\n"
    },
    {
      "commit": "333b8cba996c8ebb8ca55ebfc5cc536bdd64af94",
      "tree": "1a38c262454903b6b976e4e27ce0f84160015116",
      "parents": [
        "cc033bd367a445d5e3f8de919cd155505b25274c"
      ],
      "author": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@android.com",
        "time": "Thu Aug 26 12:04:57 2010 -0700"
      },
      "committer": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@android.com",
        "time": "Fri Aug 27 09:10:11 2010 -0700"
      },
      "message": "SharedPreferences$Editor.startCommit()\n\nAdds a fire-and-forget save method (startCommit) to the\nSharedPreferences.Editor, which is the way most people use it anyway.\n\nThis commit adds the implementation.  The previous commit added the\ninterface and docs:\n\n   previous change: Idf9934b445da1fb72b79f0192218b47c0a7f5a34\n        git commit: edf32d01316bd3432c023f17747461b08ae36375\n\nIn addition, this change:\n\n-- adds a generic \"runPendingWorkFinishers\" mechanism to\n   ActivityThread to wait on async operations that are still\n   in flight and use it for this.\n\n-- ties runPendingWorkFinishers into Activity.onPause,\n   BroadcastReceiver, and Service.\n\n-- makes sSharedPreferences keyed on name, not File, to avoid\n   unnnecessary allocations\n\n-- documents and guarantees what thread\n   OnSharedPreferenceChangeListener callbacks run on\n\n-- makes a few things in frameworks/base use startCommit(), notably\n   Preference.java (which was ignoring the return value anyway)\n\nChange-Id: I1c8db60ad45643226fe6d246d3e513eeb7bd0ebd\n"
    },
    {
      "commit": "02486b1327e3007c62d253dd89ba9db1852b87f8",
      "tree": "ddf8f10dcf945aec5bbefbf0d13b936582b42de0",
      "parents": [
        "bc5d9d2254ee751ff50fb91d4560098ab5edf01f"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Aug 26 14:18:37 2010 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Aug 26 14:41:58 2010 -0700"
      },
      "message": "Hide heavy-weight API.\n\nAnd give it a better name, for when it is later un-hidden.\n\nChange-Id: Iae0d3054d44f873b9f953bc41d175a47802a185e\n"
    },
    {
      "commit": "00d1772d8cfb94066b757034055ac38897d161da",
      "tree": "2eed76948df697d9c0d45725431491599925ebe2",
      "parents": [
        "274ad9824a20b61dfbb785621567fd0414a965a4",
        "797e688b3bebbf1f50a8ad08528740b064f79153"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Thu Aug 26 12:02:51 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Aug 26 12:02:51 2010 -0700"
      },
      "message": "am 797e688b: Continue trying to make the turn off quickly after call feature work.\n\nMerge commit \u0027797e688b3bebbf1f50a8ad08528740b064f79153\u0027 into gingerbread\n\n* commit \u0027797e688b3bebbf1f50a8ad08528740b064f79153\u0027:\n  Continue trying to make the turn off quickly after call feature work.\n"
    },
    {
      "commit": "274ad9824a20b61dfbb785621567fd0414a965a4",
      "tree": "dffbfce30b4319b66d209a70170bf21b88a88708",
      "parents": [
        "cc45381e596c6d2b351d2c5e9d07f4113e1d58b6",
        "331fbdc7e9588018dac28de8b6196653cea1f08b"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Thu Aug 26 11:50:31 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Aug 26 11:50:31 2010 -0700"
      },
      "message": "Merge \"Just disable widgets that come from apps on sd cards, because they don\u0027t work anyway.\" into gingerbread"
    },
    {
      "commit": "cc45381e596c6d2b351d2c5e9d07f4113e1d58b6",
      "tree": "189e02f19be0ab3c138b3c536966e071a6677de1",
      "parents": [
        "62dbd82aad0f84c88212566321e3fb370affaf7c",
        "94258cd70438e444e139a26da12fd7e5a8782332"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Thu Aug 26 11:50:28 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Aug 26 11:50:28 2010 -0700"
      },
      "message": "Merge \"Fix typo that makes apps on sd work better with app widgets.\" into gingerbread"
    },
    {
      "commit": "797e688b3bebbf1f50a8ad08528740b064f79153",
      "tree": "1886e10e83e0cccd9de435be643a332bb1bace93",
      "parents": [
        "d5e601c2304610085e3d7a276c4bbcd984ac89f9"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Thu Aug 26 14:46:01 2010 -0400"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Thu Aug 26 14:48:56 2010 -0400"
      },
      "message": "Continue trying to make the turn off quickly after call feature work.\n\nThe previous implementation worked if the set timeout is short enough, which mine was.  This one\ncarries the remaining amount of timeout override forward through all of the countdown steps.\n\nBug: 2844990\nChange-Id: I040df22f9f9ddf98c355ac6845b7624e95f84f33\n"
    },
    {
      "commit": "913a8925c07e854a80bf5df87561f290d3a56d61",
      "tree": "37193d674462f7ff7a8287ae947246d80193ac09",
      "parents": [
        "0858806ffcb9ff34725abb79106aa1de27d1bf60"
      ],
      "author": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Thu Aug 26 21:53:41 2010 +0900"
      },
      "committer": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Thu Aug 26 22:53:07 2010 +0900"
      },
      "message": "DO NOT MERGE. Backport master InputMethodManagerService.java to gingerbread\n\nChange-Id: Ied15b4f2f447ee3e3b858d4ca65c21c30dfa4eba\n"
    },
    {
      "commit": "3003a017d312a55e3804d6cf4a80044b1f1d7993",
      "tree": "bfd0910b8bde42c17967399981b5a347069eae18",
      "parents": [
        "14e00621c81da6a0391da47afce77945b27c7231",
        "7e269644fcc319835f1e7f762f3cbd8087e3e22f"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Aug 25 22:00:28 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Aug 25 22:00:28 2010 -0700"
      },
      "message": "Merge \"Don\u0027t retain global ref to last inflated context.\" into gingerbread"
    },
    {
      "commit": "7e269644fcc319835f1e7f762f3cbd8087e3e22f",
      "tree": "03577ffff09f0d25a66f731a9def4a769f6b785a",
      "parents": [
        "50395e80718e77d27ec5e2d474b255e05de68d82"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Aug 25 19:50:20 2010 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Aug 25 21:50:54 2010 -0700"
      },
      "message": "Don\u0027t retain global ref to last inflated context.\n\nAlso rework URI permission granting to support upcoming\nclipboard use.\n\nChange-Id: I9842920350955531c5a511c2ecc5215e8c783343\n"
    },
    {
      "commit": "ea52d35e5685094f4d2cca5012239bde66f2c4fe",
      "tree": "018a3da69b5250e522632778fc1ef7cdd688a844",
      "parents": [
        "6947cc594276df899a0c4662224455f40846bd0a",
        "5424c8dcacf1c227fe7deb0185510614122ab447"
      ],
      "author": {
        "name": "Chung-yih Wang",
        "email": "cywang@google.com",
        "time": "Wed Aug 25 19:25:02 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Aug 25 19:25:02 2010 -0700"
      },
      "message": "Merge \"Add dynamic uid info for tracking the sip service usage.\" into gingerbread"
    },
    {
      "commit": "5424c8dcacf1c227fe7deb0185510614122ab447",
      "tree": "6706f881dccb2a6bc3b5f110fc95399ce541f8bc",
      "parents": [
        "231a0005654d23284ab58a2d9ea892b995988c34"
      ],
      "author": {
        "name": "Chung-yih Wang",
        "email": "cywang@google.com",
        "time": "Wed Aug 25 19:02:18 2010 +0800"
      },
      "committer": {
        "name": "Chung-yih Wang",
        "email": "cywang@google.com",
        "time": "Thu Aug 26 10:12:05 2010 +0800"
      },
      "message": "Add dynamic uid info for tracking the sip service usage.\n\nChange-Id: Ibc340401b63799326b08aee6eba602a3e753b13f\n"
    },
    {
      "commit": "6947cc594276df899a0c4662224455f40846bd0a",
      "tree": "7879b29d349d7b18230bfdce22e718391f9b7de9",
      "parents": [
        "0c490839b2d25fec99f1ae86dcebc5f21a2df8bb",
        "43b9b48f792e0b1b166af7f7fb6a32172e7f11c2"
      ],
      "author": {
        "name": "Konstantin Lopyrev",
        "email": "klopyrev@google.com",
        "time": "Wed Aug 25 17:35:50 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Aug 25 17:35:50 2010 -0700"
      },
      "message": "Merge \"Preventing the hierarchy viewer from getting stuck, once when trying to load the window data for SurfaceView and the Wallpaper, and in the case the captured node has disappeared.\" into gingerbread"
    },
    {
      "commit": "43d9ac81f7722bb539ee67023f10b9f43abbf202",
      "tree": "e81f0d385b2b5f6b7d3965c32cf6e890d750770b",
      "parents": [
        "8395b4625b96f2133e2e4f595fdc69fbe222e4fc"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Aug 25 15:06:25 2010 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Aug 25 15:09:17 2010 -0700"
      },
      "message": "Fix a fun bug with multiple service bindings from an activity.\n\nThere was a flaw in the service management, when the same activity\nis doing a bindService() for the same service IBinder.  In this case\nthe activity would correctly keep a list of all generated connections,\nhowever some other data structures would assume there is only one\nconnection per IBinder, and thus only remember the last.\n\nWhen that last connection was unbound, the service would be destroyed\nsince it thought there were no more connections.  Then when the\nactivity was finished, it would try to destroy the service again and\nend up with an ANR because the service was already gone and would\nnot respond.\n\nChange-Id: I59bde38bc24e78147b90b0a7cd525c2a1d20489f\n"
    },
    {
      "commit": "43b9b48f792e0b1b166af7f7fb6a32172e7f11c2",
      "tree": "a2b672ac91132c4e950df1a831d58b1905befca3",
      "parents": [
        "b8814dce287552c1bdf13fa999296ebc7387776d"
      ],
      "author": {
        "name": "Konstantin Lopyrev",
        "email": "klopyrev@google.com",
        "time": "Tue Aug 24 22:00:12 2010 -0700"
      },
      "committer": {
        "name": "Konstantin Lopyrev",
        "email": "klopyrev@google.com",
        "time": "Wed Aug 25 13:38:27 2010 -0700"
      },
      "message": "Preventing the hierarchy viewer from getting stuck, once when trying to load the window data for SurfaceView and the Wallpaper, and in the case the captured node has disappeared.\n\nChange-Id: Iaff6bd501a2bb3faa7a394fff740479f6a95e899\n"
    },
    {
      "commit": "331fbdc7e9588018dac28de8b6196653cea1f08b",
      "tree": "5bb617e6a33a0e5f4a39b3401ad5a20ee918a490",
      "parents": [
        "94258cd70438e444e139a26da12fd7e5a8782332"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Tue Aug 24 17:02:09 2010 -0400"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Tue Aug 24 17:02:09 2010 -0400"
      },
      "message": "Just disable widgets that come from apps on sd cards, because they don\u0027t work anyway.\n\nChange-Id: I2d7ef4a63bcbd43547e40c01e997d813cc01e800\n"
    },
    {
      "commit": "94258cd70438e444e139a26da12fd7e5a8782332",
      "tree": "1fe45cc8e4b40ea173283ec8ce4e021f5d35973f",
      "parents": [
        "2703a42d16af0e62da1bba02b6c935d98debf936"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Tue Aug 24 16:45:40 2010 -0400"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Tue Aug 24 16:45:40 2010 -0400"
      },
      "message": "Fix typo that makes apps on sd work better with app widgets.\n\nBug: 2489571\nChange-Id: Idbfb91d960b952aaf32c604b7e52592d77b5ef2e\n"
    },
    {
      "commit": "6d7346933580c107f461885dc273d7298a46b0df",
      "tree": "bfb3129492d16d5a0cd3778be0e83f776d9afe37",
      "parents": [
        "2703a42d16af0e62da1bba02b6c935d98debf936",
        "9d6b59c08e81b6cfd2db6b4f68c64c0c97a9f9ff"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Tue Aug 24 12:01:50 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Aug 24 12:01:50 2010 -0700"
      },
      "message": "Merge \"Send all Connectivity broadcasts.\" into gingerbread"
    },
    {
      "commit": "9d6b59c08e81b6cfd2db6b4f68c64c0c97a9f9ff",
      "tree": "c64eca429fb196c23aaa9f197ec5bfbcd2baf4e9",
      "parents": [
        "bccfcd95d3cc4029c1ed8514d31436a857283873"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Tue Aug 24 11:47:10 2010 -0700"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Tue Aug 24 11:47:10 2010 -0700"
      },
      "message": "Send all Connectivity broadcasts.\n\nWe were using a flag so new broadcasts replaced old.  If people are expecting\nto see all the broadcasts they sometimes would fail.\n\nbug:2892383\nChange-Id: I63df17fe8f8c68f59e1ad6297fe93e169b4463b4\n"
    },
    {
      "commit": "b9fb1705e805b7074f5ccc3bf398181706854bfb",
      "tree": "7fc7a8cbbfdffd444cbf8fa9b56353a3699b24e7",
      "parents": [
        "3e05a0beb2fad0b21558019d2adf6805da70e10e"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Aug 23 16:49:02 2010 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Aug 23 16:51:56 2010 -0700"
      },
      "message": "More watermark work.\n\nChange-Id: I1d20bc1f8679a9750b247126436e8ef7e47a77be\n"
    },
    {
      "commit": "80db4381c010c4dec74c2bf1e02380759e4ff97b",
      "tree": "1aa645f2bd3114215d197e5f52e3bae916cc0565",
      "parents": [
        "d2e5f95e0eeaff3422fde29cf6e0a91ceecfefaf",
        "fae66c3ab59c741aad631e6f2dd82b77b1d4a353"
      ],
      "author": {
        "name": "Irfan Sheriff",
        "email": "isheriff@google.com",
        "time": "Sat Aug 21 11:45:47 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Aug 21 11:45:47 2010 -0700"
      },
      "message": "Merge \"DO NOT MERGE Enable all networks on screen on\" into gingerbread"
    },
    {
      "commit": "fae66c3ab59c741aad631e6f2dd82b77b1d4a353",
      "tree": "1e66ab5fa535448f25693755af16626f2cad5d20",
      "parents": [
        "581f78615a9dc65ee264b3619ef6cdd0b0e8355c"
      ],
      "author": {
        "name": "Irfan Sheriff",
        "email": "isheriff@google.com",
        "time": "Mon Aug 16 11:36:41 2010 -0700"
      },
      "committer": {
        "name": "Irfan Sheriff",
        "email": "isheriff@google.com",
        "time": "Fri Aug 20 14:51:00 2010 -0700"
      },
      "message": "DO NOT MERGE Enable all networks on screen on\n\nConnectivity to a disabled network never happens.\nAn old dhcp issue for example prevents\nconnectivity again in future. Allow connectivity\non all networks on screen on.\n\nBug: 2129037\nChange-Id: I42afc17ddb5cd238e46d7e50f1b6e708e107b35d\n"
    },
    {
      "commit": "4b1bdc0209650436ebe0dad1020080cc891e97b6",
      "tree": "d1f8534dedef9e622c069b528bf56ca6bbd427be",
      "parents": [
        "39792d2262352ae775091876d5488d2412a2ff92",
        "8afddad7e7ce7275e26dc1ebfb359fbdd1d5920b"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Fri Aug 20 12:01:56 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Aug 20 12:01:56 2010 -0700"
      },
      "message": "Merge \"DO NOT MERGE Fixing Connectivity\" into gingerbread"
    },
    {
      "commit": "39792d2262352ae775091876d5488d2412a2ff92",
      "tree": "fb84097c6b692079492f0ea180ab47db054656e8",
      "parents": [
        "b755e3256510ecd325565d6b461d668d224445b1"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Aug 19 18:01:52 2010 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Aug 20 11:50:00 2010 -0700"
      },
      "message": "Fix bugs with granting permissions through onNewIntent().\n\nIt would grant the permission to the temporary ActivityRecord,\nnot the real one, so it never got cleaned up.\n\nAlso allow granting of permissions to services because...  well,\nit would be really really useful.  And it introduces some\nrefactoring that we\u0027ll need to support cut/paste.\n\nChange-Id: If521f509042e7baad7f5dc9bec84b6ba0d90ba09\n"
    },
    {
      "commit": "8afddad7e7ce7275e26dc1ebfb359fbdd1d5920b",
      "tree": "fefab4d60bf5654a4d638db7cf5de5dea351d4a0",
      "parents": [
        "bccfcd95d3cc4029c1ed8514d31436a857283873"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Fri Aug 20 10:01:55 2010 -0700"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Fri Aug 20 10:01:55 2010 -0700"
      },
      "message": "DO NOT MERGE Fixing Connectivity\n\nPassing Gateway addr info from telephony into ConnectivityService so it can\nadd/remove the default route as needed.  Fixed differently on master.\n\nbug:2927822\nChange-Id: I9a3ee7cd23c4717e7c60098f0595aa3f77c44b15\n"
    },
    {
      "commit": "dba514c6d8e8263d4b8f31cb2fdebfc1d4f84c35",
      "tree": "e78e03b651a0603f288f8d7fb3bda87897419264",
      "parents": [
        "271c1bfd60eaa20c3f37e685864d992e0770ac00"
      ],
      "author": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Fri Aug 20 15:22:04 2010 +0800"
      },
      "committer": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Fri Aug 20 17:24:20 2010 +0800"
      },
      "message": "SipSession: make potential time-consuming ops run on background thread\n\nhttp://b/issue?id\u003d2933071\n\nChange-Id: I0467cb5fc41bc2d6e010d20c99b7f0392fb0889e\n"
    },
    {
      "commit": "3d8c9bdbed0c31143227697bd0d94fd234fe08ad",
      "tree": "1c81b1435f758f6dbbbca210a4a14b1995714d36",
      "parents": [
        "99401b29c3f39488a058d3eb616009b751879a77"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Wed Aug 18 17:48:53 2010 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Wed Aug 18 17:48:53 2010 -0700"
      },
      "message": "Raise motion event throttle to 60Hz from 35Hz.\n\nBug: 2931575\nChange-Id: Ib8b1793addcda74b2fa6de2ce61b6133b8ffda9d\n"
    }
  ],
  "next": "99401b29c3f39488a058d3eb616009b751879a77"
}
