)]}'
{
  "log": [
    {
      "commit": "c9822c5aeae833bb4a586c7af8a7b2641e8c17ae",
      "tree": "5090feb0a367e93c2e67f1966fb02c5f7068ccbe",
      "parents": [
        "d44264a5eebbecc5ae02f9036d61b888d494e133"
      ],
      "author": {
        "name": "Wink Saville",
        "email": "wink@google.com",
        "time": "Thu Jul 14 12:23:28 2011 -0700"
      },
      "committer": {
        "name": "Wink Saville",
        "email": "wink@google.com",
        "time": "Thu Jul 14 12:23:28 2011 -0700"
      },
      "message": "Fix build.\n\nChanges in ConnectivityService in hc-LTE when merged with changes\nhappening in Master caused the build to break.\n\nChange-Id: I92a0b782ae58e9789b1e950c94ef966234fa94af\n"
    },
    {
      "commit": "76326a9d7da1e1726142be4e9c6b770aae7a90ca",
      "tree": "d112720ff869d3efcf8be8727e836e05327d7a5b",
      "parents": [
        "8c1703015eecb51c77f78b7073bcacd83f1cda56",
        "3810361e4a3e93d3c8a10aaeec54f65dfcc2d03d"
      ],
      "author": {
        "name": "Wink Saville",
        "email": "wink@google.com",
        "time": "Thu Jul 14 10:55:58 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jul 14 10:55:58 2011 -0700"
      },
      "message": "am 3810361e: am 6d1d16c3: Merge \"Remove STOPSHIP but allow seamless Handoff when possible.\" into honeycomb-LTE\n\n* commit \u00273810361e4a3e93d3c8a10aaeec54f65dfcc2d03d\u0027:\n  Remove STOPSHIP but allow seamless Handoff when possible.\n"
    },
    {
      "commit": "cadaa3a9839d152cdbdb8c3d5070d315910da5dd",
      "tree": "161b490a71a2791699d7cc6eead99c8fe3b6643c",
      "parents": [
        "c29f4e52c3377924df26910cce3ff26278d1f484",
        "ce86ba86df61de8b34b226a4eb6c23ec33e866e0"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jul 14 10:48:01 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 14 10:48:01 2011 -0700"
      },
      "message": "Merge \"Improve handling of low memory.\""
    },
    {
      "commit": "ce86ba86df61de8b34b226a4eb6c23ec33e866e0",
      "tree": "bd6a8d599da38dd78c28f82cf0575b4294ff7199",
      "parents": [
        "f7537bccb2b2ca2fa6c0205c4b24acd0836c0006"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Jul 13 19:33:41 2011 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jul 14 10:39:39 2011 -0700"
      },
      "message": "Improve handling of low memory.\n\nNow classify background processes into a set of bins of how much\nmemory they should try to clear.  The last bin also involves\ndestroying all activities in that process.\n\nRemoved the old code for the simulator that is no longer needed\n(yay).  The debugging features it had are now integrated into the\nregular oom adj code.\n\nSmall fixes to load average service.\n\nChange-Id: Ic8df401714b188c73b50dbc8f8e6345b58f1f3a0\n"
    },
    {
      "commit": "9302c8796fc4dcda08d4bd1e11733848fd4fafaf",
      "tree": "1008e3db6ba1eb6ee02b7bf8c4a648a13a0b741d",
      "parents": [
        "14fcf900ce65e5c8c952c95ee12041f8de16fbb7"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Wed Jul 13 22:51:29 2011 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Thu Jul 14 04:11:21 2011 -0700"
      },
      "message": "Refactor input dispatcher use of window/app handles.\n\nThis change moves the cached window and application input state\ninto the handle objects themselves.  It simplifies the dispatcher\nsomewhat because it no longer needs to fix up references to\ntransient InputWindow objects each time the window list is updated.\n\nThis change will also make it easier to optimize setInputWindows\nto avoid doing a lot of redundant data copying.  In principle, only\nthe modified fields need to be updated.  However, for now we\ncontinue to update all fields in unison as before.\n\nIt turns out that the input dispatcher was inappropriately retaining\npointers to InputWindow objects within the mWindows InputWindow\nvector.  This vector is copy-on-write so it is possible and the\nitem pointers to change if an editing operation is performed on\nthe vector when it does not exclusively own the underlying\nSharedBuffer.  This bug was uncovered by a previous change that\nreplaced calls to clear() and appendVector() with a simple use\nof operator\u003d which caused the buffer to be shared.  Consequently\nafter editItemAt was called (which it shouldn\u0027t have, actually)\nthe buffer was copied and the cached InputWindow pointers became\ninvalid.  Oops.  This change fixes the problem.\n\nChange-Id: I0a259339a6015fcf9113dc4081a6875e047fd425\n"
    },
    {
      "commit": "f382dc2d97e22f6bcce7aa8250d797edc616719e",
      "tree": "a2787c9916833b2bc0dd919e78246aa7aa9af8f9",
      "parents": [
        "e67ebacd15feecc359ed911a1135ffe9a633fb0d",
        "63c04eeb00dd71380d5ebba701014793d8f9a2ea"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Wed Jul 13 17:23:41 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 13 17:23:41 2011 -0700"
      },
      "message": "Merge \"Touch exploration gesture events change the window id.\""
    },
    {
      "commit": "63c04eeb00dd71380d5ebba701014793d8f9a2ea",
      "tree": "17d31cc878565bc12a184bcb5b7a9f2900b74035",
      "parents": [
        "3ac60ada279e2cd24001c0f084982b7e14532ea6"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Wed Jul 13 17:16:34 2011 -0700"
      },
      "committer": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Wed Jul 13 17:22:15 2011 -0700"
      },
      "message": "Touch exploration gesture events change the window id.\n\n1. Touch exploration start and end events are generated\n   by the sytstem to provide additional information for\n   accessibility services. Since such events do not come\n   from any particular window they whould not change the\n   id of the window that currently allows exploring its\n   content.\n\n2. Touch exploration start and end events were lealing the\n   touch explorer class wich is private.\n\nbug:5026258\n\nChange-Id: Icaf3e2bd9566716f2afb876cf8e0d50813b0c76e\n"
    },
    {
      "commit": "a1b68687de9d0048631ade3d5f4da6f08b6fe508",
      "tree": "4c510a54f2f9cfdaf759843e5dc590672ded6b3b",
      "parents": [
        "f953dee175a6c7af87c80fdcf7fe2df75e478340",
        "4161f9b30329e558868bb2b16c3e83c0b9cd26fd"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Jul 13 15:53:12 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 13 15:53:12 2011 -0700"
      },
      "message": "Merge \"Add StorageVolume list to MountService dump\""
    },
    {
      "commit": "9a79cda53b1cdb6b281fa8e8cc257f1671aba202",
      "tree": "0f886ebe22a7bd5e0fa07a60f4317796e2d7b75e",
      "parents": [
        "19d2c0b0c0f7e010b885492c83cd76cb90d2416a",
        "7926a693c4a4f4d2a2d352343bca23e189c7420d"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Wed Jul 13 15:37:21 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 13 15:37:21 2011 -0700"
      },
      "message": "Merge \"Compress the backup output stream\""
    },
    {
      "commit": "7926a693c4a4f4d2a2d352343bca23e189c7420d",
      "tree": "080c35c249e506bfbc2a89979adfccb7b474bdd1",
      "parents": [
        "995ab4caf2e392370e6dd88bd37bd2dc350f86f3"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Mon Jul 11 11:31:57 2011 -0700"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Wed Jul 13 15:30:41 2011 -0700"
      },
      "message": "Compress the backup output stream\n\nZlib compression, with a full flush between each application\u0027s\ndata.  Encryption will be performed on the already-compressed data\nonce that\u0027s implemented.\n\nOn restore, the streamed data is similarly uncompressed on the fly.\n\nChange-Id: I19b65c88e759a66527d10913d18fffa9df0bc011\n"
    },
    {
      "commit": "19d2c0b0c0f7e010b885492c83cd76cb90d2416a",
      "tree": "4befee3e178ba4926d0246d935150a2ea5504f6e",
      "parents": [
        "2d912dd5ea221ed160b12ac709aff5ec6a5b9e83",
        "62a2c8fed9cc74e9fa03871e0022205560a681a1"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Jul 13 15:28:06 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 13 15:28:06 2011 -0700"
      },
      "message": "Merge \"Control socket tagging through Settings.Secure.\""
    },
    {
      "commit": "62a2c8fed9cc74e9fa03871e0022205560a681a1",
      "tree": "9d13c3f9ed253c8145afe4e7d3317726316d38d5",
      "parents": [
        "3862096cbf4a9b6a3575fa6cc4060e02240d7fee"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Jul 13 15:24:02 2011 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Jul 13 15:25:11 2011 -0700"
      },
      "message": "Control socket tagging through Settings.Secure.\n\nWhen NetworkManagementService starts, it determines if qtaguid\nshould be enabled.  The changes pushes the enabled state to a system\nproperty to control socket tagging.\n\nChange-Id: I5697a990dbaad4b220a2fb055931b18077d07a74\n"
    },
    {
      "commit": "3810361e4a3e93d3c8a10aaeec54f65dfcc2d03d",
      "tree": "e71d2736fae96eea7c99a0266760832b519ba481",
      "parents": [
        "6dd4531639157191e6224d3f8af5c9d099ca945f",
        "6d1d16c324a681dd966d47497a71a02eac512234"
      ],
      "author": {
        "name": "Wink Saville",
        "email": "wink@google.com",
        "time": "Wed Jul 13 14:19:12 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jul 13 14:19:12 2011 -0700"
      },
      "message": "am 6d1d16c3: Merge \"Remove STOPSHIP but allow seamless Handoff when possible.\" into honeycomb-LTE\n\n* commit \u00276d1d16c324a681dd966d47497a71a02eac512234\u0027:\n  Remove STOPSHIP but allow seamless Handoff when possible.\n"
    },
    {
      "commit": "e822225f7a01ef088ff01f7613f953d5d89945ed",
      "tree": "1fc118b5a0fca7282f73d9b354947ebc57f51736",
      "parents": [
        "bc047bb03e6084ded47ffd5d810045ca973d54e5"
      ],
      "author": {
        "name": "Wink Saville",
        "email": "wink@google.com",
        "time": "Wed Jul 13 13:44:13 2011 -0700"
      },
      "committer": {
        "name": "Wink Saville",
        "email": "wink@google.com",
        "time": "Wed Jul 13 13:44:13 2011 -0700"
      },
      "message": "Remove STOPSHIP but allow seamless Handoff when possible.\n\nIf an address is removed we must reset the connection but\nonly for the connections associated with that address. For\nnow we\u0027re doing the \"all\" addresses for a type (IPv6 or IPv4)\nin the future we only need to reset a particular addresses\nconnections.\n\n\nBug: 4981919\nChange-Id: I97f8071a3ed6f827ed22f32216ca5011bfe6c1d9\n"
    },
    {
      "commit": "4161f9b30329e558868bb2b16c3e83c0b9cd26fd",
      "tree": "6b1d79f9724976522ee6c5fdba7bca73e9ec2d93",
      "parents": [
        "8c55a9a57e4f13ec420c3de7b3abfdcf454f6633"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Jul 13 09:48:33 2011 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Jul 13 09:48:33 2011 -0700"
      },
      "message": "Add StorageVolume list to MountService dump\n\nChange-Id: If2be6e420d9671032d2e7a66c71a6733e6e48ac8\n"
    },
    {
      "commit": "de033beae43567c2a2d1f3b1cac4770f38de7ea3",
      "tree": "46b6a0c00446484db03bb97f4c8724255f9e97d4",
      "parents": [
        "948d9fef895de12202d15d78df0e3ae2d54dbf48",
        "3fd13eb6322e09f1ffe5476e28d55732da391151"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Wed Jul 13 07:34:29 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 13 07:34:29 2011 -0700"
      },
      "message": "Merge \"UsbDeviceManager: clean up HandlerThread creation\""
    },
    {
      "commit": "3fd13eb6322e09f1ffe5476e28d55732da391151",
      "tree": "acd35e05650253a5d49d31e31ec642f688b0de52",
      "parents": [
        "5292a9d0a096ff946810c0f13ce1a1b76fee7dcd"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Wed Jul 13 09:23:45 2011 -0400"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Wed Jul 13 09:39:54 2011 -0400"
      },
      "message": "UsbDeviceManager: clean up HandlerThread creation\n\nChange-Id: I84683b1753fcf3c3b501f8a506d6d890edf2eb37\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "434962e44ea93b1c4d216c55f636a435bf54aa54",
      "tree": "582235f79936fc76b59fb17bae16dbc29f2ff5fd",
      "parents": [
        "f0c3b1b6b7fd2b851851c96d98d2f9a77415bf43"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Jul 12 20:20:56 2011 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Jul 12 20:20:56 2011 -0700"
      },
      "message": "Include full network history around current time.\n\nWhen requesting historical values with time ranges, always include\nfull values for buckets that span current time.  (It doesn\u0027t make\nsense to interpolate partial data.)  Move getTotalData() to return\nfull Entry objects to prepare for packet counts.\n\nBug: 4691901\nChange-Id: I717bd721be9f1d4a47c4121e46e07a56cb15bbf1\n"
    },
    {
      "commit": "d37948f6ed1667d077e0e3a38808f42f981ddcc2",
      "tree": "1eff89e7cfde89a728d4019df9c311e1094b3b01",
      "parents": [
        "1ea4cc64643afb987ad42630eb146b4585647d0a"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Jul 12 13:57:00 2011 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Jul 12 13:57:06 2011 -0700"
      },
      "message": "Hide NetworkStatsHistory internals.\n\nInstead of exposing internal storage details, offer getValues()\naccessor which populates values into a recycled structure.\n\nChange-Id: I5228d7099a8f61b2018a435a813435a67dae49b4\n"
    },
    {
      "commit": "1ea4cc64643afb987ad42630eb146b4585647d0a",
      "tree": "f5f99159e1ebbb84782c074ffd8d1ff35c3b5575",
      "parents": [
        "eb982f3991c43da52bc202929b1f70d2e3320d1c",
        "fd8be3e5e7420f3cca591daeec8a44487f5f65aa"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Jul 12 11:09:09 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 12 11:09:09 2011 -0700"
      },
      "message": "Merge \"Return stats from inactive ifaces, packet counts.\""
    },
    {
      "commit": "622c03e6cfdd37c05f225434e5b07f8db7d4521e",
      "tree": "23f799992106f3e2678903863062fc1b6936f790",
      "parents": [
        "6df76aa9f12b8c12dcf0c11d7bd03df66dae112e",
        "9fc033083267d0c7f01e083400721b6cddb3a398"
      ],
      "author": {
        "name": "Mark Brophy",
        "email": "mbrophy@google.com",
        "time": "Tue Jul 12 02:57:16 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 12 02:57:16 2011 -0700"
      },
      "message": "Merge \"Expose app resume times to the ApplicationProvider.\""
    },
    {
      "commit": "6df76aa9f12b8c12dcf0c11d7bd03df66dae112e",
      "tree": "6f14f2484bb59386a5159bc326ba31577cd0a6d7",
      "parents": [
        "e230189444f9baa2f443193030c31a16016d760c",
        "683e2383c8549f95e00bade15daed3dbddf13950"
      ],
      "author": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Mon Jul 11 22:12:59 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 11 22:12:59 2011 -0700"
      },
      "message": "Merge \"Change IME picker dialog from Activity to Broadcast\""
    },
    {
      "commit": "0870e814679b4cb4e2c74c7225a9414650a1c7c8",
      "tree": "a7cab145d5ce67e58798294d33297da4779b6da6",
      "parents": [
        "5a8eccbfb922701023d1dc1a28a70be4421ec67e",
        "7c34f29c8a8abb91da09cdc426d8466eb954713a"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Mon Jul 11 16:47:25 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 11 16:47:25 2011 -0700"
      },
      "message": "Merge \"Fix wifi tethering.\""
    },
    {
      "commit": "683e2383c8549f95e00bade15daed3dbddf13950",
      "tree": "7f3dec6ac11e4e70d564fd5b1fe3ff01d73a6185",
      "parents": [
        "f25a8ce4a6a1025156d2977c7ddd37d4a01a5e71"
      ],
      "author": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Tue Jul 12 08:28:52 2011 +0900"
      },
      "committer": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Tue Jul 12 08:28:52 2011 +0900"
      },
      "message": "Change IME picker dialog from Activity to Broadcast\n\nChange-Id: I4822899f34a2951d2f2a1258d1adcc7d8fccbb12\n"
    },
    {
      "commit": "9f845cff9b72b27eadb55298bdcf0104599f9385",
      "tree": "406762d846ccd12c9bd70a677cfb534d1904550c",
      "parents": [
        "801525ceccf3b8d68b9b561116a734598c52c547",
        "3f9dd287b99340efaaa257759e71a8f81b2ed113"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Jul 11 16:00:11 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 11 16:00:11 2011 -0700"
      },
      "message": "Merge \"Increase activity timeouts when using a wrapper process.\""
    },
    {
      "commit": "3f9dd287b99340efaaa257759e71a8f81b2ed113",
      "tree": "b846ac2f0995f0b13474e5186d571c7ec0c02980",
      "parents": [
        "5623b074977d55a61f29099f44670916c6282e51"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Jul 08 20:02:19 2011 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Jul 11 15:57:15 2011 -0700"
      },
      "message": "Increase activity timeouts when using a wrapper process.\n\nThis patch enables the Zygote to tell the ActivityManager when\nit has started a process with a wrapper attached so that the\nActivityManager can allow it extra time to start up or process\nevents.\n\nThis is useful when wrapping an app with Valgrind or other tools\nwhich add significant runtime overhead.\n\nBug: 4584468\nChange-Id: I5db6f2f15cd30b0ec40f547d2fadfa216de2926d\n"
    },
    {
      "commit": "801525ceccf3b8d68b9b561116a734598c52c547",
      "tree": "97a0b02016514c4b68a636f619d26cc307dc18ad",
      "parents": [
        "8f540d4d02fa32833dbb96410ffec797ae7841b7",
        "6ea146c239f2468563b4e8766b446d14ae4a1ff5"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Mon Jul 11 15:52:30 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 11 15:52:30 2011 -0700"
      },
      "message": "Merge \"UsbDeviceManager: Include kernel USB state in dumpsys output\""
    },
    {
      "commit": "8f540d4d02fa32833dbb96410ffec797ae7841b7",
      "tree": "608f17abafc811292ae30ffbe1ba390046b5d248",
      "parents": [
        "ac7f69bac34e6fbfc497cbb8f3f5a060bc70df6d",
        "c264afeb5528733a215a472e761b51cc59bba454"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Mon Jul 11 15:52:06 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 11 15:52:06 2011 -0700"
      },
      "message": "Merge \"UsbDeviceManager: Initialize state based on persist.sys.usb.config rather than current kernel state\""
    },
    {
      "commit": "7c34f29c8a8abb91da09cdc426d8466eb954713a",
      "tree": "6e9b026d476e294c45a109a572d4be858fbb3497",
      "parents": [
        "c478f13535f7bb3ea03aa9c01932290f9c13902c"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Mon Jul 11 15:16:32 2011 -0700"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Mon Jul 11 15:24:43 2011 -0700"
      },
      "message": "Fix wifi tethering.\n\nThe new link-status netlink monitor is a bit chatty and we were getting race conditions.\nThe wl0.1 soft-ap interface was getting created, but in the off state.  We would report\nit available (link-added always reports it) causing wifi to start tethering, but then\nwe\u0027d sometimes get a link-status-down notification and a link-status-up, causing wifi\nto freak out with these two requests.\n\nThe simple fix was to not listen to the new link-status notifications.  This should be\nredesigned in the future.\nbug:4983942\n\nChange-Id: Ica4f34d8bf2a07fc19b35a1e15283a7f8022165e\n"
    },
    {
      "commit": "6ea146c239f2468563b4e8766b446d14ae4a1ff5",
      "tree": "304f448136895c46863a0c800ac6758467c14944",
      "parents": [
        "c264afeb5528733a215a472e761b51cc59bba454"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Sun Jul 10 12:01:16 2011 -0400"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Mon Jul 11 18:23:44 2011 -0400"
      },
      "message": "UsbDeviceManager: Include kernel USB state in dumpsys output\n\nChange-Id: Ia7f015057e24f376e285a40e583644f9d0b9213e\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "c264afeb5528733a215a472e761b51cc59bba454",
      "tree": "9ae0e1faec3c123d8437e4cecd7a87b2fb19d435",
      "parents": [
        "d44e1b6033eed29718f2e7e3540e4884929941a5"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Sun Jul 10 11:48:18 2011 -0400"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Mon Jul 11 18:23:44 2011 -0400"
      },
      "message": "UsbDeviceManager: Initialize state based on persist.sys.usb.config rather than current kernel state\n\nThis makes it more robust when recovering from runtime restarts\n\nBug: 4986841\n\nChange-Id: I54b94213447130ca881c66da2d0ce490242f0c96\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "fd8be3e5e7420f3cca591daeec8a44487f5f65aa",
      "tree": "a19cda042b7d7d40e0db95fb7c758562316b101d",
      "parents": [
        "ddafb64f94053aeafcaf6b6cb6073ed4cb56dacb"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Jul 11 14:36:15 2011 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Jul 11 14:39:56 2011 -0700"
      },
      "message": "Return stats from inactive ifaces, packet counts.\n\nWhen an iface goes inactive, xt_qtaguid maintains historical counters\ninstead of discarding.  Now reading and returning those values in\nNetworkManagementService summary calls.  Tests to verify stats are\nreturned.\n\nModify NetworkStats to include rxPackets and txPackets values, and\nmove to Entry to eventually hide internal storage details.\n\nBug: 4984539\nChange-Id: I1ba0bb5580c62e946d9dff2cc2a6f64aff403efc\n"
    },
    {
      "commit": "f25a8ce4a6a1025156d2977c7ddd37d4a01a5e71",
      "tree": "7fe6f3c179b57467c60c6e4cf6cefe42151693ac",
      "parents": [
        "3282703f1200a8cff91d994b3cfe3ec38d3b41cc",
        "5d6d90fac8fa646521081c7b67aabaadb5db946b"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Jul 11 13:41:26 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 11 13:41:26 2011 -0700"
      },
      "message": "Merge \"Remove more simulator support code. Bug: 5010576\""
    },
    {
      "commit": "501c4671e73a484c1f01d94f4f5fff124c05f197",
      "tree": "2c2f30011f0828af0425d5fc46aa007c9edb22f5",
      "parents": [
        "9b40a61ce98b6adce4df046fce8d67d64630b379",
        "10e89712863f5b91a2982dc1783fbdfe39c1485d"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Jul 11 13:37:53 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 11 13:37:53 2011 -0700"
      },
      "message": "Merge \"Eliminate single-process mode. Bug: 5010576\""
    },
    {
      "commit": "5d6d90fac8fa646521081c7b67aabaadb5db946b",
      "tree": "289c88bab5ba9d94f7db328dc95db845493a140b",
      "parents": [
        "10e89712863f5b91a2982dc1783fbdfe39c1485d"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Jul 11 13:04:53 2011 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Jul 11 13:33:22 2011 -0700"
      },
      "message": "Remove more simulator support code.\nBug: 5010576\n\nChange-Id: Ie6c8665306bf4e822693b76f25c3a0f05c12d42d\n"
    },
    {
      "commit": "ce060f722a65b379805e81b5292253265d823ed1",
      "tree": "7fe07761afeaa2ad2a742552bc8148703e870655",
      "parents": [
        "e6d24ab6a96549940cf832fe8c86710f2f07631c",
        "abc4ac6d48c52bd8b69026441bf261e5c68c24f4"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Mon Jul 11 10:41:52 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 11 10:41:52 2011 -0700"
      },
      "message": "Merge \"UsbDeviceManager: Fix indentation\""
    },
    {
      "commit": "e6d24ab6a96549940cf832fe8c86710f2f07631c",
      "tree": "94f66cd4f57341ab5d6a16d9d64366d36c5d35e0",
      "parents": [
        "f81673d7670cb1978933a1599de7a2cb39f58b38",
        "7a59dd2ce33b46cbc73eef964ddb4272ea1da8d1"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Mon Jul 11 10:41:08 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 11 10:41:08 2011 -0700"
      },
      "message": "Merge \"MTP: Return error if user tries to copy a file \u003e\u003d 4GB to a FAT32 file system\""
    },
    {
      "commit": "abc4ac6d48c52bd8b69026441bf261e5c68c24f4",
      "tree": "28f6916a8d576e719893618f86da35957c522ca2",
      "parents": [
        "7a59dd2ce33b46cbc73eef964ddb4272ea1da8d1"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Mon Jul 11 10:34:35 2011 -0400"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Mon Jul 11 13:40:08 2011 -0400"
      },
      "message": "UsbDeviceManager: Fix indentation\n\nChange-Id: I3eb1d407bdb4bf885d1765eedbfb30555f558b3b\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "7a59dd2ce33b46cbc73eef964ddb4272ea1da8d1",
      "tree": "62b6fa4be7f8904e07742a03f82cdf4b680b02ef",
      "parents": [
        "b7440a140b650932bf31cf51d3b87c3249e3b682"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Mon Jul 11 09:18:03 2011 -0400"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Mon Jul 11 13:40:02 2011 -0400"
      },
      "message": "MTP: Return error if user tries to copy a file \u003e\u003d 4GB to a FAT32 file system\n\nBug: 4561836\n\nChange-Id: I2bffb93b032038f6c220c24c752ccd7ca66c23a0\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "104344e507610be42fb70c7deda3c422c543bfcb",
      "tree": "cd148215e2082c2a21781e16de495fedde425abd",
      "parents": [
        "b7440a140b650932bf31cf51d3b87c3249e3b682"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Sun Jul 10 14:20:41 2011 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Sun Jul 10 14:25:18 2011 -0700"
      },
      "message": "Cached NTP time for system services.\n\nUses NTP server and timeout from secure settings, or fallback to\ndefaults in resources.  Update various system services to use cached\nNTP time when fresh enough, or force updates as needed.\n\nBug: 4517273\nChange-Id: Ie1c4c4883836013d02ca0bbd850cf8949f93b34b\n"
    },
    {
      "commit": "9fc033083267d0c7f01e083400721b6cddb3a398",
      "tree": "a9447c4c649d0d37a4f450188015efd5956ce0b2",
      "parents": [
        "b7440a140b650932bf31cf51d3b87c3249e3b682"
      ],
      "author": {
        "name": "Mark Brophy",
        "email": "mbrophy@google.com",
        "time": "Fri Jul 01 16:56:24 2011 +0100"
      },
      "committer": {
        "name": "Mark Brophy",
        "email": "mbrophy@google.com",
        "time": "Sun Jul 10 21:19:23 2011 +0100"
      },
      "message": "Expose app resume times to the ApplicationProvider.\n\nAdd ActivityManager.getAllPackageUsageStats which returns\nthe PkgUsageStats object for all packages.\n\nIn UsageStatsService, remember the last resume time of each component, and\nadd that info to PkgUsageStats instances.\n\nApplicationProvider will use getAllPackageUsageStats and the new field\nin PkgUsageStats to set the new SearchManager column\nSUGGEST_COLUMN_LAST_USAGE_HINT for requests with the GLOBAL_SEARCH\npermission.\n\nChange-Id: I80e9b127410ed0d528515d2256787f30a953e9b0\n"
    },
    {
      "commit": "10e89712863f5b91a2982dc1783fbdfe39c1485d",
      "tree": "7a268e40e03cfb2b65d3764b73d0ea42172965fa",
      "parents": [
        "b7440a140b650932bf31cf51d3b87c3249e3b682"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Jul 08 18:52:57 2011 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Jul 08 19:54:07 2011 -0700"
      },
      "message": "Eliminate single-process mode.\nBug: 5010576\n\nChange-Id: Id450dc83efed4897d1e4ff451530fed14457aace\n"
    },
    {
      "commit": "b7440a140b650932bf31cf51d3b87c3249e3b682",
      "tree": "4ed1adf780119f7c13e109d1baac761654f4e784",
      "parents": [
        "e25bb44c1c8d47b6e15e535bfa59e27a2f77735a",
        "e1dfcb7ab01fb991079ec1f70f75281a0ca9073e"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jul 08 18:11:41 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 08 18:11:41 2011 -0700"
      },
      "message": "Merge \"Pass the targetSdkVersion through to the zygote-forked dalvik.\""
    },
    {
      "commit": "0d171a66a4e14fad006e6dc8bd82d58c2e331d3d",
      "tree": "b4442b927bda90433a023edeb00f726d546bb0c2",
      "parents": [
        "bc2861fdbbd94548513246f74f994cfc99f95004",
        "ae367419df6e5f55b081fa793b535cc84b55d6ed"
      ],
      "author": {
        "name": "Wink Saville",
        "email": "wink@google.com",
        "time": "Fri Jul 08 17:48:37 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 08 17:48:37 2011 -0700"
      },
      "message": "Merge \"resolved conflicts for merge of e4a56a32 to master\""
    },
    {
      "commit": "e1dfcb7ab01fb991079ec1f70f75281a0ca9073e",
      "tree": "86d0d94a84ba79bc22b1f16b270d70b842756a20",
      "parents": [
        "4a6d113ba0f33ce5dc14e59463e928ba309e1c2e"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jul 08 11:08:07 2011 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jul 08 16:54:16 2011 -0700"
      },
      "message": "Pass the targetSdkVersion through to the zygote-forked dalvik.\n\nThis will let dalvik implement backwards-compatibile behaviors based on\nan app\u0027s targetSdkVersion.\n\nBug: 4772166\nChange-Id: I935c5ea9144e8b4e6e21089547287486e2234b7f\n"
    },
    {
      "commit": "ae367419df6e5f55b081fa793b535cc84b55d6ed",
      "tree": "568e082e01824caffc42baaa06ed9195bd08c551",
      "parents": [
        "d5cabff96af60d90e197007737ff04e4087f1010",
        "e4a56a32ac243dad5e7fa33c5de4777d9a4b8162"
      ],
      "author": {
        "name": "Wink Saville",
        "email": "wink@google.com",
        "time": "Fri Jul 08 12:49:14 2011 -0700"
      },
      "committer": {
        "name": "Wink Saville",
        "email": "wink@google.com",
        "time": "Fri Jul 08 12:49:14 2011 -0700"
      },
      "message": "resolved conflicts for merge of e4a56a32 to master\n\nChange-Id: I50f8fe61303efa78f5d450ddda1483e0ecb81d12\n"
    },
    {
      "commit": "284f1bb4daf77f7e6b688c0936dd4a31ec2e7c74",
      "tree": "d651aa41ee14b9137285163166b391badfe4cbe2",
      "parents": [
        "1d19c18f9bd66b2b4883f8ce33c04ff5c87dd881"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Thu Jul 07 14:31:18 2011 -0700"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Fri Jul 08 12:28:48 2011 -0700"
      },
      "message": "Can now restore a subset of apps from historical dataset\n\nAdds the ability to filter a restore of an historical dataset so that it\nonly restores certain apps\u0027 data regardless of what is actually present\nin the dataset.  This is currently only used by the bmgr command-line tool,\nfor debugging / developer support.\n\nBug 2021590\n\nChange-Id: I7685e5d609b0f5506f71d70c26410602bb387659\n"
    },
    {
      "commit": "e4a56a32ac243dad5e7fa33c5de4777d9a4b8162",
      "tree": "b70d0f122b143843a4a99c741e9017af7f1b4470",
      "parents": [
        "a736cd54e1de62e84a7a49a3c68c56fc6d9bfc00",
        "8171e6f690cca1bad354e7e352823d79d420daf3"
      ],
      "author": {
        "name": "Wink Saville",
        "email": "wink@google.com",
        "time": "Fri Jul 08 09:40:08 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jul 08 09:40:08 2011 -0700"
      },
      "message": "am 8171e6f6: Use resetConnections with resetMask.\n\n* commit \u00278171e6f690cca1bad354e7e352823d79d420daf3\u0027:\n  Use resetConnections with resetMask.\n"
    },
    {
      "commit": "8171e6f690cca1bad354e7e352823d79d420daf3",
      "tree": "856ae1012fb812bcf7182f65f1ecfdd2614f0e5e",
      "parents": [
        "848aa3ab8a00835c5af2ead954c7736e507249b5"
      ],
      "author": {
        "name": "Wink Saville",
        "email": "wink@google.com",
        "time": "Thu Jul 07 16:17:06 2011 -0700"
      },
      "committer": {
        "name": "Wink Saville",
        "email": "wink@google.com",
        "time": "Thu Jul 07 16:17:06 2011 -0700"
      },
      "message": "Use resetConnections with resetMask.\n\nBug: 4981919\nChange-Id: I5dec2da0756d5083bc81494fd583672704537694\n"
    },
    {
      "commit": "cb925e7a563d06dde5273b73033822a3bae0d4db",
      "tree": "ace6b77264ab58395dc8e835de0e7636fb92aae5",
      "parents": [
        "1574bb7e204f5691f46ca9c881a09d747071eeba",
        "28637bacfdde4b2b110462c97fdd52854c5288d5"
      ],
      "author": {
        "name": "Jim Miller",
        "email": "jaggies@google.com",
        "time": "Thu Jul 07 14:35:18 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 07 14:35:18 2011 -0700"
      },
      "message": "Merge \"Fix 4689527: Fix rendering issue with thumbnails on phones\""
    },
    {
      "commit": "28637bacfdde4b2b110462c97fdd52854c5288d5",
      "tree": "6e895c271f58fb1a971b710c71998678173ed02c",
      "parents": [
        "f03712bf540db15d0594b848e63c207fd50e9379"
      ],
      "author": {
        "name": "Jim Miller",
        "email": "jaggies@google.com",
        "time": "Wed Jul 06 19:57:05 2011 -0700"
      },
      "committer": {
        "name": "Jim Miller",
        "email": "jaggies@google.com",
        "time": "Thu Jul 07 14:26:32 2011 -0700"
      },
      "message": "Fix 4689527: Fix rendering issue with thumbnails on phones\n\nThis fixes a bug where the phone thumbnail scale was being miscalculated\nfor the square aspect of thumbnails on phones.  The code now constrains\nthumbnails to fit the smaller of screen width and screen height.\n\nChange-Id: I174abacd4cf3dcf124e10fe8980fb01fe299ec6a\n"
    },
    {
      "commit": "d5299ff39aa7532c0213978fc0a95e08c3a77deb",
      "tree": "27f1c59dc49b2057d261b38d6109a5beca295c34",
      "parents": [
        "1a65b441b127e66c0fae2e04e6f88628a6363209",
        "37dbfcaf836cf37d1e404cd2cf25f4ed670bc80f"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Jul 07 08:46:09 2011 -0700"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Jul 07 08:46:09 2011 -0700"
      },
      "message": "Merge 37dbfcaf\n\nChange-Id: Iae55ecada8dc231c88bb87b32e8bd5e7b6a47bd0\n"
    },
    {
      "commit": "6d815e9dd00a5cb36554acb7b2f76f47c03cd7cf",
      "tree": "661e9753c844e8c6e2a475a1c21b0eb2ec1991c0",
      "parents": [
        "ed61ee1fae260011ebfdb4e61e5edd319debb6c2",
        "a7bc1135c270fd4a84ab7ad45b7194e9b580300e"
      ],
      "author": {
        "name": "Irfan Sheriff",
        "email": "isheriff@google.com",
        "time": "Wed Jul 06 22:08:38 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 06 22:08:38 2011 -0700"
      },
      "message": "Merge \"Moved WifiWatchdogService and DnsPinger\""
    },
    {
      "commit": "ed61ee1fae260011ebfdb4e61e5edd319debb6c2",
      "tree": "87da784e97ff1d8c4304de0e946686a786a57d42",
      "parents": [
        "269318760f1719bccd2f810226e6755b170d4213",
        "ae07ecf3766c38af1c12822458b98036b28bd4c0"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Jul 06 18:11:20 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 06 18:11:20 2011 -0700"
      },
      "message": "Merge \"Add the \"debug.jni.logging\" property so third-party developers can debug their JNI problems.\""
    },
    {
      "commit": "269318760f1719bccd2f810226e6755b170d4213",
      "tree": "a70e1c5c8e8b08d1599d793608ad79308d642d57",
      "parents": [
        "c59214ff3ef2fbb2d069305f8b52ade6346f4609",
        "629b149ff584bc247f68014a676101d1d5787d27"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Wed Jul 06 17:54:08 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 06 17:54:08 2011 -0700"
      },
      "message": "Merge \"UsbDeviceManager: Initialize RNDIS ethernet address based on device serial number\""
    },
    {
      "commit": "ae07ecf3766c38af1c12822458b98036b28bd4c0",
      "tree": "b8205305fd7ed12016101ee81c498dddafdfd179",
      "parents": [
        "a0c26920b69a290869c44f97b1916506ee8d0a91"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Jul 06 17:33:27 2011 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Jul 06 17:33:27 2011 -0700"
      },
      "message": "Add the \"debug.jni.logging\" property so third-party developers can debug their JNI problems.\n\nThis turns on the super-verbose but indispensible logging of all native method\ncalls and all calls to JNI functions (for third-party code only). In particular,\nif you have a local reference bug, you can search for the reference given in\nthe crash and see exactly where it came from. In every case I\u0027ve seen so far,\nthat\u0027s pinpointed the bug exactly.\n\nChange-Id: Ifb7ba02ae637bdd53cd8500febdcb9d4d7799bda\n"
    },
    {
      "commit": "c59214ff3ef2fbb2d069305f8b52ade6346f4609",
      "tree": "4768da373b13c430609073e87468c165510e8cac",
      "parents": [
        "7b3fd1a53d43b9ef804bf3fa2d53b6d83df86c84",
        "e8f95352cf4fd2bb38fd124bf5fcefddddeb0692"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Wed Jul 06 17:27:21 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 06 17:27:21 2011 -0700"
      },
      "message": "Merge \"Addressing comments during security review of the interrogation feature.\""
    },
    {
      "commit": "e8f95352cf4fd2bb38fd124bf5fcefddddeb0692",
      "tree": "43260fed51d6d725bbbe802457955ce35831fbc5",
      "parents": [
        "2da9eb7175e59a4ad8b9cec185f9cfdf8e075859"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Wed Jul 06 17:24:03 2011 -0700"
      },
      "committer": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Wed Jul 06 17:24:54 2011 -0700"
      },
      "message": "Addressing comments during security review of the interrogation feature.\n\n1. Pretty much minor fixes for improving readability.\n\nChange-Id: I76efdcc574af9a277b54eeb9fb5caf34948fcfde\n"
    },
    {
      "commit": "79ec80db70d788f35aa13346e4684ecbd401bd84",
      "tree": "fd18f64033def7461692f9542bf9e5f01afe2fe0",
      "parents": [
        "be87cc945b5b094060cbc77b77383aefc60265e4"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Fri Jun 24 14:58:49 2011 -0700"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Wed Jul 06 14:40:32 2011 -0700"
      },
      "message": "Make full backup API available to apps\n\nNew methods for full backup/restore have been added to BackupAgent\n(still hidden): onFullBackup() and onRestoreFile().  The former is the\nentry point for a full app backup to adb/socket/etc: the app then writes\nall of its files, entire, to the output.  During restore, the latter\nnew callback is invoked, once for each file being restored.\n\nThe full backup/restore interface does not use the previously-defined\nBackupDataInput / BackupDataOutput classes, because those classes\nprovide an API designed for incremental key/value data structuring.\nInstead, a new FullBackupDataOutput class has been introduced, through\nwhich we restrict apps\u0027 abilities to write data during a full backup\noperation to *only* writing entire on-disk files via a new BackupAgent\nmethod called fullBackupFile().\n\n\"FullBackupAgent\" exists now solely as a concrete shell class that\ncan be instantiated in the case of apps that do not have their own\nBackupAgent implementations.\n\nAlong with the API change, responsibility for backing up the .apk\nfile and OBB container has been moved into the framework rather than\nhave the application side of the transaction do it.\n\nChange-Id: I12849b06b1a6e4c44d080587c1e9828a52b70dae\n"
    },
    {
      "commit": "a7bc1135c270fd4a84ab7ad45b7194e9b580300e",
      "tree": "ccde642a2b28cb3fc18469a1cdd0b9187e87c2fd",
      "parents": [
        "e58e9b8c8297dc9ae407c132d0f0983e63be46f0"
      ],
      "author": {
        "name": "Isaac Levy",
        "email": "ilevy@google.com",
        "time": "Wed Jul 06 13:54:48 2011 -0700"
      },
      "committer": {
        "name": "Isaac Levy",
        "email": "ilevy@google.com",
        "time": "Wed Jul 06 13:54:48 2011 -0700"
      },
      "message": "Moved WifiWatchdogService and DnsPinger\n\n- Moved WWS and DnsPinger in prep for StateMachine rewrite\n intent.\n\nChange-Id: I912ca80d31ee2ded99eb345a2e5a55d01bd9910c\n"
    },
    {
      "commit": "629b149ff584bc247f68014a676101d1d5787d27",
      "tree": "fabbb74668a314ea808bbe8944e02c02f85ecb6c",
      "parents": [
        "2da9eb7175e59a4ad8b9cec185f9cfdf8e075859"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Wed Jul 06 12:47:21 2011 -0400"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Wed Jul 06 12:52:49 2011 -0400"
      },
      "message": "UsbDeviceManager: Initialize RNDIS ethernet address based on device serial number\n\nChange-Id: I4775e5d8350385777f70f1b28ac00aa22dbd9487\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "2776f6975d135a2eb5ae043f5ef6a4faa14ab520",
      "tree": "00e2760d14a838294ec028a2c2f21c231bedbfa7",
      "parents": [
        "a2e66343b605e76b825ca4df74da0c782b7eb718",
        "c50bff85281fa9661310465e88fd62890ccc9240"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Wed Jul 06 07:59:47 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 06 07:59:47 2011 -0700"
      },
      "message": "Merge \"UsbService: USB connected notification now redirects to USB screen in Settings\""
    },
    {
      "commit": "37dbfcaf836cf37d1e404cd2cf25f4ed670bc80f",
      "tree": "80ef6ef90c6aed3449334b60e9f9cf85f3072d4d",
      "parents": [
        "c0c07d4ff689a6050ef368933b9c53283a01520a",
        "7022db4cd2ca3721631595d7379eabb2cc77f6a9"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Wed Jul 06 07:48:21 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jul 06 07:48:21 2011 -0700"
      },
      "message": "am 7022db4c: am 2b62c4fb: am 38bb0123: Merge \"Added methods to support dns cache per interface\"\n\n* commit \u00277022db4cd2ca3721631595d7379eabb2cc77f6a9\u0027:\n  Added methods to support dns cache per interface\n"
    },
    {
      "commit": "2b62c4fbfeb7df0988bf216c50cd4a24f05add9f",
      "tree": "1338a0e92ca08e5c9ea15cd0d887d6fb65f75544",
      "parents": [
        "9f2cbf14f8d79e6ed48ff9d76f6aaede45185418",
        "38bb0123b8b9857c3119fd359739daf872f619d6"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Wed Jul 06 07:35:02 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jul 06 07:35:02 2011 -0700"
      },
      "message": "am 38bb0123: Merge \"Added methods to support dns cache per interface\"\n\n* commit \u002738bb0123b8b9857c3119fd359739daf872f619d6\u0027:\n  Added methods to support dns cache per interface\n"
    },
    {
      "commit": "0e7d7d632309409e2bc51d5317cf7a92a7541433",
      "tree": "11d50dc576f559345009f57906f136a75c1cec0b",
      "parents": [
        "0d244a6fead28ca140bfd6dd42ef0339da752e36"
      ],
      "author": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Tue Jul 05 13:28:06 2011 +0900"
      },
      "committer": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Tue Jul 05 13:32:15 2011 +0900"
      },
      "message": "Fix NPE in getLastInputMethodSubtype\n\nBug: 4991393\nChange-Id: I4ced2a2ca4815c7cee84a72dc6131fb8c4ee7216\n"
    },
    {
      "commit": "2e46764a707bd14cad22bc179669eeecb2d7c647",
      "tree": "a68f491c49848e922d81b3ece63c289008b1bec4",
      "parents": [
        "c2b8aa0b4c822b0e307f62131650f4a6ee89bb66"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Mon Jul 04 03:23:12 2011 -0700"
      },
      "committer": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Mon Jul 04 03:23:12 2011 -0700"
      },
      "message": "VPN: implement status report for legacy VPN.\n\nChange-Id: I81c28dafd9588572df76cbc303b0d6a0f41f9bc6\n"
    },
    {
      "commit": "c2b8aa0b4c822b0e307f62131650f4a6ee89bb66",
      "tree": "de5998a2db403a13ba4dee000fec8036afba06df",
      "parents": [
        "e96aae1f4958bbc434b640b95a308757db8f8bed"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Sun Jul 03 18:00:47 2011 -0700"
      },
      "committer": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Sun Jul 03 18:00:47 2011 -0700"
      },
      "message": "VPN: rename some variables.\n\nChange-Id: I7f15b5ab30f591e26242fca27af25f578809534c\n"
    },
    {
      "commit": "100155a310fbb5028fc48e359bdfb7c4d3531843",
      "tree": "15aa54e35b879307c2272faf7ba6028113ac2a5c",
      "parents": [
        "34e7813e962de99df9813014678ef5901227c5f1"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Sun Jul 03 16:52:38 2011 -0700"
      },
      "committer": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Sun Jul 03 17:03:27 2011 -0700"
      },
      "message": "VPN: convert prepare() into a form which helps solve race conditions.\n\nWhen someone tries to revoke packageA, it is possible that packageA is\nalready revoked by packageB. In this case packageB should not be revoked,\nand the new prepare() can help solve this problem.\n\nChange-Id: Iee056a191dd99467b8ad1b5379a17b02d404bad1\n"
    },
    {
      "commit": "34e7813e962de99df9813014678ef5901227c5f1",
      "tree": "f61cbeefb7febbaf7b90792a16c6339ba7b4de9f",
      "parents": [
        "44e27b5c74b5f441973561a4f945cb58e0cc45a4"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Sun Jul 03 03:07:07 2011 -0700"
      },
      "committer": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Sun Jul 03 03:07:07 2011 -0700"
      },
      "message": "VPN: minor refinement.\n\nChange-Id: I2b59cbe8554b6c6f8da48c465252489394f32653\n"
    },
    {
      "commit": "44e27b5c74b5f441973561a4f945cb58e0cc45a4",
      "tree": "5c49ca549fb48177ec46e5a2cc4cd5a0e7712486",
      "parents": [
        "0c6bb2737e231c365656befe1d4ce44557de939a"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Sat Jul 02 20:19:26 2011 -0700"
      },
      "committer": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Sat Jul 02 20:21:09 2011 -0700"
      },
      "message": "VPN: remove the old VpnService.\n\nNow VPN is (kind of) integrated into ConnectivityService.\n\nChange-Id: If98e456e779f8e97f562d99c57d909b1f5d9db55\n"
    },
    {
      "commit": "c50bff85281fa9661310465e88fd62890ccc9240",
      "tree": "2d20c8de0d74702eb7dc97495f80a48c9fce01c0",
      "parents": [
        "3ac588b09af2a7c4fb91d05ad230779dbd214166"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Jun 30 12:52:44 2011 -0400"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Sat Jul 02 22:07:35 2011 -0400"
      },
      "message": "UsbService: USB connected notification now redirects to USB screen in Settings\n\nChange-Id: I2dc6d1294da53acfa7589ba5b693ec671695cd21\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "0c6bb2737e231c365656befe1d4ce44557de939a",
      "tree": "bdb26e66cb7c7cb883f73b6ca27fda1cdd58f99b",
      "parents": [
        "31c10a95872d5c0543e4fd2473cf1bcde6207afd",
        "77fd485c2ff780d1e6ef0ba1e3e811370ecbc528"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Sat Jul 02 17:28:45 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Jul 02 17:28:45 2011 -0700"
      },
      "message": "Merge \"VPN: export legacy VPN in IConnectivityManager.\""
    },
    {
      "commit": "77fd485c2ff780d1e6ef0ba1e3e811370ecbc528",
      "tree": "b58a5beb2bbe2ac814c99318bf72df7254647da6",
      "parents": [
        "dfba1773c911c4d97838923334c5a879424387bf"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Sat Jul 02 17:15:00 2011 -0700"
      },
      "committer": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Sat Jul 02 17:15:00 2011 -0700"
      },
      "message": "VPN: export legacy VPN in IConnectivityManager.\n\nChange-Id: I016fe056ceab39ffc36aa235d14b30a9f094a2e1\n"
    },
    {
      "commit": "8bc003e2f6668c5b6b855593a3a5e3828750fe9a",
      "tree": "00fa7d7048841887fcc3638e199719d5703f1a85",
      "parents": [
        "d6315c0ebb6ebbc67f0c669e92f92be70b49ba2c",
        "3281034c1c458b4eecd867d20b64dc5edd68ec14"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Sat Jul 02 16:37:25 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Jul 02 16:37:25 2011 -0700"
      },
      "message": "Merge \"VPN: merge JNI methods.\""
    },
    {
      "commit": "3281034c1c458b4eecd867d20b64dc5edd68ec14",
      "tree": "95b745fc557eda8d5ad94b0895a882706e28658b",
      "parents": [
        "e9107901ae264de4ff5603d3cfc63a03ca4117d4"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Sat Jul 02 16:16:03 2011 -0700"
      },
      "committer": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Sat Jul 02 16:16:03 2011 -0700"
      },
      "message": "VPN: merge JNI methods.\n\nLegacy VPN needs to change routes by itself.\n\nChange-Id: I4cf6639f2b00225810f49704ae05797fc70921d9\n"
    },
    {
      "commit": "d6315c0ebb6ebbc67f0c669e92f92be70b49ba2c",
      "tree": "57ff362e3201b444ead59d214353c888091032fc",
      "parents": [
        "51ac0e94a83cfccb5105aa14df1077729a5b4ccc",
        "e9107901ae264de4ff5603d3cfc63a03ca4117d4"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Sat Jul 02 03:19:48 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Jul 02 03:19:48 2011 -0700"
      },
      "message": "Merge \"VPN: give legacy VPN a fake package name.\""
    },
    {
      "commit": "e9107901ae264de4ff5603d3cfc63a03ca4117d4",
      "tree": "10af89085b6b96e67f3e2861d02436d1dda04db5",
      "parents": [
        "dfba1773c911c4d97838923334c5a879424387bf"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Sat Jul 02 01:48:50 2011 -0700"
      },
      "committer": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Sat Jul 02 01:48:50 2011 -0700"
      },
      "message": "VPN: give legacy VPN a fake package name.\n\nAnd add more comments.\n\nChange-Id: I0cbc495fcb2c8dd105e16a841619b3b9bd227eae\n"
    },
    {
      "commit": "b4c5fbff77af4110d846c0ddf4d4d57c30d20972",
      "tree": "450c06a268fe69e4016b3c48a84506e899013004",
      "parents": [
        "230a1ffcb004403fc4b812fe550399c551cda658",
        "a4d1bc517207d7ca8d56f0004cd04f0f1dd4567d"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Jul 01 19:25:46 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 01 19:25:46 2011 -0700"
      },
      "message": "Merge \"Drop obsolete touch screen hacks.\""
    },
    {
      "commit": "a4d1bc517207d7ca8d56f0004cd04f0f1dd4567d",
      "tree": "28c492be5daf8cbb0714e3b7e56daea9aff63795",
      "parents": [
        "6894a2947eb1f9d499fd7f1a1ec4e7098e07d25d"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Jul 01 19:23:40 2011 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Jul 01 19:23:40 2011 -0700"
      },
      "message": "Drop obsolete touch screen hacks.\n\nChange-Id: I47354c37ee2cc2b36340eb709bb5043b3ba78ed9\n"
    },
    {
      "commit": "f58e09e5ac81cbc2d526bc163a633e2d51f1ff73",
      "tree": "1317fb5453c84b63943dfca9062264741861a85d",
      "parents": [
        "63acea6ad4a9316e1450dea47840f45df4aaed25",
        "2ed9946441a2913fb7aa8ca1fa24262205da9f23"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jul 01 19:09:03 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 01 19:09:03 2011 -0700"
      },
      "message": "Merge \"Don\u0027t crash when the load average service is started.\""
    },
    {
      "commit": "2ed9946441a2913fb7aa8ca1fa24262205da9f23",
      "tree": "fbfa23f67da859a6976e780cf934ec20e3c6efbd",
      "parents": [
        "8894cc5ed4bacb72ef8158459fe7760903d135b8"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jul 01 19:02:52 2011 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jul 01 19:02:52 2011 -0700"
      },
      "message": "Don\u0027t crash when the load average service is started.\n\nChange-Id: Ie40f549d50942793c940f8728ce9c392c25f4c60\n"
    },
    {
      "commit": "63acea6ad4a9316e1450dea47840f45df4aaed25",
      "tree": "00eb8cd54245741b351e211c9145e89c95dd2e88",
      "parents": [
        "f03712bf540db15d0594b848e63c207fd50e9379",
        "8894cc5ed4bacb72ef8158459fe7760903d135b8"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jul 01 17:13:40 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 01 17:13:40 2011 -0700"
      },
      "message": "Merge \"When removing a task, also kill its processes.\""
    },
    {
      "commit": "8894cc5ed4bacb72ef8158459fe7760903d135b8",
      "tree": "ce40531eba07991e6c2bb6e2c1ff01fe4b1ff240",
      "parents": [
        "0916350cef633a30822b0cc286457c69615ce69c"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jul 01 16:28:17 2011 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jul 01 17:12:04 2011 -0700"
      },
      "message": "When removing a task, also kill its processes.\n\nChange-Id: I5945fef21ad6f028e71e36d3cb55d35e0b6401a6\n"
    },
    {
      "commit": "f91040e2df1a52dc41fd62a82afc0b214abc1c8d",
      "tree": "54f90843d55d051f1155b8b5851c1759dcdd660c",
      "parents": [
        "23b444a2e4e808262c22fa5254db9861eb961879",
        "f4b92ec567477fcdea24fdd18116b045dfcf9852"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Fri Jul 01 13:43:37 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 01 13:43:37 2011 -0700"
      },
      "message": "Merge \"Revert \"Add keychain user with special keystore access permissions\"\""
    },
    {
      "commit": "de296f64483713fdf164f3e8bf41dc12d1cff59e",
      "tree": "19532eb4b1facfdcd1c24ffa4dd209a5552e7630",
      "parents": [
        "fdc0c2984d05e32954608f46514c4cbe3a5a9424"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Fri Jul 01 14:05:25 2011 -0400"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Fri Jul 01 14:55:23 2011 -0400"
      },
      "message": "UsbDeviceManager: Reset sys.usb.config if it is \"none\" at boot\n\nThis will allow us to recover if we crash while changing USB configurations\n\nChange-Id: I22ba9a1ff0a8bcbfd4a0f18af0c95a3b66b99060\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "fdc0c2984d05e32954608f46514c4cbe3a5a9424",
      "tree": "181e8530af2a4ab741155352b7e45826277298ad",
      "parents": [
        "d8404d2fdd7036435748548a6791063fb6d6c909"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Fri Jul 01 11:17:43 2011 -0400"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Fri Jul 01 14:55:23 2011 -0400"
      },
      "message": "UsbService: Use Slog instead of Log, and disable some logging\n\nChange-Id: I094ab99919055848a9fa76363eae6d0df51de9fd\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "d8404d2fdd7036435748548a6791063fb6d6c909",
      "tree": "c340fbec61f7da6fbed9fa8e425a46e207a267f7",
      "parents": [
        "cec7ab8e8539e25ffb317f1cf8bb5c3b9b065314"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Jun 23 16:04:29 2011 -0400"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Fri Jul 01 14:55:23 2011 -0400"
      },
      "message": "USB: Update strings for USB connected notifications\n\nWe now have different strings depending on the current USB mode.\n\nChange-Id: Icc6392d5700a6fee008b75287d8eb0f06db1d880\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "38bb0123b8b9857c3119fd359739daf872f619d6",
      "tree": "efe3d72cb6c046412e19a5744515adf04da4ab58",
      "parents": [
        "e06749e14c1fb2d78540cba9548ee3b4b7b3b1d9",
        "7475c0cea622f126af966c3b5b9741f547e83450"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Fri Jul 01 09:26:50 2011 -0700"
      },
      "committer": {
        "name": "Android Code Review",
        "email": "code-review@android.com",
        "time": "Fri Jul 01 09:26:50 2011 -0700"
      },
      "message": "Merge \"Added methods to support dns cache per interface\""
    },
    {
      "commit": "41d1685a22ba8038517d6fdb57006023e03f12e1",
      "tree": "3f8d0a7b1446d5f734e24f63c19baf7641b17bf7",
      "parents": [
        "8909b10175303bd5e2ca82b7ba12cd0017050ef3"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Fri Jul 01 02:12:06 2011 -0700"
      },
      "committer": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Fri Jul 01 02:12:06 2011 -0700"
      },
      "message": "VPN: integrate legacy VPN.\n\nChange-Id: I00e77664354c05e0edfcd5fb2e3da2ca434ed521\n"
    },
    {
      "commit": "8909b10175303bd5e2ca82b7ba12cd0017050ef3",
      "tree": "2d4509767973c64c8779a2f1eed5ba0f3acfd34d",
      "parents": [
        "1f7746b39b94be1149228751e45a40ea39603611"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Fri Jul 01 01:09:42 2011 -0700"
      },
      "committer": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Fri Jul 01 01:14:19 2011 -0700"
      },
      "message": "VPN: Use List\u003cString\u003e instead for dnsServers and searchDomains.\n\nChange-Id: I5d72c182ad47f59121a04b68ec6c2d164e2d00a8\n"
    },
    {
      "commit": "1f7746b39b94be1149228751e45a40ea39603611",
      "tree": "f96fe20b1257d10ad77c6d0d300faf96d31b99f4",
      "parents": [
        "383e0524726d64302322abeba16d87faf66bae99"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Fri Jul 01 00:29:06 2011 -0700"
      },
      "committer": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Fri Jul 01 00:29:06 2011 -0700"
      },
      "message": "VPN: rename service(s) to daemon(s) to reduce confusion.\n\nChange-Id: I9739e63c8e41e8b63d024dc4f17283c76bb4ff97\n"
    },
    {
      "commit": "383e0524726d64302322abeba16d87faf66bae99",
      "tree": "5c375ff6ab463081c02b455b2ec1658418b0bb9d",
      "parents": [
        "5db03df1fff4900eb485304d4fd185110bea1a0c"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Fri Jul 01 00:13:25 2011 -0700"
      },
      "committer": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Fri Jul 01 00:13:25 2011 -0700"
      },
      "message": "VPN: fix the build.\n\nChange-Id: Ibeaa067cf95636e09746d16f402c78c99d7cb681\n"
    },
    {
      "commit": "2e46061cd2ff93e04461fdae4198c1d40d660e08",
      "tree": "85c048839744cf7f32ec19fcf559b8361cd7f2e2",
      "parents": [
        "072d39e079aad0a92c9f9ada91968e955f2c3bd1",
        "a4b87b5e980ffa52e9bc5549688b588b1b99a1eb"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Thu Jun 30 23:27:53 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 30 23:27:53 2011 -0700"
      },
      "message": "Merge \"VPN: refactor a little bit for the upcoming integration of legacy VPN.\""
    },
    {
      "commit": "a4b87b5e980ffa52e9bc5549688b588b1b99a1eb",
      "tree": "2101a8d1ba2ad2d837d456d60ecb0c1da32e6a6d",
      "parents": [
        "9c0835fd7262c50cf6a91380df1654daffe2c977"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Thu Jun 30 23:21:55 2011 -0700"
      },
      "committer": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Thu Jun 30 23:21:55 2011 -0700"
      },
      "message": "VPN: refactor a little bit for the upcoming integration of legacy VPN.\n\nChange-Id: I0fe0dffe59d8d9c9a0fdd05e07b07aa6c8da0a80\n"
    },
    {
      "commit": "072d39e079aad0a92c9f9ada91968e955f2c3bd1",
      "tree": "4cfe599e813d67bc7549236be60c8a3ea0b965f2",
      "parents": [
        "ac813bda73e65da2113a0829cc80e30820c20b7a",
        "350083e36b9db6062e165954403ef921ff3dfdad"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Jun 30 23:09:51 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 30 23:09:51 2011 -0700"
      },
      "message": "Merge \"Migrate bandwidth control to NMS, omit history.\""
    },
    {
      "commit": "f4b92ec567477fcdea24fdd18116b045dfcf9852",
      "tree": "196f3192cd08f076c1636ec2f91b3eb5e2dc4683",
      "parents": [
        "ce43bc48588408e72aaa47ac1483837d5bfd1f59"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Thu Jun 30 22:58:29 2011 -0700"
      },
      "committer": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Thu Jun 30 22:59:13 2011 -0700"
      },
      "message": "Revert \"Add keychain user with special keystore access permissions\"\n\nThis reverts commit 8c2a1a90a81f04573bfa578eab32f5fd4a30eafb.\n\nConflicts:\n\n\tcmds/keystore/keystore.c\n\nBug:4970237\nChange-Id: I626023d695becfada47e5f319b18e0889b766563\n"
    },
    {
      "commit": "350083e36b9db6062e165954403ef921ff3dfdad",
      "tree": "c2b006eeb3225090024c41321752b380b36ee22b",
      "parents": [
        "428e84388af3695cb19549bdb107e2b88afd3708"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Jun 29 10:45:16 2011 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Jun 30 15:47:51 2011 -0700"
      },
      "message": "Migrate bandwidth control to NMS, omit history.\n\nBoth stats and policy make NMS calls that depend on bandwidth control\nbeing enabled, so move enable/disable into NMS and drop calls when\ndisabled.  This avoids throwing heavy ISE exceptions when disabled.\n\nOnly include recent data when writing NetworkStatsHistory as part of\ndumpsys call.  Introduce manual poll event for Settings UI.\n\nBug: 4982115, 4770435, 4515856\nChange-Id: I257820b057af2f0f99c736fb4f61e55b9fdc3e66\n"
    },
    {
      "commit": "e6b3af24c4a0119f05c12a284dd1cc9c2c023766",
      "tree": "9d0b80de81fcc825c64840d686b4800fa00457e0",
      "parents": [
        "56528a3546777bd6e6739b0d99d67ec7598e06ea",
        "6c418d585e0a91054b168fde3130188afd006c98"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jun 30 13:57:27 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 30 13:57:27 2011 -0700"
      },
      "message": "Merge \"Fix issue #4902856: Don\u0027t let apps register non-explicit PendingIntents\""
    },
    {
      "commit": "7d1279b30911ed1e5d8f7e195176fd98ee64454d",
      "tree": "00ca49ddaa13769cd36de0294b0bd23d04518e1a",
      "parents": [
        "e58e9b8c8297dc9ae407c132d0f0983e63be46f0",
        "f4e3bf892e593d8c74290739446ac205fe8c66b2"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Thu Jun 30 12:43:14 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 30 12:43:14 2011 -0700"
      },
      "message": "Merge \"VPN: refactor few JNI methods for the usage of legacy VPN.\""
    },
    {
      "commit": "f4e3bf892e593d8c74290739446ac205fe8c66b2",
      "tree": "c82afe87c1c93095d6fa8858ee1b92bd386c3d41",
      "parents": [
        "ace263902e6b8437fa1135cb9242e9c1c309cdf9"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Thu Jun 30 12:33:17 2011 -0700"
      },
      "committer": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Thu Jun 30 12:41:11 2011 -0700"
      },
      "message": "VPN: refactor few JNI methods for the usage of legacy VPN.\n\nNow default routes are handled in JNI instead of VpnBuilder.\n\nChange-Id: Ib026bba6793b64aae0f8356df3d2aaae489d08b4\n"
    }
  ],
  "next": "6c418d585e0a91054b168fde3130188afd006c98"
}
