)]}'
{
  "log": [
    {
      "commit": "a3e261d506551713477adb2fd47d1a65b94e64d8",
      "tree": "ccbe33f918417f2268f3d154cd350314793d5ac0",
      "parents": [
        "3bd929579919999852c3e29c536fd06907e620ac"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Wed Apr 27 12:06:23 2011 -0700"
      },
      "committer": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Wed Apr 27 12:06:28 2011 -0700"
      },
      "message": "The accessibility input filter state was not unregistered when\nno spoken feedback accessibility services are regitstered.\n\nbug:4343996\n\nChange-Id: Ie709ac24baa084cf3627d6adb6caf1550c399f8b\n"
    },
    {
      "commit": "736c2756bf3c14ae9fef7255c119057f7a2be1ed",
      "tree": "5bea187f2f67a91ede0eabfcd0fc15a4b105e7f7",
      "parents": [
        "c1e1f43dab96a317f58e31137c49a4df2e919b83"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Fri Apr 22 18:30:36 2011 -0700"
      },
      "committer": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Fri Apr 22 18:30:43 2011 -0700"
      },
      "message": "Touch exploration feature, event bubling, refactor\n\n1. Added an Input Filter that interprets the touch screen motion\n   events to perfrom accessibility exploration. One finger explores.\n   Tapping within a given time and distance slop on the last exlopred\n   location does click and long press, respectively. Two fingers close\n   and in the same diretion drag. Multiple finglers or two fingers in\n   different directions or two fingers too far away are delegated to\n   the view hierarchy. Non moving fingers \"accidentally grabbed the\n   device for the scrren\" are ignored.\n\n2. Added accessibility events for hover enter, hover exit, touch\n   exoloration gesture start, and end. Accessibility hover events\n   are fired by the hover pipeline. An accessibility event is\n   dispatched up the view tree and the topmost view fires it.\n   Thus predecessors can augment the fired event. An accessibility\n   event has several records and a predecessor can optionally\n   modify, delete, and add such to the event.\n\n3. Added onPopulateAccessibilityEvent and refactored the existing\n   accessibility code to use it.\n\n4. Added API for querying the currently enabled accessibility services\n   by feedback type.\n\nChange-Id: Iea2258c07ffae9491071825d966dc453b07e5134\n"
    },
    {
      "commit": "3fb3d7c4e756bd32d5abde0abca9ab52d559bc84",
      "tree": "a1dcfb8f2cdee81a033b85e27f55129ddb695776",
      "parents": [
        "6c079b6819d749fcb72988c5b06becff081c82fd"
      ],
      "author": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Fri Apr 22 17:08:55 2011 -0700"
      },
      "committer": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Fri Apr 22 17:23:44 2011 -0700"
      },
      "message": "Revert \"Touch exploration feature, event bubling, refactor\"\n\nThis reverts commit ac84d3ba81f08036308b17e1ab919e43987a3df5.\n\nThere seems to be a problem with this API change. Reverting for now to\nfix the build.\n\nChange-Id: Ifa7426b080651b59afbcec2d3ede09a3ec49644c\n"
    },
    {
      "commit": "f9fa622cc04028fd7c5f5036ea2e0ccfb80d55f3",
      "tree": "c9b8ec24bd7601233d3e49373ce5d68f01485567",
      "parents": [
        "d0f650c6c3a123c856bb0adb138ae7cd0deed3d1",
        "ac84d3ba81f08036308b17e1ab919e43987a3df5"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Fri Apr 22 16:29:07 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 22 16:29:07 2011 -0700"
      },
      "message": "Merge \"Touch exploration feature, event bubling, refactor\""
    },
    {
      "commit": "dacea8ce503369e7b82ff1c0e1a5a8a48863a25a",
      "tree": "c2975da092931952a787c7dbff59ccc87a4c124c",
      "parents": [
        "fb281f3ad7f78f9046fe3921fe0a2ab74fad5f82"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Apr 21 17:26:39 2011 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Apr 22 11:23:13 2011 -0700"
      },
      "message": "Start work on simulating landscape/portrait when orientation is locked.\n\nNot yet working, so turned off.\n\nAlso fix a bug where the display size configuration became inconsistent\nafter a configuration change -- we now figure out everything about the\ndisplay size when computing a new configuration.\n"
    },
    {
      "commit": "ac84d3ba81f08036308b17e1ab919e43987a3df5",
      "tree": "8bf9d7f0b110667e45186d90674465a63e868f26",
      "parents": [
        "1cc1a41b5a095c2eae556c9be0a7ad3f2fc5bfbb"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Mon Apr 04 16:09:08 2011 -0700"
      },
      "committer": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Thu Apr 21 18:33:52 2011 -0700"
      },
      "message": "Touch exploration feature, event bubling, refactor\n\n1. Added an Input Filter that interprets the touch screen motion\n   events to perfrom accessibility exploration. One finger explores.\n   Tapping within a given time and distance slop on the last exlopred\n   location does click and long press, respectively. Two fingers close\n   and in the same diretion drag. Multiple finglers or two fingers in\n   different directions or two fingers too far away are delegated to\n   the view hierarchy. Non moving fingers \"accidentally grabbed the\n   device for the scrren\" are ignored.\n\n2. Added accessibility events for hover enter, hover exit, touch\n   exoloration gesture start, and end. Accessibility hover events\n   are fired by the hover pipeline. An accessibility event is\n   dispatched up the view tree and the topmost view fires it.\n   Thus predecessors can augment the fired event. An accessibility\n   event has several records and a predecessor can optionally\n   modify, delete, and add such to the event.\n\n3. Added onPopulateAccessibilityEvent and refactored the existing\n   accessibility code to use it.\n\n4. Added API for querying the currently enabled accessibility services\n   by feedback type.\n\nChange-Id: Iec03c6c3fe298de3f14cb6efdbb9b198cd531a0c\n"
    },
    {
      "commit": "9d13264f6b5818812e61d66baaada599b8ad1faf",
      "tree": "ebc05f5c11a1fe0150cdbb71ff3675d051c6b395",
      "parents": [
        "4c1f4f7144ad6d73ca2a28eceb5a1c43664799c7"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Apr 21 17:26:39 2011 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Apr 21 17:27:42 2011 -0700"
      },
      "message": "Fix bug in deciding which rotation to use for an orientation.\n\nChange-Id: Icc928c2188a5865035cafcdab2efd5bae3132b1f\n"
    },
    {
      "commit": "44bc17c6b517aef35a390c81b5aa79c4f284f744",
      "tree": "b4dabc94a8974f81cf7ea855a93e307205c5b8d7",
      "parents": [
        "52c03d2cb9a782366e804d1910a7c8f072b05353"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Apr 20 18:18:51 2011 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Apr 21 15:17:52 2011 -0700"
      },
      "message": "Rework display size access.\n\nApplications now get the display size from the window manager.  No\nbehavior should be changed yet, this is just prep for some real\nchanges.\n\nChange-Id: I2958a6660895c1cba2b670509600014e55ee9273\n"
    },
    {
      "commit": "3f14891fc9e764d97de07b109f066aedfff90c2e",
      "tree": "7d026487ee719489cea2c1237901ef6cf325efe2",
      "parents": [
        "05d30b14843bf7cf252873f4d0d39706878b28c2",
        "2352b978a3c94cd88f41d0d908f961333fdac1e9"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Apr 19 15:37:32 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 19 15:37:32 2011 -0700"
      },
      "message": "Merge \"Initial checkin of spot presentation for touchpad gestures.\""
    },
    {
      "commit": "2352b978a3c94cd88f41d0d908f961333fdac1e9",
      "tree": "24f8f19e9b2895cc2c3489bf2dd7a09aaf5834db",
      "parents": [
        "f76dc56c33ba66138af70d72803cf55f881c3717"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Apr 12 22:39:53 2011 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Apr 19 15:35:51 2011 -0700"
      },
      "message": "Initial checkin of spot presentation for touchpad gestures.\n\nAdded a new PointerIcon API (hidden for now) for loading\npointer icons.\n\nFixed a starvation problem in the native Looper\u0027s sendMessage\nimplementation which caused new messages to be posted ahead\nof old messages sent with sendMessageDelayed.\n\nRedesigned the touch pad gestures to be defined in terms of\nmore fluid finger / spot movements.  The objective is to reinforce\nthe natural mapping between fingers and spots which means there\nmust not be any discontinuities in spot motion relative to\nthe fingers.\n\nRemoved the SpotController stub and folded its responsibilities\ninto PointerController.\n\nChange-Id: I5126b1e69d95252fda7f2a684c9287e239a57163\n"
    },
    {
      "commit": "25641ca1ac5b09727f86fe01389877332a00455d",
      "tree": "e18f66c852164f4fbc6fbdf3d7c689b9b2ac3d83",
      "parents": [
        "08d1f937236230756bffde241ad6b335da368cf9",
        "0b285499db739ba50f2f839d633e763c70e67f96"
      ],
      "author": {
        "name": "Amith Yamasani",
        "email": "yamasani@google.com",
        "time": "Tue Apr 19 10:41:20 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 19 10:41:20 2011 -0700"
      },
      "message": "Merge \"Plumbing in PackageManager and installd for multi-user support.\""
    },
    {
      "commit": "343c1ad7200619230a55caa6aa8a9d041e62b29d",
      "tree": "42ef60951bc803ec683ee61dfa3e29965fb6a32b",
      "parents": [
        "5664eea800ffc40cd1ee93bd228435aa41e7a64c",
        "37677849998e6c9a39afe0a730b2f0131a371f3b"
      ],
      "author": {
        "name": "Wink Saville",
        "email": "wink@google.com",
        "time": "Mon Apr 18 15:28:47 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Apr 18 15:28:47 2011 -0700"
      },
      "message": "am 37677849: am 64c42cae: Rename HierarchicalStateMachine and HierarchicalState to StateMachine and State.\n\n* commit \u002737677849998e6c9a39afe0a730b2f0131a371f3b\u0027:\n  Rename HierarchicalStateMachine and HierarchicalState to StateMachine and State.\n"
    },
    {
      "commit": "37677849998e6c9a39afe0a730b2f0131a371f3b",
      "tree": "2c5e95ce98a9ced1744e60a9aa1a454894cd9511",
      "parents": [
        "9a2c93905a2a65db7135f48ca5653d3cf614faed",
        "64c42cae4482fe0157e977b8ddd0f2c2436b3f31"
      ],
      "author": {
        "name": "Wink Saville",
        "email": "wink@google.com",
        "time": "Mon Apr 18 15:24:47 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Apr 18 15:24:47 2011 -0700"
      },
      "message": "am 64c42cae: Rename HierarchicalStateMachine and HierarchicalState to StateMachine and State.\n\n* commit \u002764c42cae4482fe0157e977b8ddd0f2c2436b3f31\u0027:\n  Rename HierarchicalStateMachine and HierarchicalState to StateMachine and State.\n"
    },
    {
      "commit": "64c42cae4482fe0157e977b8ddd0f2c2436b3f31",
      "tree": "477c231a37d54f329f002ed5323e30f7e346200b",
      "parents": [
        "6f200f738ed0bbdef5c433b5f571fcb591e1760c"
      ],
      "author": {
        "name": "Wink Saville",
        "email": "wink@google.com",
        "time": "Mon Apr 18 14:55:10 2011 -0700"
      },
      "committer": {
        "name": "Wink Saville",
        "email": "wink@google.com",
        "time": "Mon Apr 18 14:55:10 2011 -0700"
      },
      "message": "Rename HierarchicalStateMachine and HierarchicalState to StateMachine and State.\n\nChange-Id: Ib4b33894da75f5f156066092fb145b478e52f7d7\n"
    },
    {
      "commit": "0b285499db739ba50f2f839d633e763c70e67f96",
      "tree": "77e6ecb6572cefdfae2095dcf64c4388adae15c2",
      "parents": [
        "4123211637dcc0155091016f0c0987b80e56ab7b"
      ],
      "author": {
        "name": "Amith Yamasani",
        "email": "yamasani@google.com",
        "time": "Thu Apr 14 17:35:23 2011 -0700"
      },
      "committer": {
        "name": "Amith Yamasani",
        "email": "yamasani@google.com",
        "time": "Fri Apr 15 15:15:27 2011 -0700"
      },
      "message": "Plumbing in PackageManager and installd for multi-user support.\n\n- Create /data/user directory and symlink /data/user/0 -\u003e /data/data for\n  backward compatibility\n- Create data directories for all packages for new user\n\n- Remove data directories when removing a user\n\n- Create data directories for all users when a package is created\n\n- Clear / Remove data for multiple users\n\n- Fixed a bug in verifying the location of a system app\n\n- pm commands for createUser and removeUser (will be disabled later)\n\n- symlink duplicate lib directories to the original lib directory\n\nChange-Id: Id9fdfcf0e62406a8896aa811314dfc08d5f6ed95\n"
    },
    {
      "commit": "68f1b78b7b9139a0e34285ff641a664e664a14b8",
      "tree": "dbd50188b77a1dfab9310daad8550d553cf72204",
      "parents": [
        "c02c97ef7527e19dce067562692c89d27e7bad52"
      ],
      "author": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Mon Apr 11 14:26:04 2011 +0900"
      },
      "committer": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Fri Apr 15 13:49:33 2011 +0900"
      },
      "message": "Add an API to get the last used input method subtype\n\nBug: 4075039\n\n- Voice input requires to know the last used input method subtype.\n\nChange-Id: I603a4fb88a2af5195e52188adfa6585ad80304fa\n"
    },
    {
      "commit": "fa32cd1516e81ef4d23313c5b05c367e16a7ed73",
      "tree": "3a2c6ed34e6616a170a76e49105fa9df447c0071",
      "parents": [
        "3758321fcecf1a6af653937d295a14a5289e8e5b",
        "07a630d23ef326f820e6339b5f691df0aafd3574"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Apr 14 15:43:03 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Apr 14 15:43:03 2011 -0700"
      },
      "message": "am 07a630d2: am 9a03a73a: am f6f87c98: Merge \"Fix issue #4291805: Tap Fish crashes on launch\" into honeycomb-mr1\n\n* commit \u002707a630d23ef326f820e6339b5f691df0aafd3574\u0027:\n  Fix issue #4291805: Tap Fish crashes on launch\n"
    },
    {
      "commit": "07a630d23ef326f820e6339b5f691df0aafd3574",
      "tree": "5382b9b1cda9bf5a3438dbd3ca3ad7772a70553b",
      "parents": [
        "1bfb2db93514f8ed70d0a02c12d7ce4791d6b336",
        "9a03a73a44c69706fe2b97a28632928f58b434b1"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Apr 14 15:40:00 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Apr 14 15:40:00 2011 -0700"
      },
      "message": "am 9a03a73a: am f6f87c98: Merge \"Fix issue #4291805: Tap Fish crashes on launch\" into honeycomb-mr1\n\n* commit \u00279a03a73a44c69706fe2b97a28632928f58b434b1\u0027:\n  Fix issue #4291805: Tap Fish crashes on launch\n"
    },
    {
      "commit": "9a03a73a44c69706fe2b97a28632928f58b434b1",
      "tree": "67654705627c9cfbefecc8331609542f91acd285",
      "parents": [
        "b590ca85afba6b886cc995e9a6092457174ea016",
        "f6f87c985989603139b31df663f9f9a90543cacc"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Apr 14 15:27:32 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Apr 14 15:27:32 2011 -0700"
      },
      "message": "am f6f87c98: Merge \"Fix issue #4291805: Tap Fish crashes on launch\" into honeycomb-mr1\n\n* commit \u0027f6f87c985989603139b31df663f9f9a90543cacc\u0027:\n  Fix issue #4291805: Tap Fish crashes on launch\n"
    },
    {
      "commit": "f6f87c985989603139b31df663f9f9a90543cacc",
      "tree": "4861164936215fc7fcc955e6fdc0356ce27dcee4",
      "parents": [
        "4e3d6aa0688f023dfe5feb2eb197207cc8267463",
        "52b0ce0fe3e9ab52c272dde3d9c59376c276a17e"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Apr 14 15:10:31 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 14 15:10:31 2011 -0700"
      },
      "message": "Merge \"Fix issue #4291805: Tap Fish crashes on launch\" into honeycomb-mr1"
    },
    {
      "commit": "52b0ce0fe3e9ab52c272dde3d9c59376c276a17e",
      "tree": "05783a9efb7f4fe73ec86f58027c6bd2dbd50cf2",
      "parents": [
        "6bb8b0ecb558373ba99e44ad5c351e1d7bb410d6"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Apr 14 13:09:32 2011 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Apr 14 13:09:32 2011 -0700"
      },
      "message": "Fix issue #4291805: Tap Fish crashes on launch\n\nThe activity manager got a little too aggressive about argument validation.\n\nChange-Id: I3cca0cd3135b98e5c50d26db778ec4ec28a47ec1\n"
    },
    {
      "commit": "0ffc988a7f47013805d5abeed1c20f159b3bd799",
      "tree": "f9873ba8872388b88d75a3d83144e03e7c3f59f4",
      "parents": [
        "5cde33b7d14841677414fa9f43a043bb4a89ffa7"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Apr 13 18:15:56 2011 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Apr 14 10:57:22 2011 -0700"
      },
      "message": "Rewrite battery history storage.\n\nWe now write battery history directly into a buffer, instead of\ncreating objects.  This allows for more efficient storage; later\nit can be even better because we can only write deltas.\n\nThe old code is still there temporarily for validation.\n\nChange-Id: I9707d4d8ff30855be8ebdc93bc078911040d8e0b\n"
    },
    {
      "commit": "2432d1bd4828d10d97cf72f974d8312a168bb2ca",
      "tree": "f626829f5ed184965c56f21ced33a49e1ac7b320",
      "parents": [
        "0c5001d776d56bae02a5cc2663286a125d99bc5e"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Apr 12 19:12:30 2011 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Apr 12 19:12:30 2011 -0700"
      },
      "message": "Forgot to add this file.\n\nChange-Id: I7b29785599ab8e4b8b29099a8398ef86df6aef31\n"
    },
    {
      "commit": "0c5001d776d56bae02a5cc2663286a125d99bc5e",
      "tree": "ea7458737297e313c454f18d672e2b997af13990",
      "parents": [
        "26b05f7dc35f47bc62bf9630df288ae2d6e4657e"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Apr 12 18:16:08 2011 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Apr 12 18:28:06 2011 -0700"
      },
      "message": "Add APIs to remove tasks.\n\nYou can remove sub-tasks inside of a task, or an entire task.\n\nWhen removing an entire task, you can have its process killed\nas well.\n\nWhen the process is killed, any running services will get an\nonTaskRemoved() callback for them to do cleanup before their\nprocess is killed (and the service possibly restarted).\n\nOr they can set a new android:stopWithTask attribute to just\nhave the service automatically (cleanly) stopped at this point.\n\nChange-Id: I1891bc2da006fa53b99c52f9040f1145650e6808\n"
    },
    {
      "commit": "2e3ede527d8a972795a49ffc7eef4ead391107ec",
      "tree": "f2678d126ac68d8b6e017c6e45ff186907286c4a",
      "parents": [
        "83b61471c39fc4d5afc9f56c3ed771a14c8ad194",
        "1d1b4893762c8daad2b31dc79cad2dbcc1b251d2"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Tue Apr 12 15:34:42 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 12 15:34:42 2011 -0700"
      },
      "message": "Merge \"Updated system packages retain shared user\""
    },
    {
      "commit": "316594715d31bb95b5efa08bfc80f287833b3a37",
      "tree": "a10e2f02ade56220f17742aa08d8f9d9b9793f80",
      "parents": [
        "07c25b651216daac884bd503c02b788418165b50",
        "2869d1715d815ef2b357bf182d384515cdf6f9ab"
      ],
      "author": {
        "name": "Benoit Goby",
        "email": "benoit@android.com",
        "time": "Mon Apr 11 18:53:57 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Apr 11 18:53:57 2011 -0700"
      },
      "message": "am 2869d171: resolved conflicts for merge of 08c39c6a to honeycomb-LTE\n\n* commit \u00272869d1715d815ef2b357bf182d384515cdf6f9ab\u0027:\n  Add support for USB Ethernet adapters\n"
    },
    {
      "commit": "2869d1715d815ef2b357bf182d384515cdf6f9ab",
      "tree": "04abbcfa7969035a41250e04bbd016a225606b5d",
      "parents": [
        "87ee132ac5dd99564d4ad8f05631bbb021dbc0b0",
        "08c39c6a11f728e113811a6a85c109cfc80ce28e"
      ],
      "author": {
        "name": "Benoit Goby",
        "email": "benoit@android.com",
        "time": "Mon Apr 11 18:41:23 2011 -0700"
      },
      "committer": {
        "name": "Benoit Goby",
        "email": "benoit@android.com",
        "time": "Mon Apr 11 18:41:23 2011 -0700"
      },
      "message": "resolved conflicts for merge of 08c39c6a to honeycomb-LTE\n\nChange-Id: I79f8ac1dc8ff9f5d0559d37043b850cd26246b92\n"
    },
    {
      "commit": "08c39c6a11f728e113811a6a85c109cfc80ce28e",
      "tree": "5e614740dfe0a156fd710b326545003ee990418f",
      "parents": [
        "c6c2285b36e83b96056e2404371cdf6e6f7acaee"
      ],
      "author": {
        "name": "Benoit Goby",
        "email": "benoit@android.com",
        "time": "Wed Dec 22 14:29:40 2010 -0800"
      },
      "committer": {
        "name": "Benoit Goby",
        "email": "benoit@android.com",
        "time": "Mon Apr 11 16:33:43 2011 -0700"
      },
      "message": "Add support for USB Ethernet adapters\n\nChange-Id: I6ae34a32d0e1b6f21c484b8639c3e7ce086e568d\n"
    },
    {
      "commit": "beb182a4945b9b762fac77edd1183897bcac5b32",
      "tree": "5cdfa5875008f47169652eaef2fee0aedb15225c",
      "parents": [
        "37e344cbe277e8f4da944c19cffaf34f38f6396e",
        "4b2e934928a2eb65927bd39197198c28c49efb94"
      ],
      "author": {
        "name": "Amith Yamasani",
        "email": "yamasani@google.com",
        "time": "Mon Apr 11 12:14:17 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Apr 11 12:14:17 2011 -0700"
      },
      "message": "Merge \"Package manager changes to store and update user information.\""
    },
    {
      "commit": "4b2e934928a2eb65927bd39197198c28c49efb94",
      "tree": "52dedcaa4ef165954e6c7ec9dcd98c5b13442842",
      "parents": [
        "d07f6a7934d229e91d7ca23e83c664101f472312"
      ],
      "author": {
        "name": "Amith Yamasani",
        "email": "yamasani@google.com",
        "time": "Thu Mar 31 12:38:53 2011 -0700"
      },
      "committer": {
        "name": "Amith Yamasani",
        "email": "yamasani@google.com",
        "time": "Mon Apr 11 12:12:58 2011 -0700"
      },
      "message": "Package manager changes to store and update user information.\n\nSome API stubs for managing users and storing their details.\nList of users is stored in an xml file.\nEach user\u0027s properties are stored in a separate xml file.\n\nSome unit tests for modifying the XML files.\n\nChange-Id: If2ce2420723111bd426f6762def3c2afc19a0ae5\n"
    },
    {
      "commit": "bcbab3684349353ee8cab30b556001824d0e7ccf",
      "tree": "cd5699f89c052a71e8ebad1cc4fbbb256c5c0883",
      "parents": [
        "0741b1ae22ecb5f6ac449bf85ef06e05c8d8f438",
        "f26fd99a7c2f554b0297760bb66336473c7db61f"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Apr 08 18:28:14 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 08 18:28:14 2011 -0700"
      },
      "message": "Merge \"Rework thumbnails in activity manager.\""
    },
    {
      "commit": "f26fd99a7c2f554b0297760bb66336473c7db61f",
      "tree": "292bc65e6d068857bda10f2f45727a7c88601b64",
      "parents": [
        "bdf7b013f81b0b56a18cc9dd2fb987b56d595650"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Apr 08 18:14:09 2011 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Apr 08 18:16:21 2011 -0700"
      },
      "message": "Rework thumbnails in activity manager.\n\nWe now only keep a thumbnail for the task, not for each\nactivity.  However if you use FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET,\nwe will make a new secondary thumbnail for that series of\nactivities.  There is a new API for the app to get these\nsecondary thumbnails.\n\nAlso set a default thumbnail size for non-xlarge screens\nso we have thumbnails on phones.  (We need some smarter\ncode in the platform for computing the actual thumbnail\ndimensions of the current device).  And add a test app\nto show recent tasks + thumbnails.\n\nChange-Id: Ic36759f6635522118a2cb7f156662229a610c492\n"
    },
    {
      "commit": "1d1b4893762c8daad2b31dc79cad2dbcc1b251d2",
      "tree": "ff93d11699c033ee4539ab89b6819c77f8b280ff",
      "parents": [
        "955276656755bdc85518049305a8492b3f7f8b0a"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Fri Apr 08 14:25:24 2011 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Fri Apr 08 14:25:27 2011 -0700"
      },
      "message": "Updated system packages retain shared user\n\nIf a system package was updated that used permissions provided by a\npackage signed with a different signature, it wouldn\u0027t grant\nthose permissions to the updated system app.\n\nThis is because the sharedUser field was not set in the disabled system\npackage. Therefore it was checking the disabled system package\u0027s\nindividual user permission grants which were empty.\n\nThis change populates the sharedUser field for disabled system packages\nafter reading all the existing shared users from the saved settings\ndatabase.\n\nBug: 4245273\nChange-Id: I57c58c4083bd59f45095c184d6ca5a302f79ff6e\n"
    },
    {
      "commit": "8c2a1a90a81f04573bfa578eab32f5fd4a30eafb",
      "tree": "fba8d0b7e475a502ae396603a7089f1d5695c1ae",
      "parents": [
        "5008e92d1fd573d926cd55c39ca723a6fbdf7c4b"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Fri Apr 08 13:44:08 2011 -0700"
      },
      "committer": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Fri Apr 08 14:06:39 2011 -0700"
      },
      "message": "Add keychain user with special keystore access permissions\n\nChange-Id: I02fe5171add62c5cd9f57b01bc137f3bc1cb3a69\n"
    },
    {
      "commit": "43a17654cf4bfe7f1ec22bd8b7b32daccdf27c09",
      "tree": "a5aac88ebb367a0f046a5724edc8e35cbe192cb9",
      "parents": [
        "ea4af8914a3b6ea68558f20ce502966032ca1ab1"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Wed Apr 06 19:22:23 2011 -0700"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Thu Apr 07 19:23:05 2011 -0700"
      },
      "message": "Remove the deprecated things from Config.java. These haven\u0027t been working since before 1.0.\n\nChange-Id: Ic2e8fa68797ea9d486f4117f3d82c98233cdab1e\n"
    },
    {
      "commit": "e17aeb31030cfeed339a39a107912ad5e9178390",
      "tree": "e0773ea106c5504e2ef107a91f5871827cd76b75",
      "parents": [
        "097786507b07ff7137b305b5cf71b5ecbc6b029e"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Apr 07 15:11:57 2011 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Apr 07 18:26:15 2011 -0700"
      },
      "message": "Improve activity manager debug dumps.\n\nActivity manager now does all dump requests into apps\nasynchronously, so it can nicely timeout if there is an\napp problem.  Also lots of general cleanup of the am\ndump output.\n\nChange-Id: Id0dbccffb217315aeb85c964e379833e6aa3f5af\n"
    },
    {
      "commit": "097786507b07ff7137b305b5cf71b5ecbc6b029e",
      "tree": "2890404c983d9b9cce91dcbed7a1f561708ecc24",
      "parents": [
        "825e28c6c5c312c08f44b71400f987b6bd66e103",
        "de1b950d2b07737e3d284ed2ada361737d8a5a1a"
      ],
      "author": {
        "name": "Wink Saville",
        "email": "wink@google.com",
        "time": "Thu Apr 07 14:31:20 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Apr 07 14:31:20 2011 -0700"
      },
      "message": "am de1b950d: am 9e7a5a1e: Merge \"ConnectivityService needs to use the new names for the NetConfig vars.\" into honeycomb-LTE\n\n* commit \u0027de1b950d2b07737e3d284ed2ada361737d8a5a1a\u0027:\n  ConnectivityService needs to use the new names for the NetConfig vars.\n"
    },
    {
      "commit": "de1b950d2b07737e3d284ed2ada361737d8a5a1a",
      "tree": "bff75b96cdbd9ed7236bfbe109bf23a27fa77aed",
      "parents": [
        "4e790ee1894118a1ab2032d09e5016fa9414dae7",
        "9e7a5a1e567a0e696d9a7b68fffd00b7408e6ac1"
      ],
      "author": {
        "name": "Wink Saville",
        "email": "wink@google.com",
        "time": "Thu Apr 07 14:29:17 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Apr 07 14:29:17 2011 -0700"
      },
      "message": "am 9e7a5a1e: Merge \"ConnectivityService needs to use the new names for the NetConfig vars.\" into honeycomb-LTE\n\n* commit \u00279e7a5a1e567a0e696d9a7b68fffd00b7408e6ac1\u0027:\n  ConnectivityService needs to use the new names for the NetConfig vars.\n"
    },
    {
      "commit": "975c8488a3667efc24a1ad5da15d571d9615020f",
      "tree": "65e09ef58246168ce70987d238f952b2cbab8c04",
      "parents": [
        "96ac85607b1462508981936b1be29ae5f9e4271d"
      ],
      "author": {
        "name": "Wink Saville",
        "email": "wink@google.com",
        "time": "Thu Apr 07 14:23:45 2011 -0700"
      },
      "committer": {
        "name": "Wink Saville",
        "email": "wink@google.com",
        "time": "Thu Apr 07 14:23:45 2011 -0700"
      },
      "message": "ConnectivityService needs to use the new names for the NetConfig vars.\n\nChange-Id: I809a624057462871cd1849051286c2bffd5099e9\n"
    },
    {
      "commit": "80f7c594fae3f1b19e3ea78938de450418fe183c",
      "tree": "cd17f77bf1022f1dd132aecd6d13aa604b89e3c6",
      "parents": [
        "567882e1f9a31d78cba8ea7f1112d0a9e42d137a",
        "f4a29403ae5b6d3e8e754a025d33f0c33adecb21"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Thu Apr 07 14:22:03 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Apr 07 14:22:03 2011 -0700"
      },
      "message": "am f4a29403: resolved conflicts for merge of 70c3d1c2 to honeycomb-plus-aosp\n\n* commit \u0027f4a29403ae5b6d3e8e754a025d33f0c33adecb21\u0027:\n  Add external dependency API.\n"
    },
    {
      "commit": "f4a29403ae5b6d3e8e754a025d33f0c33adecb21",
      "tree": "2462217b49085f4fd0f4c5931fc7b3e843421f88",
      "parents": [
        "91bc0f818c9e4cfdffc09f6edecfd11a1ce1806e",
        "70c3d1c23b5d4398cc561ec9ddbe868b3182cc74"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Thu Apr 07 14:13:52 2011 -0700"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Thu Apr 07 14:13:52 2011 -0700"
      },
      "message": "resolved conflicts for merge of 70c3d1c2 to honeycomb-plus-aosp\n\nChange-Id: I0962138f6ecb1ed54fda25524d8850b086f13c4f\n"
    },
    {
      "commit": "d55a6b498d66d8fc415908ecf63e50f46cce67e8",
      "tree": "ec2e4ae98a07b51328f585c84c2696a320790bd2",
      "parents": [
        "f0d2c1c4eb613130e34a4f377d8f82f935170873"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Fri Mar 25 13:09:25 2011 -0700"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Thu Apr 07 12:28:37 2011 -0700"
      },
      "message": "Add external dependency API.\n\nAn APN will not be connected to if some external dependency is not met.\n\nbug:3486704\nChange-Id: I7d94df343b260013efd11faa978deb13f07f1389\n"
    },
    {
      "commit": "53859740213b42fd00f0ce6d059b58322b41534c",
      "tree": "d2e63dba91b7e41600ddb0263f3197de33dfd505",
      "parents": [
        "9cdffa1788e2f24a674f185307000946aeb3760f"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Wed Apr 06 18:27:43 2011 -0700"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Wed Apr 06 18:27:43 2011 -0700"
      },
      "message": "less logging\n\nChange-Id: I4011db5c2a610e741a09e4e8fee68a86175769cc\n"
    },
    {
      "commit": "e4e551e0ffb1113984ed0ae0264a54e9c8289f8d",
      "tree": "20db6d0b77bc462349411036c1a19d5778ffa829",
      "parents": [
        "b589f47d01fdd3a857dcdedb303afd87f81d12a9",
        "63ebffcb84f4e2fc55d576aed07c4559f66d97a8"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Wed Apr 06 12:04:35 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Apr 06 12:04:35 2011 -0700"
      },
      "message": "Merge \"turn off log spew\""
    },
    {
      "commit": "63ebffcb84f4e2fc55d576aed07c4559f66d97a8",
      "tree": "64f189f3c3f5956f46b9d13ad1d61583b341425b",
      "parents": [
        "ea495d4c1f6e0aefe145a9a6c75a2aab4daf2037"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Wed Apr 06 11:47:23 2011 -0700"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Wed Apr 06 11:50:50 2011 -0700"
      },
      "message": "turn off log spew\n\nChange-Id: I7e5564e02460ff41829c9fd26d80032ea3104498\n"
    },
    {
      "commit": "3fc982f41fda1f254bfbc35490d81cd82a0ed90a",
      "tree": "6f9ba92dc2c9001a156f298c37dcdef9c9552600",
      "parents": [
        "fb84ce0df6b2db84981e4efa4530397a85240d4a"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Mar 30 16:20:26 2011 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Apr 06 11:00:37 2011 -0700"
      },
      "message": "Add new resource configurations for screen width/height in \"dp\".\n\nYou can now specify resource configuration variants \"wNNNdp\"\nand \"hNNNdp\".  These are the minimum screen width/height in \"dp\"\nunits.  This allows you to do things like have your app adjust\nits layout based only on the about of horizontal space available.\n\nThis introduces a new configuration change flag for screen size.\nNote that this configuration change happens each time the orientation\nchanges.  Applications often say they handle the orientation change\nto avoid being restarted at a screen rotation, and this will now\ncause them to be restarted.  To address this, we assume the app can\nhandle this new config change if its target SDK version is \u003c ICS.\n\nChange-Id: I22f8afa136b4f274423978c570fa7c9855040496\n"
    },
    {
      "commit": "955276656755bdc85518049305a8492b3f7f8b0a",
      "tree": "48f417bc4534e0f18a0214e9fa7f34b44bf1b475",
      "parents": [
        "14faa3bd8bd6d1deab63a40ad2f8b6e451a16208",
        "2b7f63887e39079a52592fb4507d8daaf90e8afa"
      ],
      "author": {
        "name": "Irfan Sheriff",
        "email": "isheriff@google.com",
        "time": "Wed Apr 06 09:16:26 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Apr 06 09:16:26 2011 -0700"
      },
      "message": "Merge \"Add support for supplicant SCAN_INTERVAL\""
    },
    {
      "commit": "2b7f63887e39079a52592fb4507d8daaf90e8afa",
      "tree": "ca7a52132f7dd38e083cc8cc7e0571a789fa70b0",
      "parents": [
        "3b2c5a9a09057ad07331bceae983ce0d4ce852ac"
      ],
      "author": {
        "name": "Irfan Sheriff",
        "email": "isheriff@google.com",
        "time": "Fri Mar 25 14:29:19 2011 -0700"
      },
      "committer": {
        "name": "Irfan Sheriff",
        "email": "isheriff@google.com",
        "time": "Wed Apr 06 09:11:15 2011 -0700"
      },
      "message": "Add support for supplicant SCAN_INTERVAL\n\nAlso, allow scan interval for framework and supplicant\nto be configured at build time or run time\n\nBug: 4144882\nChange-Id: I877f4bcc872597b44d3f4da85cf2bc0f16e09444\n"
    },
    {
      "commit": "772a3b310620b30a1a02f38678c223bb3993d6ba",
      "tree": "49a2301f9dad719e289fab12faf1cbfe04a39cc9",
      "parents": [
        "aefb1ea5b08a612da42e852366acfedcb802a6fd",
        "80e0a416a6f8d70d3f55614695fb430f914371bc"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Apr 05 12:41:47 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 05 12:41:47 2011 -0700"
      },
      "message": "Merge \"MountService: Fix running media scanner at boot.\""
    },
    {
      "commit": "aefb1ea5b08a612da42e852366acfedcb802a6fd",
      "tree": "939224293037c8471a569b2429303a8c9b49d47b",
      "parents": [
        "31c91b335ed95c1b1d1e6c4d521a49f1dd860636",
        "84338c4559cd675cc8727c44bd1b6ad485b1a272"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Apr 05 12:41:35 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 05 12:41:35 2011 -0700"
      },
      "message": "Merge \"Fix deadlock in MountService\""
    },
    {
      "commit": "80e0a416a6f8d70d3f55614695fb430f914371bc",
      "tree": "e82eb4c46babf30d6b2f9e8c21d6dc0fa3812dc7",
      "parents": [
        "84338c4559cd675cc8727c44bd1b6ad485b1a272"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Apr 05 10:21:51 2011 -0400"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Apr 05 10:22:25 2011 -0400"
      },
      "message": "MountService: Fix running media scanner at boot.\n\nChange-Id: Ibd1111b7ec6380011cd10a56f11f891f2e16abc2\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "84338c4559cd675cc8727c44bd1b6ad485b1a272",
      "tree": "6bf76edc0fd50d3c38650a2e3e6711b854a1b8f3",
      "parents": [
        "cace13d72a71cd8802b5804c47f5b5a9a7c01a74"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Apr 05 10:05:47 2011 -0400"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Apr 05 10:07:53 2011 -0400"
      },
      "message": "Fix deadlock in MountService\n\nIt is not safe to call into vold with a lock held on mVolumeStates\nsince we will receive events back from vold on a different thread.\nSo in the boot completed handler we make a copy of the volume list and\nthen call vold to mount volumes after releasing the lock\n\nChange-Id: I0dee91f09e4056132aaaf0fb0a663148c65db1e4\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "42bc0e946f8b986fb3aaada9980b496172e2b511",
      "tree": "1b680f23224d902d462837f6af2c73fd149d81a5",
      "parents": [
        "cace13d72a71cd8802b5804c47f5b5a9a7c01a74",
        "4559764e9f8adadcc80c825fb5dafd3dfb739bcf"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Mon Apr 04 17:41:22 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Apr 04 17:41:22 2011 -0700"
      },
      "message": "Merge \"Fix deadlock in BackupManagerService\""
    },
    {
      "commit": "cace13d72a71cd8802b5804c47f5b5a9a7c01a74",
      "tree": "da1b7796dae43da70725d188a17fa946320e6cf2",
      "parents": [
        "47c5581adab6a9c3cdba4c8bed51e0454abf7b80",
        "8fa5f804e21233c5f1993212fd5fb7c200eec905"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Mon Apr 04 17:39:21 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Apr 04 17:39:21 2011 -0700"
      },
      "message": "Merge \"StorageManager: Add getVolumeList() and getVolumeState() methods\""
    },
    {
      "commit": "47c5581adab6a9c3cdba4c8bed51e0454abf7b80",
      "tree": "78bfa2cee2bbd306df06cdb75a061cf812d5e326",
      "parents": [
        "50c697e591223f96d5f341be53a888994e1996ab",
        "7fa24aa8da3d2ab22b3a7d53fe64d14c31c076b8"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Mon Apr 04 17:39:15 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Apr 04 17:39:15 2011 -0700"
      },
      "message": "Merge \"MountService: Add support for multiple volumes\""
    },
    {
      "commit": "4559764e9f8adadcc80c825fb5dafd3dfb739bcf",
      "tree": "b519a74bea7154901575cddce97661db59ee620f",
      "parents": [
        "78a9f6a8227d1e9b465acb84f8476a30c5af9c13"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Mon Apr 04 16:59:21 2011 -0700"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Mon Apr 04 16:59:21 2011 -0700"
      },
      "message": "Fix deadlock in BackupManagerService\n\nLock ordering bug.  The fix is to avoid having to hold both locks\nsimultaneously in one prong of the deadlock.  (Further strengthening:\nthe code path for potentially acquiring both simultaneously now\nbegins at a common method, ensuring that lock ordering is always\nconsistent.)\n\nChange-Id: If9433aff8326fec2ba0e97e96ad2d835b01e2cda\n"
    },
    {
      "commit": "b6c5d824c0eb34c218d18982c51b69c2df198220",
      "tree": "821ea415fb80c7e3b55b81594c0e301a646cfbdb",
      "parents": [
        "b76bcc07d859d1903501c13efd217d1c5be0b9dd",
        "e716a5515bfb9d9f1f8a5b87fee8b75bef3a1a96"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Mon Apr 04 16:44:25 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Apr 04 16:44:25 2011 -0700"
      },
      "message": "am e716a551: resolved conflicts for merge of ab2194aa to honeycomb-plus-aosp\n\n* commit \u0027e716a5515bfb9d9f1f8a5b87fee8b75bef3a1a96\u0027:\n  Only leave one default network up at a time.\n"
    },
    {
      "commit": "e716a5515bfb9d9f1f8a5b87fee8b75bef3a1a96",
      "tree": "64c444d1d2e9395d8b8b860d4645c1e644a63256",
      "parents": [
        "da8beef55612738d87d6aa520445377a9e4ae784",
        "ab2194aadeb35a1f2eae6c4d3abd476b33f167f4"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Mon Apr 04 16:26:42 2011 -0700"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Mon Apr 04 16:26:42 2011 -0700"
      },
      "message": "resolved conflicts for merge of ab2194aa to honeycomb-plus-aosp\n\nChange-Id: I99a29f920336b00b26b9aadafd2bd835049f48cf\n"
    },
    {
      "commit": "8fa5f804e21233c5f1993212fd5fb7c200eec905",
      "tree": "c79c5fe5ab468870918659cf6eb01805c2c05c6f",
      "parents": [
        "7fa24aa8da3d2ab22b3a7d53fe64d14c31c076b8"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Mar 24 08:12:30 2011 -0700"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Mon Apr 04 18:54:03 2011 -0400"
      },
      "message": "StorageManager: Add getVolumeList() and getVolumeState() methods\n\nChange-Id: Icf3301827dd27e8430bd44eaafde517a31ef035a\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "7fa24aa8da3d2ab22b3a7d53fe64d14c31c076b8",
      "tree": "351ddbacbe52e21080e951b43b41fff3958b13df",
      "parents": [
        "7f5a026d255fdcbd600a01b4abbd87eb0b528e37"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Wed Mar 23 14:52:34 2011 -0400"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Mon Apr 04 18:53:58 2011 -0400"
      },
      "message": "MountService: Add support for multiple volumes\n\nChange-Id: I4eaa781cf302c7aaae170af2489b6b29120c0b81\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "37334c0f34ef40735b9f44918b53c1469ceae2cc",
      "tree": "3629b74d86d3d93bcf2c0e805693e3482750ec91",
      "parents": [
        "38a1345b8dc59a8acbaa9013b4ddb2efc6dc6afe",
        "8f7aad147d790b25bae7301827e070df72690341"
      ],
      "author": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@android.com",
        "time": "Mon Apr 04 15:28:48 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Apr 04 15:28:48 2011 -0700"
      },
      "message": "am 8f7aad14: am f7a34b15: am e558a000: Merge \"Avoid crash in system server when mounting container\"\n\n* commit \u00278f7aad147d790b25bae7301827e070df72690341\u0027:\n  Avoid crash in system server when mounting container\n"
    },
    {
      "commit": "8f7aad147d790b25bae7301827e070df72690341",
      "tree": "edb2ab4d3ccdd8a0d5064071837614e4fbe9172b",
      "parents": [
        "549177e4f3f5e2a92e1431c157cebb985068a5ee",
        "f7a34b15986f8c00bc6fb941a40f9acbe2c21aff"
      ],
      "author": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@android.com",
        "time": "Mon Apr 04 15:25:21 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Apr 04 15:25:21 2011 -0700"
      },
      "message": "am f7a34b15: am e558a000: Merge \"Avoid crash in system server when mounting container\"\n\n* commit \u0027f7a34b15986f8c00bc6fb941a40f9acbe2c21aff\u0027:\n  Avoid crash in system server when mounting container\n"
    },
    {
      "commit": "ab2194aadeb35a1f2eae6c4d3abd476b33f167f4",
      "tree": "41b22f61ce558294891740e83af633b8c6e7a34b",
      "parents": [
        "37229514c56dac0c1e3cef6bc8229232d0c75b96",
        "27725e8cd1e2eb3b88186ae8d43e437f130b1f84"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Mon Apr 04 12:18:58 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Apr 04 12:18:58 2011 -0700"
      },
      "message": "am 27725e8c: Only leave one default network up at a time.\n\n* commit \u002727725e8cd1e2eb3b88186ae8d43e437f130b1f84\u0027:\n  Only leave one default network up at a time.\n"
    },
    {
      "commit": "6907891b1f2d706fa2bd6c40b986f73e5666e00e",
      "tree": "8bf8129f35c161ac4ef0e7807985ec63f8a6f5ff",
      "parents": [
        "7f5a026d255fdcbd600a01b4abbd87eb0b528e37"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Apr 04 12:15:34 2011 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Apr 04 12:15:34 2011 -0700"
      },
      "message": "You can\u0027t fsync(2) /dev/urandom...\n\n...so don\u0027t even try. Doing so leads to this:\n\nW/EntropyService( 1586): unable to load initial entropy (first boot?)\nW/EntropyService( 1586): java.io.SyncFailedException: fsync failed: EINVAL (Invalid argument)\nW/EntropyService( 1586): \tat java.io.FileDescriptor.sync(FileDescriptor.java:73)\nW/EntropyService( 1586): \tat java.io.RandomAccessFile.write(RandomAccessFile.java:694)\nW/EntropyService( 1586): \tat java.io.RandomAccessFile.write(RandomAccessFile.java:676)\nW/EntropyService( 1586): \tat com.android.server.RandomBlock.toDataOut(RandomBlock.java:88)\nW/EntropyService( 1586): \tat com.android.server.RandomBlock.toFile(RandomBlock.java:70)\nW/EntropyService( 1586): \tat com.android.server.EntropyService.loadInitialEntropy(EntropyService.java:99)\nW/EntropyService( 1586): \tat com.android.server.EntropyService.\u003cinit\u003e(EntropyService.java:86)\nW/EntropyService( 1586): \tat com.android.server.EntropyService.\u003cinit\u003e(EntropyService.java:76)\nW/EntropyService( 1586): \tat com.android.server.ServerThread.run(SystemServer.java:139)\nW/EntropyService( 1586): Caused by: libcore.io.ErrnoException: fsync failed: EINVAL (Invalid argument)\nW/EntropyService( 1586): \tat libcore.io.Posix.fsync(Native Method)\nW/EntropyService( 1586): \tat libcore.io.BlockGuardOs.fsync(BlockGuardOs.java:39)\nW/EntropyService( 1586): \tat java.io.FileDescriptor.sync(FileDescriptor.java:71)\nW/EntropyService( 1586): \t... 8 more\n\nChange-Id: I598a9456eccec0ca087f1568d47b6b8e531de8a8\n"
    },
    {
      "commit": "f7a34b15986f8c00bc6fb941a40f9acbe2c21aff",
      "tree": "eeda29222889d2dc6013e76a57d4ed6ee1d274d0",
      "parents": [
        "92d72ca01ba1c9e6cfed318a86287ffd0cc2c385",
        "e558a0000389a2523b8d3d3a787db6b4579d2bdc"
      ],
      "author": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@android.com",
        "time": "Mon Apr 04 10:17:35 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Apr 04 10:17:35 2011 -0700"
      },
      "message": "am e558a000: Merge \"Avoid crash in system server when mounting container\"\n\n* commit \u0027e558a0000389a2523b8d3d3a787db6b4579d2bdc\u0027:\n  Avoid crash in system server when mounting container\n"
    },
    {
      "commit": "a20c8ef471666cf8b0dca91a8739ff18af1741a5",
      "tree": "3fcf6ffe241ab64583a55fb207d323a314d6bd16",
      "parents": [
        "c6b22e2727bd3730edd5ad72831a9bb4670d00f3"
      ],
      "author": {
        "name": "Fredrik Helmer",
        "email": "fredrik.helmer@sonyericsson.com",
        "time": "Wed Feb 09 16:16:10 2011 +0100"
      },
      "committer": {
        "name": "Johan Redestig",
        "email": "johan.redestig@sonyericsson.com",
        "time": "Mon Apr 04 14:38:24 2011 +0200"
      },
      "message": "Avoid crash in system server when mounting container\n\nA race condition when mounting a container in PackageHelper may cause\nthe system_server to crash (uncaught exception). Calling methods are\nprepared to handle null, so return null instead.\n\nChange-Id: I852ee21a2d847e37d81c1b900c27ddf94ef24fcb\n"
    },
    {
      "commit": "09bc5f5b5789818bee8d6eae3df68d855c627326",
      "tree": "4c2a195ebd92944a1d8a097b3e294b75962c43df",
      "parents": [
        "bc2278b95f4012d81918b0faedea36011f122a33",
        "9c1e23baf5bfbebd1aebbd6d9a18c225325567ce"
      ],
      "author": {
        "name": "Chet Haase",
        "email": "chet@google.com",
        "time": "Fri Apr 01 13:28:10 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 01 13:28:10 2011 -0700"
      },
      "message": "Merge \"Add logging of graphics acceleration info to bugreports\""
    },
    {
      "commit": "9c1e23baf5bfbebd1aebbd6d9a18c225325567ce",
      "tree": "00eeed008fc5b296391adfcb20a610e37849cf87",
      "parents": [
        "827107f4ec7d9a53d7bb6e4071858252f263fa8c"
      ],
      "author": {
        "name": "Chet Haase",
        "email": "chet@google.com",
        "time": "Thu Mar 24 10:51:31 2011 -0700"
      },
      "committer": {
        "name": "Chet Haase",
        "email": "chet@google.com",
        "time": "Fri Apr 01 13:24:53 2011 -0700"
      },
      "message": "Add logging of graphics acceleration info to bugreports\n\nChange-Id: I9fa4cda6ccf92df9d1c644ccdc0e7274a30106e0\n"
    },
    {
      "commit": "bc2278b95f4012d81918b0faedea36011f122a33",
      "tree": "8836705e54192c71efac8c72a36efa36692b13c6",
      "parents": [
        "165121f64acb8ebd0f1b955684360477c71660d3",
        "21bc5c917d4ee2a9b2b8173091e6bba85eaff899"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Apr 01 12:56:35 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 01 12:56:35 2011 -0700"
      },
      "message": "Merge \"Add a little input event consistency verifier.\""
    },
    {
      "commit": "13ec406381335b7b73ac989c296baac31a64df81",
      "tree": "1199af93e76ebc6179a23ad97c8adf3393c6f75b",
      "parents": [
        "827107f4ec7d9a53d7bb6e4071858252f263fa8c"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Fri Apr 01 10:51:22 2011 -0700"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Fri Apr 01 10:51:22 2011 -0700"
      },
      "message": "Fix a bad merge.\n\nRe-add change 103769 (Change-Id: I9e7c94718a5b1f08840b219b304ba3904259a65f) from gingerbread\nafter the bad merge was reverted by master change 104487\n(Change-Id: I8fad7ee11f4b26630f3cc4b31cc9cafbe66b3bf4).\n\nbug:4157610\nChange-Id: I96a75d71220cc7886a5b186b415d8dacf6951ca6\n"
    },
    {
      "commit": "21bc5c917d4ee2a9b2b8173091e6bba85eaff899",
      "tree": "f62d92d00808b53244fd6ae31f5efd58e3f08a02",
      "parents": [
        "0029c66203ab9ded4342976bf7a17bb63af8c44a"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Feb 28 18:27:14 2011 -0800"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Thu Mar 31 19:57:00 2011 -0700"
      },
      "message": "Add a little input event consistency verifier.\n\nThe idea is to assist with debugging by identifying cases in which\nthe input event stream is corrupted.\n\nChange-Id: I0a00e52bbe2716be1b3dfc7c02a754492d8e7f1f\n"
    },
    {
      "commit": "b1c6b0f1e2c9d80369ff62beae1305b837d8faca",
      "tree": "043797a90c901da0068f4e1a0cccd62a03f531e7",
      "parents": [
        "0b3973143191962d3c4372523ed450f6a5bf0863"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Thu Mar 31 10:44:47 2011 -0700"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Thu Mar 31 10:44:47 2011 -0700"
      },
      "message": "Fix the build.\n\nFix a bad merge.\n\nChange-Id: I45d418a8868c9cab1b142ef997ad1d3550d11eee\n"
    },
    {
      "commit": "8fad7ee11f4b26630f3cc4b31cc9cafbe66b3bf4",
      "tree": "2f4f60018acdc2d52d139c1d4a81850d367e9dc8",
      "parents": [
        "47015057b1d03b7605487e2f94d563c976321cd5"
      ],
      "author": {
        "name": "Michael Jurka",
        "email": "mikejurka@google.com",
        "time": "Wed Mar 30 19:54:08 2011 -0700"
      },
      "committer": {
        "name": "Michael Jurka",
        "email": "mikejurka@google.com",
        "time": "Wed Mar 30 19:57:12 2011 -0700"
      },
      "message": "Fix the build\n\nRevert \"am 047f9d12: Merge \"resolved conflicts for merge of ce6766ea to honeycomb-plus-aosp\" into honeycomb-plus-aosp\"\n\nThis reverts commit 352f2c33d3b8a0b73dcdab98c7a77f698578b048, reversing\nchanges made to ce8a55db6feae11c1db45a868a7d8a0e7d105471."
    },
    {
      "commit": "e028290d01b730b30df0dd4653f8e1c5d987b6f4",
      "tree": "ae997b32318265dd832e81ade72f44f0e0b9eec1",
      "parents": [
        "a3869525289b9490a24e72673d3b3168ce6424d1",
        "0029c66203ab9ded4342976bf7a17bb63af8c44a"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Wed Mar 30 17:20:56 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 30 17:20:56 2011 -0700"
      },
      "message": "Merge \"Add input filter mechanism for accessibility.\""
    },
    {
      "commit": "a3869525289b9490a24e72673d3b3168ce6424d1",
      "tree": "149faf173b9b6961446a513bced5a4eabf2ffd80",
      "parents": [
        "bacdc8108aed0bb100d7109da585fd2882c3abf2",
        "6e6cd7a5660af1a4b5a9ad091c41ef1c72ad2000"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Wed Mar 30 17:20:50 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 30 17:20:50 2011 -0700"
      },
      "message": "Merge \"Move accessibility manager service to own package.\""
    },
    {
      "commit": "0029c66203ab9ded4342976bf7a17bb63af8c44a",
      "tree": "a0d5f54ff6f88dae18179d1621dd2c87f1fa8d27",
      "parents": [
        "6e6cd7a5660af1a4b5a9ad091c41ef1c72ad2000"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Wed Mar 30 02:25:18 2011 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Wed Mar 30 16:55:15 2011 -0700"
      },
      "message": "Add input filter mechanism for accessibility.\n\nThis patch adds a mechanism for capturing, filtering, transforming\nand injecting input events at a very low level before the input\ndispatcher attempts to deliver them to applications.  At this time,\nthe mechanism is only intended to be used by the accessibility\nsystem to implement built-in system-level accessibility affordances.\n\nThe accessibility input filter is currently just a stub.\nIt logs the input events receives and reinjects them unchanged,\nexcept that it transforms KEYCODE_Q into KEYCODE_Z.\n\nCurrently, the accessibility input filter is installed whenever\naccessibility is enabled.  We\u0027ll probably want to change that\nso it only enables the input filter when a screen reader is\ninstalled and we want touch exploration.\n\nChange-Id: I35764fdf75522b69d09ebd78c9766eb7593c1afe\n"
    },
    {
      "commit": "352f2c33d3b8a0b73dcdab98c7a77f698578b048",
      "tree": "d31f2822625e2f8037889ec2403aeb1d9e670170",
      "parents": [
        "ce8a55db6feae11c1db45a868a7d8a0e7d105471",
        "047f9d12976d90d0931a64a256bb4843d77f5e20"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Wed Mar 30 16:40:23 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Mar 30 16:40:23 2011 -0700"
      },
      "message": "am 047f9d12: Merge \"resolved conflicts for merge of ce6766ea to honeycomb-plus-aosp\" into honeycomb-plus-aosp\n\n* commit \u0027047f9d12976d90d0931a64a256bb4843d77f5e20\u0027:\n  Fix some alt-network issues.\n"
    },
    {
      "commit": "b9d173ce8f6e40f0861de56ef00a14cf253dfd54",
      "tree": "e519846fc51f10e67df7b65e2b8833cf0db40e5b",
      "parents": [
        "d0b4e9611da8466a352ff194484d674a05a6ae42",
        "f68098534e42b33cd4588bb2d2ba34ab579e11aa"
      ],
      "author": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@android.com",
        "time": "Wed Mar 30 16:37:58 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Mar 30 16:37:58 2011 -0700"
      },
      "message": "am f6809853: am 7a84a60d: am 1a5a2379: Merge \"Unregister callback from binder when vibration is removed\"\n\n* commit \u0027f68098534e42b33cd4588bb2d2ba34ab579e11aa\u0027:\n  Unregister callback from binder when vibration is removed\n"
    },
    {
      "commit": "d0b4e9611da8466a352ff194484d674a05a6ae42",
      "tree": "fc389735bf030a974065f461ead2af01fafc4c7c",
      "parents": [
        "f9fb0abbd678102beb546bd676f0b37aa22d49f5",
        "08d5de83393dbd4d31893d96e4871a8a3628a2cd"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Wed Mar 30 16:33:40 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Mar 30 16:33:40 2011 -0700"
      },
      "message": "am 08d5de83: am cd90d1f1: am 44e4b99f: Merge \"UsbService: Make USB disconnect handling for accessory mode more robust\" into honeycomb-mr1\n\n* commit \u002708d5de83393dbd4d31893d96e4871a8a3628a2cd\u0027:\n  UsbService: Make USB disconnect handling for accessory mode more robust\n"
    },
    {
      "commit": "6244f0fc168291b428ba2595e0a3a0d5d4be2bd4",
      "tree": "d1e13344dbc1be811393c97595508c1e2a185f32",
      "parents": [
        "66ec90687f3579fe73f6baa2a188f8a4583167a3",
        "ce6766ea51a943b9f8908cb18d0d9762497b478c"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Wed Mar 30 15:03:13 2011 -0700"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Wed Mar 30 15:03:13 2011 -0700"
      },
      "message": "resolved conflicts for merge of ce6766ea to honeycomb-plus-aosp\n\nChange-Id: I4c3c382cc5cd89f8a4437cf17836fb42f9417ee1\n"
    },
    {
      "commit": "11ebb6f5020761b9b8373a5e0d777fb91a2b92c2",
      "tree": "e222107253cc5a87791722373ea6d23941cb3b62",
      "parents": [
        "ce6766ea51a943b9f8908cb18d0d9762497b478c",
        "05f14e2bcf78be62b35e85902408ea66103a3881"
      ],
      "author": {
        "name": "Irfan Sheriff",
        "email": "isheriff@google.com",
        "time": "Wed Mar 30 09:30:32 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Mar 30 09:30:32 2011 -0700"
      },
      "message": "am 05f14e2b: Merge \"DO NOT MERGE Pick upstream intf with valid IP conf\" into gingerbread\n\n* commit \u002705f14e2bcf78be62b35e85902408ea66103a3881\u0027:\n  DO NOT MERGE Pick upstream intf with valid IP conf\n"
    },
    {
      "commit": "ce6766ea51a943b9f8908cb18d0d9762497b478c",
      "tree": "cb3bc895093ac76608b863466d0abf617a9f64bc",
      "parents": [
        "5e1383f25782e553294bca387f3c072073416416",
        "568845a766cddc4e4c222b4d9de064f8a48da990"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Wed Mar 30 09:30:15 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Mar 30 09:30:15 2011 -0700"
      },
      "message": "am 568845a7: Merge \"Fix some alt-network issues.\" into gingerbread\n\n* commit \u0027568845a766cddc4e4c222b4d9de064f8a48da990\u0027:\n  Fix some alt-network issues.\n"
    },
    {
      "commit": "f68098534e42b33cd4588bb2d2ba34ab579e11aa",
      "tree": "222060c6631e276f666d70e0e028a4a668df0b53",
      "parents": [
        "08d5de83393dbd4d31893d96e4871a8a3628a2cd",
        "7a84a60d569ef7373fbb6418026b935d48fcd7e7"
      ],
      "author": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@android.com",
        "time": "Wed Mar 30 08:20:51 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Mar 30 08:20:51 2011 -0700"
      },
      "message": "am 7a84a60d: am 1a5a2379: Merge \"Unregister callback from binder when vibration is removed\"\n\n* commit \u00277a84a60d569ef7373fbb6418026b935d48fcd7e7\u0027:\n  Unregister callback from binder when vibration is removed\n"
    },
    {
      "commit": "6e6cd7a5660af1a4b5a9ad091c41ef1c72ad2000",
      "tree": "db62759a058f684a17e81ccaf2ba7c6b04d3ad65",
      "parents": [
        "163ac289ae9952fb79c47121d65e40ed3cc75b0d"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Wed Mar 30 03:27:08 2011 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Wed Mar 30 03:29:30 2011 -0700"
      },
      "message": "Move accessibility manager service to own package.\n\nChange-Id: I0d73737a21615f0ff0abc80b757fb8c9bcb50be5\n"
    },
    {
      "commit": "08d5de83393dbd4d31893d96e4871a8a3628a2cd",
      "tree": "660121f74c3c9d5535455103be0853538f011e9d",
      "parents": [
        "0c691f0eb3bc844e778f9a61e777076658879dfd",
        "cd90d1f1173c344738362d24bdc637c355b75645"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Mar 29 22:17:36 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Mar 29 22:17:36 2011 -0700"
      },
      "message": "am cd90d1f1: am 44e4b99f: Merge \"UsbService: Make USB disconnect handling for accessory mode more robust\" into honeycomb-mr1\n\n* commit \u0027cd90d1f1173c344738362d24bdc637c355b75645\u0027:\n  UsbService: Make USB disconnect handling for accessory mode more robust\n"
    },
    {
      "commit": "cd90d1f1173c344738362d24bdc637c355b75645",
      "tree": "e6a709449e07b1ef6bfa5fe4a2be0222f02f81b0",
      "parents": [
        "fc151b6eb4a682510f3591879037b524bc8d59d0",
        "44e4b99f823a6d6131f94e67389b705d3b124c0a"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Mar 29 22:16:17 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Mar 29 22:16:17 2011 -0700"
      },
      "message": "am 44e4b99f: Merge \"UsbService: Make USB disconnect handling for accessory mode more robust\" into honeycomb-mr1\n\n* commit \u002744e4b99f823a6d6131f94e67389b705d3b124c0a\u0027:\n  UsbService: Make USB disconnect handling for accessory mode more robust\n"
    },
    {
      "commit": "4f0f3561edfdcdff0ac90f0ea26c64cb16efe643",
      "tree": "65e7ad51c855f4c036702f7809dc315a66315cca",
      "parents": [
        "7661dd8de10d2400cedc421358c4261556b2b5c8"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Mar 29 16:49:42 2011 -0700"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Mar 29 16:59:38 2011 -0700"
      },
      "message": "UsbService: Make USB disconnect handling for accessory mode more robust\n\nHandle the case where the kernel driver is in accessory mode but we failed\nto initialize it at the framework level.  On disconnnect, check to see if the\naccessory kernel driver is enabled rather than checking mCurrentAccessory.\nThat way we will restore the USB state in the kernel even if mCurrentAccessory\nis null.\n\nChange-Id: I35d458f21a8b21611946da523d0f53723cab0540\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "27725e8cd1e2eb3b88186ae8d43e437f130b1f84",
      "tree": "e954968307360f7e95226acd419878ffad19c887",
      "parents": [
        "7544b23e52c004cda817874c54d88080b6e90bdc"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Tue Mar 29 11:36:28 2011 -0700"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Tue Mar 29 11:36:28 2011 -0700"
      },
      "message": "Only leave one default network up at a time.\n\nIf original refuses to tear down, tear down new one.  It\u0027s better\nto have none (which will try to launch them all again) than two.\n\nReally people shouldn\u0027t refuse the teardown request.\n\nbug:4183397\nChange-Id: I54ea1bf0d2cd2ef16fcf2eafc69895ad2fe33ffd\n"
    },
    {
      "commit": "35167d95e155f4b4a962bad9613ae66f6a36f88b",
      "tree": "96eb2ceb51b0dfa53b227c34f7be559c0bd67338",
      "parents": [
        "45538666db67a3fd528765b22bd4da30280128ef"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Mon Mar 28 20:29:14 2011 -0700"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Mon Mar 28 20:29:14 2011 -0700"
      },
      "message": "Remove logging from HardwareService flashlight calls\n\nBug: 4184090\n\nChange-Id: I772b9098e082afcde09ae607d196c1591137fa6d\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "7a84a60d569ef7373fbb6418026b935d48fcd7e7",
      "tree": "45c9ffd1311760dd973b940a0bcb78201024a2f4",
      "parents": [
        "ad91eee2774e18204a14d473242efe5640b91152",
        "1a5a2379eb3a6cf16fb153aecbc4ac9e85d3ed42"
      ],
      "author": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@android.com",
        "time": "Mon Mar 28 08:15:35 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Mar 28 08:15:35 2011 -0700"
      },
      "message": "am 1a5a2379: Merge \"Unregister callback from binder when vibration is removed\"\n\n* commit \u00271a5a2379eb3a6cf16fb153aecbc4ac9e85d3ed42\u0027:\n  Unregister callback from binder when vibration is removed\n"
    },
    {
      "commit": "ff5075944eba8d644ace8ca6b8c5e2ea060698dc",
      "tree": "411b0de9986a5be66919a5ad063692ec85b13afe",
      "parents": [
        "c50232d517d7b99ae3c3e073f04eb6799c876e8c",
        "447106fc839520d18dcb367ba17fc8ec345bb9e8"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Fri Mar 25 14:41:34 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 25 14:41:34 2011 -0700"
      },
      "message": "Merge changes Ia7add63e,Ic7571dae\n\n* changes:\n  Split dump and annotate users of mPackages lock\n  Split PackageManagerService into subclasses\n"
    },
    {
      "commit": "05f14e2bcf78be62b35e85902408ea66103a3881",
      "tree": "cd7f4ee311df6e9332bc44252a37220c881604ad",
      "parents": [
        "568845a766cddc4e4c222b4d9de064f8a48da990",
        "c0e0dbb45446e5e0f7f131f2180c946778e7d711"
      ],
      "author": {
        "name": "Irfan Sheriff",
        "email": "isheriff@google.com",
        "time": "Fri Mar 25 11:01:02 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 25 11:01:02 2011 -0700"
      },
      "message": "Merge \"DO NOT MERGE Pick upstream intf with valid IP conf\" into gingerbread"
    },
    {
      "commit": "c0e0dbb45446e5e0f7f131f2180c946778e7d711",
      "tree": "113a0d6b4140a16bda3c5430680c560fd3592209",
      "parents": [
        "ff5a09904fb05f2776f1bbf1dd3915f38031190c"
      ],
      "author": {
        "name": "Irfan Sheriff",
        "email": "isheriff@google.com",
        "time": "Mon Jan 17 12:38:30 2011 -0800"
      },
      "committer": {
        "name": "Irfan Sheriff",
        "email": "isheriff@google.com",
        "time": "Fri Mar 25 10:09:55 2011 -0700"
      },
      "message": "DO NOT MERGE Pick upstream intf with valid IP conf\n\nAs a work around for the issue of picking\nthe wrong interface, add a check for selecting\nan upstream interface that has a valid IP configuration\n\nBug: 3362306\nChange-Id: I3e8ab5ef30b69f1adab755d83f5b65c078f73936\n"
    },
    {
      "commit": "7cf5b419da5a49ccead2af51c7b6587ce1195958",
      "tree": "6d248cbcbd093a1de555bbd5c8596f228c7d7d13",
      "parents": [
        "6a19759c0fae744e80c032ca3c23932e73e6d9d9"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Thu Mar 24 21:41:41 2011 -0700"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Fri Mar 25 08:59:08 2011 -0700"
      },
      "message": "Fix some alt-network issues.\n\nTwo issues.\n1) remove default routes for non-default networks.\n2) don\u0027t report mobile is the active default network just because\n   it is active.\n\nbug:4157610\nChange-Id: I9e7c94718a5b1f08840b219b304ba3904259a65f\n"
    },
    {
      "commit": "2625feae79ab418355c2a4dafe8b162bba3cc1cf",
      "tree": "850dd7082ea4d7e6101c151ddee8292c0dd3952d",
      "parents": [
        "ad575f4dda3391baf9fcab927e65afbee32e7b95"
      ],
      "author": {
        "name": "Adam Cohen",
        "email": "adamcohen@google.com",
        "time": "Wed Mar 23 17:24:30 2011 -0700"
      },
      "committer": {
        "name": "Adam Cohen",
        "email": "adamcohen@google.com",
        "time": "Thu Mar 24 19:50:22 2011 -0700"
      },
      "message": "Modifying RemoteViewsFactory interface\n\n-made onDestroy() one way\n-moved uncaught exception handling to the application process\n\nChange-Id: I958571a34eaa48b27e441e3a117c109fb2d2c644\n"
    },
    {
      "commit": "b23949b7454ddb65f81e1bd4426b2cc714ab9c3e",
      "tree": "9c16a1d1935980fcce151eba694272b877645feb",
      "parents": [
        "d973bed36cb4d4da1d97f309119f4114f60e7171"
      ],
      "author": {
        "name": "Mathias Jeppsson",
        "email": "mathias.jeppsson@sonyericsson.com",
        "time": "Tue Sep 28 14:45:23 2010 +0200"
      },
      "committer": {
        "name": "Johan Redestig",
        "email": "johan.redestig@sonyericsson.com",
        "time": "Thu Mar 24 08:49:12 2011 +0100"
      },
      "message": "Unregister callback from binder when vibration is removed\n\nWhen creating new vibration pattern, a callback is registered\nin case binding to caller goes away, by linkToDeath().\nNeed to unregister this callback when we throw away the vibration.\n\nChange-Id: Ibdf0bd415a539054ac7a66f49b33a864f729c546\n"
    },
    {
      "commit": "447106fc839520d18dcb367ba17fc8ec345bb9e8",
      "tree": "b783cdf49f1d890f9356cf3292569e4faaf76cd6",
      "parents": [
        "cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96a"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Mar 23 11:00:15 2011 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Mar 23 17:20:04 2011 -0700"
      },
      "message": "Split dump and annotate users of mPackages lock\n\nSplit the dump() command between PMS and Settings.\n\nTry to annotate all users of the mPackages lock in preparation for\nswitch to reader/writer lock.\n\nAlso mark some locals final as I was reading through the usage of the\nsynchronization on mPackages.\n\nChange-Id: Ia7add63e835e67156edf886f98acebe50cc41f70\n"
    },
    {
      "commit": "15cb32ed9d189526d5a98add386b28cea6bc46b7",
      "tree": "444b95292d8b124480e12930cf49139281a87c76",
      "parents": [
        "462db220a2986f7d9fc3d7e3e6af6615570eaa0b",
        "5635dc9313dc6ca3ea739e4ca36c42a2c58537e9"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Tue Mar 22 21:40:54 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Mar 22 21:40:54 2011 -0700"
      },
      "message": "am 5635dc93: am 0b6d0445: am ac70fb8b: Merge \"Fix adding of default route.\" into honeycomb-mr1\n\n* commit \u00275635dc9313dc6ca3ea739e4ca36c42a2c58537e9\u0027:\n  Fix adding of default route.\n"
    },
    {
      "commit": "5635dc9313dc6ca3ea739e4ca36c42a2c58537e9",
      "tree": "dcbaff3aa2358af6a0b7785eb5e8dcd9834fb230",
      "parents": [
        "2f97217bfca0e89b88498c44a8f0f5ad35091b0a",
        "0b6d044567b9c3004eb7ed826fd593019cd24352"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Tue Mar 22 21:39:19 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Mar 22 21:39:19 2011 -0700"
      },
      "message": "am 0b6d0445: am ac70fb8b: Merge \"Fix adding of default route.\" into honeycomb-mr1\n\n* commit \u00270b6d044567b9c3004eb7ed826fd593019cd24352\u0027:\n  Fix adding of default route.\n"
    },
    {
      "commit": "0b6d044567b9c3004eb7ed826fd593019cd24352",
      "tree": "e0e7b3ff7ad91a8b49dc04c1049bbeffd190c4f8",
      "parents": [
        "22e21da663677d12768d38b95d65a747a4a0540b",
        "ac70fb8be6ea3a6b49d0a8a26e99c25f92013516"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Tue Mar 22 21:37:48 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Mar 22 21:37:48 2011 -0700"
      },
      "message": "am ac70fb8b: Merge \"Fix adding of default route.\" into honeycomb-mr1\n\n* commit \u0027ac70fb8be6ea3a6b49d0a8a26e99c25f92013516\u0027:\n  Fix adding of default route.\n"
    }
  ],
  "next": "edcb4f9d560a85970030e1df70426e8d1e2267d2"
}
