)]}'
{
  "log": [
    {
      "commit": "ab79d1febcb6d0bfaaf5e8bfb75f4c641c00a2fb",
      "tree": "8a5a5009232345d0ada22cc70f9a055e6d40f97c",
      "parents": [
        "382f7a140ea25d892831de9d467952db0f68064f"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Oct 18 21:42:27 2010 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Oct 19 23:11:29 2010 -0700"
      },
      "message": "Make camera source ready for handling meta-data video buffers.\n\nbug - 3042125\n\nChange-Id: I877b265c6bf8e0593121c8d5a95ae5599cdc6fb9\n"
    },
    {
      "commit": "d793f14fc9225d889c827957c388bb4557a609d7",
      "tree": "70a681cfd97df180e3839a23e4646ecbb8ee3ecf",
      "parents": [
        "e01645137e919ddeb786175e5b25ac11c87962e3",
        "b0a6db20bb2b6431720cbda9ed0ac5d2b8a6feee"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Oct 19 11:25:19 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 19 11:25:19 2010 -0700"
      },
      "message": "Merge \"Camera hal change for 0-memcpy in media recording framework\""
    },
    {
      "commit": "b0a6db20bb2b6431720cbda9ed0ac5d2b8a6feee",
      "tree": "2fb6869043a63239ed51a2e55d3dae0848c9c9b6",
      "parents": [
        "8e5992ad66c601b5d528c4d0259bee881d7a35a8"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Oct 18 20:38:29 2010 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Oct 19 11:21:03 2010 -0700"
      },
      "message": "Camera hal change for 0-memcpy in media recording framework\n\no document the camera hal to clarify the reviewer\u0027s questions.\n\nbug - 3042125\n\nChange-Id: I3edf701d084933ee8d1e3b054d222e8c9dfc42a5\n"
    },
    {
      "commit": "b8b200d10847dd91bcff7a576e401d7d21fff696",
      "tree": "806a3243d1b13066c76910927fd5674104957812",
      "parents": [
        "9cb1898052c42a82dfd86b54f6328d8fcd29dd57",
        "f2c406030874b355ca9e4e67cc0e3aff6103c23e"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Oct 19 09:55:39 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Oct 19 09:55:39 2010 -0700"
      },
      "message": "am f2c40603: am 7689dd49: Merge \"Fix bug where home presses were not poking user activity.\" into gingerbread\n\nMerge commit \u0027f2c406030874b355ca9e4e67cc0e3aff6103c23e\u0027\n\n* commit \u0027f2c406030874b355ca9e4e67cc0e3aff6103c23e\u0027:\n  Fix bug where home presses were not poking user activity.\n"
    },
    {
      "commit": "c46b2a7b591a02bb6beeb2f62c7e571588ca6aa9",
      "tree": "06da129c6dc614d7a3fd9d8b2e52c9a1a35bb7f8",
      "parents": [
        "3222df8d835c23ceaefc7e4782bb2d5146bb4112",
        "9b2f18df2436b6c2d9735e65119b92f320bb57e2"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Oct 19 09:52:25 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Oct 19 09:52:25 2010 -0700"
      },
      "message": "am 9b2f18df: am bc96c284: Merge \"For thumbnail extraction make sure we instantiate a decoder that allows access to the framebuffer. Implement the samsung workaround to support this by reconfiguring the decoder.\" into gingerbread\n\nMerge commit \u00279b2f18df2436b6c2d9735e65119b92f320bb57e2\u0027\n\n* commit \u00279b2f18df2436b6c2d9735e65119b92f320bb57e2\u0027:\n  For thumbnail extraction make sure we instantiate a decoder that allows access to the framebuffer. Implement the samsung workaround to support this by reconfiguring the decoder.\n"
    },
    {
      "commit": "511ee5f89fad45bd0456b1335b745f2b8d87641b",
      "tree": "047740e6909b164a3efbd34578c658dcec846afd",
      "parents": [
        "1b04ed793a64ff1bf3cd2b71bee1fdfb228b44fe"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Oct 18 13:32:20 2010 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Oct 18 17:24:49 2010 -0700"
      },
      "message": "Add support for calibrating touch position.\n\nUseful for tweaking touch screen alignment without having to modify the\nkernel device driver x/y axis bounds.\n\nChange-Id: I6ca43d3c138548f9dfb76aa33150a0c853698fb6\n"
    },
    {
      "commit": "f2c406030874b355ca9e4e67cc0e3aff6103c23e",
      "tree": "cef3bae978fb412cb4d905dab3f989544aedc71e",
      "parents": [
        "8b5161c2aed8637de9bffb1d81298d60ea237caf",
        "7689dd4928d1cc4080e43f83a523521b5ecf44e5"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Oct 18 15:17:12 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Oct 18 15:17:12 2010 -0700"
      },
      "message": "am 7689dd49: Merge \"Fix bug where home presses were not poking user activity.\" into gingerbread\n\nMerge commit \u00277689dd4928d1cc4080e43f83a523521b5ecf44e5\u0027 into gingerbread-plus-aosp\n\n* commit \u00277689dd4928d1cc4080e43f83a523521b5ecf44e5\u0027:\n  Fix bug where home presses were not poking user activity.\n"
    },
    {
      "commit": "e2fe69edc009a0e0348e5351cf83062224e011ac",
      "tree": "beb5873a0c09f8b6f5569ff158cadec5d5c69895",
      "parents": [
        "45bd8303fe20f20843f5a76ddf42a5ace54add58"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Oct 18 13:21:23 2010 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Oct 18 14:50:13 2010 -0700"
      },
      "message": "Fix bug where home presses were not poking user activity.\n\nWe now poke user activity twice: once upon dequeueing an event\nfor dispatch and then again just before we dispatch it.  The second\npoke is to compensate for the fact that it can take a few seconds to\nidentify the dispatch target (if the application is responding slowly)\nbut we want to keep the display from going to sleep for X amount of time\nafter the app gets a chance to actually receive the event.  This mirrors\npre-Gingerbread behavior.\n\nRemoved some unnecessary code that filters user activity pokes when sending\nevents to KeyGuard.  We don\u0027t need this because KeyGuard already tells the\npower manager to disable user activity.\n\nBug: 3101397\nChange-Id: I8c3a77601fdef8f584e84cfdd11aa79da0ff51db\n"
    },
    {
      "commit": "9b2f18df2436b6c2d9735e65119b92f320bb57e2",
      "tree": "9cdb635b45b1f29b81ae5d517cf07f36b75a04bb",
      "parents": [
        "ec62719c8396997b436c44906c2760e3914698b8",
        "bc96c2848dadaa844f95e89708d9941f73bbf400"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Oct 18 11:50:19 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Oct 18 11:50:19 2010 -0700"
      },
      "message": "am bc96c284: Merge \"For thumbnail extraction make sure we instantiate a decoder that allows access to the framebuffer. Implement the samsung workaround to support this by reconfiguring the decoder.\" into gingerbread\n\nMerge commit \u0027bc96c2848dadaa844f95e89708d9941f73bbf400\u0027 into gingerbread-plus-aosp\n\n* commit \u0027bc96c2848dadaa844f95e89708d9941f73bbf400\u0027:\n  For thumbnail extraction make sure we instantiate a decoder that allows access to the framebuffer. Implement the samsung workaround to support this by reconfiguring the decoder.\n"
    },
    {
      "commit": "5a40e394f1e6b0511542e171eaf4c3e5927efc13",
      "tree": "d83620f903022c1bc2b0087d71c2b257dd5a0719",
      "parents": [
        "d1f7f4a68375f879671d300510f23d3ee78a500e"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Oct 18 09:57:42 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Oct 18 10:16:08 2010 -0700"
      },
      "message": "For thumbnail extraction make sure we instantiate a decoder that allows access to the framebuffer. Implement the samsung workaround to support this by reconfiguring the decoder.\n\nrelated-to-bug: 3106534\nChange-Id: Ie28d72af2f9e93818d1840ac83aa7bc11fa57b3b\n"
    },
    {
      "commit": "5b9fd116f9b63e06fa431a57a1c2e4e5bc03f3fc",
      "tree": "8dc337794ab727e50fbd3842ecb1f058e73c2804",
      "parents": [
        "875ecaa511ce36c8044ccdf48ee2a3e69dd633fe",
        "746c6a1c6d70769ee4b08b9a7b87d0c5aa65c2e4"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Oct 18 08:05:09 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Oct 18 08:05:09 2010 -0700"
      },
      "message": "am 746c6a1c: am ff7a7a45: Merge \"Check-in of a copy of the Khronos OpenMAX headers formerly included from external/opencore.\" into gingerbread\n\nMerge commit \u0027746c6a1c6d70769ee4b08b9a7b87d0c5aa65c2e4\u0027\n\n* commit \u0027746c6a1c6d70769ee4b08b9a7b87d0c5aa65c2e4\u0027:\n  Check-in of a copy of the Khronos OpenMAX headers formerly included from external/opencore.\n"
    },
    {
      "commit": "c52862edcfbf4ead5f63929111e84993c2ab8c4a",
      "tree": "863d3a0dfed122ea69b56cafaececa52e65e63a9",
      "parents": [
        "3ee1e7b5ab852a246b45ed903a72409a19645a1b",
        "5f0cbfcecc4db20f897507c826296b3aac70c592"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Sat Oct 16 09:13:13 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sat Oct 16 09:13:13 2010 -0700"
      },
      "message": "am 5f0cbfce: am c1e7b218: Merge \"Improve input device calibration format.\" into gingerbread\n\nMerge commit \u00275f0cbfcecc4db20f897507c826296b3aac70c592\u0027\n\n* commit \u00275f0cbfcecc4db20f897507c826296b3aac70c592\u0027:\n  Improve input device calibration format.\n"
    },
    {
      "commit": "3ee1e7b5ab852a246b45ed903a72409a19645a1b",
      "tree": "be04fd9c88a81ee73bfd1da2188957e29e68ebe4",
      "parents": [
        "e1baa9c79ffd9240a20bab88c865afae5ce53e59",
        "dc3ad87c04348c925aa86863ed6d25f18a8c6c36"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Sat Oct 16 09:12:43 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sat Oct 16 09:12:43 2010 -0700"
      },
      "message": "am dc3ad87c: am 78a76fea: Merge \"Revert to using epoll_wait().\" into gingerbread\n\nMerge commit \u0027dc3ad87c04348c925aa86863ed6d25f18a8c6c36\u0027\n\n* commit \u0027dc3ad87c04348c925aa86863ed6d25f18a8c6c36\u0027:\n  Revert to using epoll_wait().\n"
    },
    {
      "commit": "596e590b472dc33a522f32a74e1f3bacb57534ab",
      "tree": "b302dc1b4c366aef6900082860eca6416a87f3c5",
      "parents": [
        "1cf3e2d0029e3f93d0c22a1b7a37025464c6c660",
        "7e9a54d460030a871a4f05e61e943c6a694e9ef8"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Sat Oct 16 08:52:30 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sat Oct 16 08:52:30 2010 -0700"
      },
      "message": "am 7e9a54d4: am d4e03f37: addresses parts of 3096779 and 3097475\n\nMerge commit \u00277e9a54d460030a871a4f05e61e943c6a694e9ef8\u0027\n\n* commit \u00277e9a54d460030a871a4f05e61e943c6a694e9ef8\u0027:\n  addresses parts of 3096779 and 3097475\n"
    },
    {
      "commit": "6ba052b4847d85831c38c9b8e2942cef4987e55b",
      "tree": "aa693582c047451f74ad1e45943684cde1f314ed",
      "parents": [
        "bce520e6460e712c0985f12cf212e2d72fd1b9e4",
        "c1a564b108c511c0bdd699567c245b031930e718"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Oct 15 18:40:39 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Oct 15 18:40:39 2010 -0700"
      },
      "message": "am c1a564b1: Merge \"Add support for secure system overlays.  (DO NOT MERGE)\" into gingerbread\n\nMerge commit \u0027c1a564b108c511c0bdd699567c245b031930e718\u0027 into gingerbread-plus-aosp\n\n* commit \u0027c1a564b108c511c0bdd699567c245b031930e718\u0027:\n  Add support for secure system overlays.  (DO NOT MERGE)\n"
    },
    {
      "commit": "746c6a1c6d70769ee4b08b9a7b87d0c5aa65c2e4",
      "tree": "3512a5af553e8791f0f46f3142d7dabc3ffb449e",
      "parents": [
        "13e46665ff69c1a37880762d7d611aacdf02dac7",
        "ff7a7a455c15077e2b691efa370619f06058f697"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Oct 15 18:24:56 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Oct 15 18:24:56 2010 -0700"
      },
      "message": "am ff7a7a45: Merge \"Check-in of a copy of the Khronos OpenMAX headers formerly included from external/opencore.\" into gingerbread\n\nMerge commit \u0027ff7a7a455c15077e2b691efa370619f06058f697\u0027 into gingerbread-plus-aosp\n\n* commit \u0027ff7a7a455c15077e2b691efa370619f06058f697\u0027:\n  Check-in of a copy of the Khronos OpenMAX headers formerly included from external/opencore.\n"
    },
    {
      "commit": "3b2b354ec1ba070eae13391d004d97a3e1403050",
      "tree": "e2647c9a8797a4b3542deab7d1cb766967b35879",
      "parents": [
        "1edb2bda37726ba6bc6feeafad25ea51b1cacaee"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Oct 15 00:54:27 2010 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Oct 15 17:10:55 2010 -0700"
      },
      "message": "Add support for secure system overlays.\n\nManual merge from Gingerbread.\n\nThis change adds a new window type for secure system overlays\ncreated by the system itself from non-secure system overlays that\nmight be created by applications that have the system alert permission.\nSecure views ignore the presence of secure system overlays.\n\nBug: 3098519\nChange-Id: Id876736fd8bf332ff9a5428bde59f5268aa49c3a\n"
    },
    {
      "commit": "2d3f159aa9622e05a18e7f93cecd57ad673955ae",
      "tree": "8df18f80f44133f19ce9e669a36bdd785b31460a",
      "parents": [
        "c9f7890a203a013646650a695157277df81b6a17"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Oct 15 00:54:27 2010 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Oct 15 16:03:35 2010 -0700"
      },
      "message": "Add support for secure system overlays.  (DO NOT MERGE)\n\nThis change adds a new window type for secure system overlays\ncreated by the system itself from non-secure system overlays that\nmight be created by applications that have the system alert permission.\nSecure views ignore the presence of secure system overlays.\n\nBug: 3098519\nChange-Id: I8f8398f4fdeb0469e5d71124c21bedf121bd8c07\n"
    },
    {
      "commit": "497a92cc5ba2176b8a8484b0a7da040eac0e887b",
      "tree": "2d9bd7a2ef24754fa83a36f440ee45fd8a32b9fb",
      "parents": [
        "cd9afc3722a1edebf0e6f7172627930052c81ce4"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Sun Sep 12 17:55:08 2010 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Oct 15 16:00:07 2010 -0700"
      },
      "message": "Add keycodes and meta-key modifiers to support external keyboards.\n\nAdded new key maps for external keyboards.  These maps are intended to\nbe shared across devices by inheriting the \"keyboards.mk\" product\nmakefile as part of the device\u0027s product definition.\n\nOne of the trickier changes here was to unwind some code in\nMetaKeyKeyListener that assumed that only the low 8 bits of the meta key\nstate were actually used.  The new code abandons bitshifts in favor\nof simple conditionals that are probably easier to read anyways.\nThe special meta key state constants used by MetaKeyKeyListener\nare now (@hide) defined in KeyEvent now so as to make it clearer that they\nshare the same code space even if those codes are not valid for KeyEvents.\n\nThe EventHub now takes care of detecting the appropriate key layout\nmap and key character map when the device is added and sets system\nproperties accordingly.  This avoids having duplicate code in\nKeyCharacterMap to probe for the appropriate key character map\nalthough the current probing mechanism has been preserved for legacy\nreasons just in case.\n\nAdded support for tracking caps lock, num lock and scroll lock and\nturning their corresponding LEDs on and off as needed.\n\nThe key character map format will need to be updated to correctly support\nPC style external keyboard semantics related to modifier keys.\nThat will come in a later change so caps lock doesn\u0027t actually do\nanything right now except turn the shiny LEDs on and off...\n\nAdded a list of symbolic key names to KeyEvent and improved the toString()\noutput for debug diagnosis.  Having this list in a central place in the\nframework also allows us to remove it from Monkey so there is one less\nthing to maintain when we add new keycodes.\n\nBug: 2912307\nChange-Id: If8c25e8d50a7c29bbf5d663c94284f5f86de5da4\n"
    },
    {
      "commit": "fcab0f5502410b975afe045354bbae31ccba68a5",
      "tree": "184b37e57a998580c15fdaa98d7d8bf0c9155a90",
      "parents": [
        "10aca41e51934822dc492cb69b69cef37f42ad42",
        "8fda1636e3e35f060b9046294efd3c062a1fdb84"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Fri Oct 15 14:00:58 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Oct 15 14:00:58 2010 -0700"
      },
      "message": "am 8fda1636: am bdf8034c: Merge \"OBB: use PBKDF2 for key generation.\" into gingerbread\n\nMerge commit \u00278fda1636e3e35f060b9046294efd3c062a1fdb84\u0027\n\n* commit \u00278fda1636e3e35f060b9046294efd3c062a1fdb84\u0027:\n  OBB: use PBKDF2 for key generation.\n"
    },
    {
      "commit": "6ac35f059726cf60a364c1efd783a99c901f2d9d",
      "tree": "99b503aaf16306f2860d51037c014bfb5050e380",
      "parents": [
        "e1f3976bb4eab0d7c46bc8596679d4d00695148c"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Oct 15 13:30:27 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Oct 15 13:30:27 2010 -0700"
      },
      "message": "Check-in of a copy of the Khronos OpenMAX headers formerly included from external/opencore.\n\nChange-Id: Ie2ecf9558d4ee80cb5a2bbe66ad49f2165a7b09c\nrelated-to-bug: 3101573\n"
    },
    {
      "commit": "99e3fab534d3a489726665cb8c71edecd5798b04",
      "tree": "86bb8ed74070ebc7bf2f92b0908a2c2959e25217",
      "parents": [
        "a4a2a3aaef730dbab020f7ece09149b05a399000",
        "5bfa3a34eaef759c3ec4def76f646eb1c0bf997f"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Oct 15 08:33:43 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Oct 15 08:33:43 2010 -0700"
      },
      "message": "am 5bfa3a34: am 011b5bcc: Merge \"implement part of [3094280] New animation for screen on and screen off add support for screen on animation\" into gingerbread\n\nMerge commit \u00275bfa3a34eaef759c3ec4def76f646eb1c0bf997f\u0027\n\n* commit \u00275bfa3a34eaef759c3ec4def76f646eb1c0bf997f\u0027:\n  implement part of [3094280] New animation for screen on and screen off\n"
    },
    {
      "commit": "5f0cbfcecc4db20f897507c826296b3aac70c592",
      "tree": "896363b3d748ce378f9b73909b01c9c63cbe1d14",
      "parents": [
        "dc3ad87c04348c925aa86863ed6d25f18a8c6c36",
        "c1e7b2182594aa0463c4a738cc8e7eea6777ef50"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Oct 15 01:31:14 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Oct 15 01:31:14 2010 -0700"
      },
      "message": "am c1e7b218: Merge \"Improve input device calibration format.\" into gingerbread\n\nMerge commit \u0027c1e7b2182594aa0463c4a738cc8e7eea6777ef50\u0027 into gingerbread-plus-aosp\n\n* commit \u0027c1e7b2182594aa0463c4a738cc8e7eea6777ef50\u0027:\n  Improve input device calibration format.\n"
    },
    {
      "commit": "c1e7b2182594aa0463c4a738cc8e7eea6777ef50",
      "tree": "ac17b21bb33a8844756a72c662d76d4f5ba31317",
      "parents": [
        "78a76fea28b8101c1860a2f1115329e3e63abda3",
        "c6d282bb8223ed21666878f71c5a55013ee37805"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Oct 15 01:15:08 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Oct 15 01:15:08 2010 -0700"
      },
      "message": "Merge \"Improve input device calibration format.\" into gingerbread"
    },
    {
      "commit": "4a90f93781622e5cbca52b962cfe5325a29ec28e",
      "tree": "2215799c3d6212b9e9ad26521fdcbc447a80bc78",
      "parents": [
        "e449fceaa4b1e1c76d95a4255d23ac508bd75751",
        "a127c07c42b8961881f460eb8e6a6b722139e3b9"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Thu Oct 14 23:58:41 2010 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Thu Oct 14 23:58:41 2010 -0700"
      },
      "message": "resolved conflicts for merge of a127c07c to master\n\nChange-Id: Ifdfc6681cba00f36456eaf7a97f34a75b9d0c086\n"
    },
    {
      "commit": "e449fceaa4b1e1c76d95a4255d23ac508bd75751",
      "tree": "8b31fb1768f6a13521faefe47d6bdd6b439944ce",
      "parents": [
        "af95d12b12056b4f88cbb35e61209a953739009b",
        "28b93967d0e702304c7edec854a29d5ab88bfce0"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Oct 14 23:22:21 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 14 23:22:21 2010 -0700"
      },
      "message": "am 28b93967: am 165c6579: Merge \"HTTP Live content that are tagged as complete are now seekable.\" into gingerbread\n\nMerge commit \u002728b93967d0e702304c7edec854a29d5ab88bfce0\u0027\n\n* commit \u002728b93967d0e702304c7edec854a29d5ab88bfce0\u0027:\n  HTTP Live content that are tagged as complete are now seekable.\n"
    },
    {
      "commit": "dc3ad87c04348c925aa86863ed6d25f18a8c6c36",
      "tree": "bbfc1757df259991362a3159742cd8147c820a56",
      "parents": [
        "ebad42d6d35dc0dc07fe89650268453dbdff8a79",
        "78a76fea28b8101c1860a2f1115329e3e63abda3"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Thu Oct 14 22:21:40 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 14 22:21:40 2010 -0700"
      },
      "message": "am 78a76fea: Merge \"Revert to using epoll_wait().\" into gingerbread\n\nMerge commit \u002778a76fea28b8101c1860a2f1115329e3e63abda3\u0027 into gingerbread-plus-aosp\n\n* commit \u002778a76fea28b8101c1860a2f1115329e3e63abda3\u0027:\n  Revert to using epoll_wait().\n"
    },
    {
      "commit": "78a76fea28b8101c1860a2f1115329e3e63abda3",
      "tree": "c4e75c2b58ff80abd29db1527e45d8d034d13d8c",
      "parents": [
        "3fbfee2febf13bcc46c389ebecbf91465ef211b7",
        "a97e50f20d39d2abf0fab77090dd82bdef4bce7a"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Thu Oct 14 22:18:43 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Oct 14 22:18:43 2010 -0700"
      },
      "message": "Merge \"Revert to using epoll_wait().\" into gingerbread"
    },
    {
      "commit": "c6d282bb8223ed21666878f71c5a55013ee37805",
      "tree": "0638ca8d0a5801ee0a5f5fb80ad1d654d4825a55",
      "parents": [
        "75d3591b2dd60e50182542045147b9b6033c2b85"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Thu Oct 14 21:42:15 2010 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Thu Oct 14 21:44:16 2010 -0700"
      },
      "message": "Improve input device calibration format.\n\nAdded support for calibrating touch size for devices that report\nsize as an area measurement rather than as a width.\nFixed some bugs.\n\nBug: 3096045\nChange-Id: I30a12e73752883516ed054f8af407204bca45814\n"
    },
    {
      "commit": "7e9a54d460030a871a4f05e61e943c6a694e9ef8",
      "tree": "bf9ceeac3814d10936174d73ee85b586b633095e",
      "parents": [
        "a8faf91fa558be1235d508e776eb24be4429585c",
        "d4e03f37423bee383d17f7292753a5f67e497a28"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu Oct 14 15:17:16 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 14 15:17:16 2010 -0700"
      },
      "message": "am d4e03f37: addresses parts of 3096779 and 3097475\n\nMerge commit \u0027d4e03f37423bee383d17f7292753a5f67e497a28\u0027 into gingerbread-plus-aosp\n\n* commit \u0027d4e03f37423bee383d17f7292753a5f67e497a28\u0027:\n  addresses parts of 3096779 and 3097475\n"
    },
    {
      "commit": "d4e03f37423bee383d17f7292753a5f67e497a28",
      "tree": "c559d99f0e6c6fda2621c6809b20ffadfc7bcda2",
      "parents": [
        "6d71f6a0ae9fd81ce25562aee67f841b5d8394cf"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu Oct 14 14:54:06 2010 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu Oct 14 14:57:34 2010 -0700"
      },
      "message": "addresses parts of 3096779 and 3097475\n\n3097475: Animation setting should control the screen on animation\n3096779: CRT power-on animation can briefly show the top app instead of lockscreen\n\nThere is now a parameter that controls wether the ON and/or OFF animation are\nperformed. we also always clear the screen to black on power off, to make\nsure it won\u0027t briefly appear on power on.\nHOWEVER, 3096779 is not 100% fixed in the case where we\u0027re doing the animation\nbecause there is a race, where SF doesn\u0027t wait (b/c it doesn\u0027t know) for the\nframework to have redrawn the lockscreen.\n\nChange-Id: Ie0f02c9225fcdf24b1e8907e268eb7da2c5b0a03\n"
    },
    {
      "commit": "eb86aaaab34687a77454fa130b08788db1317d74",
      "tree": "6a0b8bd8dc7d3bb45511902d5d6fba012a3c8b43",
      "parents": [
        "4afdf666fdb034834c48445570ed9d6f4133fc71",
        "9a12a3c8d4bb20042cf69e07d268e3a04ac71f96"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Wed Oct 13 23:34:21 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Oct 13 23:34:21 2010 -0700"
      },
      "message": "am 9a12a3c8: am ba799098: Merge changes I76513387,I335fb671 into gingerbread\n\nMerge commit \u00279a12a3c8d4bb20042cf69e07d268e3a04ac71f96\u0027\n\n* commit \u00279a12a3c8d4bb20042cf69e07d268e3a04ac71f96\u0027:\n  Remove dead code, and make the animation a setting.\n  turn off the electron beam\n"
    },
    {
      "commit": "8fda1636e3e35f060b9046294efd3c062a1fdb84",
      "tree": "9c5d4cb8df12357a067f5214eb2f3dbd08d252ca",
      "parents": [
        "e3c50a5470f64fd99438d6fd985f88d9fe20919a",
        "bdf8034c657147226b2390eef113ff841e0d6065"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Oct 13 22:54:10 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Oct 13 22:54:10 2010 -0700"
      },
      "message": "am bdf8034c: Merge \"OBB: use PBKDF2 for key generation.\" into gingerbread\n\nMerge commit \u0027bdf8034c657147226b2390eef113ff841e0d6065\u0027 into gingerbread-plus-aosp\n\n* commit \u0027bdf8034c657147226b2390eef113ff841e0d6065\u0027:\n  OBB: use PBKDF2 for key generation.\n"
    },
    {
      "commit": "bdf8034c657147226b2390eef113ff841e0d6065",
      "tree": "58be0affeafef6d38ef9e53744af1aaf1a7a8fa8",
      "parents": [
        "cebe5b2e01f8ebbf9089aebc386caecea232df76",
        "3b1abba6bbc895d63da3e82e9b158c01bd12eddd"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Oct 13 18:29:43 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Oct 13 18:29:43 2010 -0700"
      },
      "message": "Merge \"OBB: use PBKDF2 for key generation.\" into gingerbread"
    },
    {
      "commit": "3b1abba6bbc895d63da3e82e9b158c01bd12eddd",
      "tree": "1296e8c25a2927c94783eda83100c061fc9fe379",
      "parents": [
        "dfc07279fc6205c38f5f39cb5ba4f0aef6b593a4"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Oct 13 15:00:07 2010 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Oct 13 18:25:33 2010 -0700"
      },
      "message": "OBB: use PBKDF2 for key generation.\n\nSwitch to using PBKDF2 for the key generation for OBBs. Any previously\ngenerated OBBs will stop being read correctly. A small pbkdf2gen program\nis available to allow generation of appropriate keys with the salts.\n\nBug: 3059950\nChange-Id: If4305c989fd692fd1150eb270dbf751e09c37295\n"
    },
    {
      "commit": "5bfa3a34eaef759c3ec4def76f646eb1c0bf997f",
      "tree": "db253b21d2e04cb6a1c74007eaf595d6edfbd864",
      "parents": [
        "27c7fb1a861776b4fdc2632697e4e25eee83617f",
        "011b5bcc0355338b7ff906656282a54ffaa04b5a"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Oct 13 15:59:42 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Oct 13 15:59:42 2010 -0700"
      },
      "message": "am 011b5bcc: Merge \"implement part of [3094280] New animation for screen on and screen off add support for screen on animation\" into gingerbread\n\nMerge commit \u0027011b5bcc0355338b7ff906656282a54ffaa04b5a\u0027 into gingerbread-plus-aosp\n\n* commit \u0027011b5bcc0355338b7ff906656282a54ffaa04b5a\u0027:\n  implement part of [3094280] New animation for screen on and screen off\n"
    },
    {
      "commit": "011b5bcc0355338b7ff906656282a54ffaa04b5a",
      "tree": "9f6d7c04c957756d2ce6f87dceab45e135e7dff3",
      "parents": [
        "90d59d180bd963f00161e6bfaabfda432960cab6",
        "2d2b803a92ba531cf6c4bb7042326653255b8780"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Oct 13 15:55:57 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Oct 13 15:55:57 2010 -0700"
      },
      "message": "Merge \"implement part of [3094280] New animation for screen on and screen off add support for screen on animation\" into gingerbread"
    },
    {
      "commit": "0a9b54e88b9cbb30748b5f0b331aec3f3ef8d639",
      "tree": "22ff1466c777067596537ccb085cd64ed0bc3bc5",
      "parents": [
        "0726fd9e835579019f6b23ab50d7b45401e11dbe",
        "8bb7a1dfbb43dda49fb3c4f86181bcd7f969a832"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Oct 13 15:43:35 2010 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Oct 13 15:43:51 2010 -0700"
      },
      "message": "resolved conflicts for merge of 8bb7a1df to master\n\nChange-Id: Ieec036f494a54eab74a27b954d1423bf981dd3f9\n"
    },
    {
      "commit": "2d2b803a92ba531cf6c4bb7042326653255b8780",
      "tree": "4f9bfc77e4850d74b260dff622d03a175add6840",
      "parents": [
        "e03471e12f1adcd818b5bfd9dcb894c75fe955c5"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Oct 12 16:05:48 2010 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Oct 13 14:28:26 2010 -0700"
      },
      "message": "implement part of [3094280] New animation for screen on and screen off\nadd support for screen on animation\n\nChange-Id: If50cf52ae04b95b42da7d74cf7fa96d5cb54d238\n"
    },
    {
      "commit": "a127c07c42b8961881f460eb8e6a6b722139e3b9",
      "tree": "1c0168e56514c3afdf64d8098f68009f6a3c54ac",
      "parents": [
        "28b93967d0e702304c7edec854a29d5ab88bfce0",
        "312644cdbb39522fe9cac028b15b907ce0e8e0f7"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Oct 13 09:19:28 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Oct 13 09:19:28 2010 -0700"
      },
      "message": "am 312644cd: Merge \"Support for writing to MPEG2 transport stream files.\" into gingerbread\n\nMerge commit \u0027312644cdbb39522fe9cac028b15b907ce0e8e0f7\u0027 into gingerbread-plus-aosp\n\n* commit \u0027312644cdbb39522fe9cac028b15b907ce0e8e0f7\u0027:\n  Support for writing to MPEG2 transport stream files.\n"
    },
    {
      "commit": "28b93967d0e702304c7edec854a29d5ab88bfce0",
      "tree": "454ead6bcaee4e07f39d13901e7fee7426fb7cdc",
      "parents": [
        "c7ee44cbe155c2272687a0e82133f3e729eac137",
        "165c6579660c22edafb61fee2a0cf39334a2a905"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Oct 13 09:17:13 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Oct 13 09:17:13 2010 -0700"
      },
      "message": "am 165c6579: Merge \"HTTP Live content that are tagged as complete are now seekable.\" into gingerbread\n\nMerge commit \u0027165c6579660c22edafb61fee2a0cf39334a2a905\u0027 into gingerbread-plus-aosp\n\n* commit \u0027165c6579660c22edafb61fee2a0cf39334a2a905\u0027:\n  HTTP Live content that are tagged as complete are now seekable.\n"
    },
    {
      "commit": "312644cdbb39522fe9cac028b15b907ce0e8e0f7",
      "tree": "97dd25e42b1a0ccc607cdbbc60368b833c44a71e",
      "parents": [
        "165c6579660c22edafb61fee2a0cf39334a2a905",
        "9adf466021d37a5062d7d3361e14bfd9e7ffeba6"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Oct 13 09:14:40 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Oct 13 09:14:40 2010 -0700"
      },
      "message": "Merge \"Support for writing to MPEG2 transport stream files.\" into gingerbread"
    },
    {
      "commit": "165c6579660c22edafb61fee2a0cf39334a2a905",
      "tree": "431676c9a9c20d9a2c33041c61f348dce2143e33",
      "parents": [
        "dfc07279fc6205c38f5f39cb5ba4f0aef6b593a4",
        "54d09724e3ea2af4e08dff47d7ade92a95784127"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Oct 13 09:14:13 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Oct 13 09:14:13 2010 -0700"
      },
      "message": "Merge \"HTTP Live content that are tagged as complete are now seekable.\" into gingerbread"
    },
    {
      "commit": "9adf466021d37a5062d7d3361e14bfd9e7ffeba6",
      "tree": "32065c7763d46863e76d9f78ba4c76f0117ff2dc",
      "parents": [
        "a7c76d8307a3b49bf5b8fdda3543455b0e5dd64c"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Oct 12 14:17:45 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Oct 12 16:05:23 2010 -0700"
      },
      "message": "Support for writing to MPEG2 transport stream files.\n\nChange-Id: If3b7a807bc224a4b1cb2236537c3ebdc5aee0d97\n"
    },
    {
      "commit": "9a12a3c8d4bb20042cf69e07d268e3a04ac71f96",
      "tree": "8077adbd81854c5b5571b57a5f9d20f28d92ca75",
      "parents": [
        "090ac9f7dd883aa75c899745182471d409a2b762",
        "ba799098608c7be8ff1e18adfa7dc1f452205a7e"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Tue Oct 12 14:46:23 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Oct 12 14:46:23 2010 -0700"
      },
      "message": "am ba799098: Merge changes I76513387,I335fb671 into gingerbread\n\nMerge commit \u0027ba799098608c7be8ff1e18adfa7dc1f452205a7e\u0027 into gingerbread-plus-aosp\n\n* commit \u0027ba799098608c7be8ff1e18adfa7dc1f452205a7e\u0027:\n  Remove dead code, and make the animation a setting.\n  turn off the electron beam\n"
    },
    {
      "commit": "54d09724e3ea2af4e08dff47d7ade92a95784127",
      "tree": "6cc008b4a8acb1ee7f47e3748baa2826257e61ce",
      "parents": [
        "a7c76d8307a3b49bf5b8fdda3543455b0e5dd64c"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Oct 12 11:34:37 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Oct 12 14:32:10 2010 -0700"
      },
      "message": "HTTP Live content that are tagged as complete are now seekable.\n\nChange-Id: I9d0d2f009f883e5baf3e9de8c5c0aa05760e4bde\nrelated-to-bug: 2368598\n"
    },
    {
      "commit": "aab758e87991d1460ca94d4a5f22c0ef34641e2d",
      "tree": "560d9e47119175b6a5618dd16d9d9ac4a92145fd",
      "parents": [
        "844a6b3ccaff1ad1443ad985e4527b733ce97c0e"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Oct 11 12:37:43 2010 -0700"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Tue Oct 12 14:16:11 2010 -0700"
      },
      "message": "turn off the electron beam\n\nChange-Id: I335fb6719f1d5a3f1c6f37a046fd1c2c4ed2bbc6\n"
    },
    {
      "commit": "d10cd5765a2b706fc174f16b951d6b0a5d3740d3",
      "tree": "a3b21518ecfd0729e2f790745a088d7d6ee5cb1a",
      "parents": [
        "514c969ca72b081d84b5f563edf696c6642fa1fa"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Sun Oct 10 13:33:22 2010 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Tue Oct 12 11:00:18 2010 -0700"
      },
      "message": "Always create OpenGL accelerated windows in RGBA 8888.\n\nBug #3081600\n\nThe OpenGL renderer in libhwui uses a single EGL context per process and\nthus create it with an RGBA 8888 EGL configuration. To ensure that all\nwindows are compatible with this configuration, this change modifies\nthe window manager and SurfaceFlinger.\n\nThe window manager now checks the window\u0027s flags and if the window is\nhardware accelerated, it forces the window\u0027s pixel format to be\ntranslucent when creating the surface. The window itself is still\nmarked as opaque if we know that the window will be opaque on screen.\nThis keeps existing optimizations in place.\n\nSimilarly in SurfaceFlinger, a translucent Surface can now be created\nwith the Surface.OPAQUE flag, indicating SurfaceFlinger that the surface\ndoes not require blending, despite its RGBA 8888 configuration.\n\nChange-Id: Ic747b6b12564ba064412d842117880fcc199eb7c\n"
    },
    {
      "commit": "9c9f1a3ba1bc19754e4d38cb27a537d4dfedc0fe",
      "tree": "fc519d8f2f97dc3fa6007f16e07cc05b09849109",
      "parents": [
        "e20c9e0264190f94324197a8271cf03811a4ca58"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Oct 11 18:32:20 2010 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Oct 11 18:32:20 2010 -0700"
      },
      "message": "Track input state when transferring touch focus.\n\nCopies the input state to the destination window and sends synthesic\ncancelation events to the source window.\n\nChange-Id: Ia75820b0d756ed5d6cd22dce7830251ac85141ed\n"
    },
    {
      "commit": "e20c9e0264190f94324197a8271cf03811a4ca58",
      "tree": "e482829d555d313e57ead50bc24102897dde9b36",
      "parents": [
        "182e5cf105aa71effbdee15628f020214b54774c"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Oct 11 14:20:19 2010 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Oct 11 17:54:12 2010 -0700"
      },
      "message": "Fix an event injection bug when the policy is bypassed.\n\nAdded the concept of a \"trusted\" event to distinguish between events from\nattached input devices or trusted injectors vs. other applications.\nThis change enables us to move certain policy decisions out of the\ndispatcher and into the policy itself where they can be handled more\nsystematically.\n\nCherry pick of b931a1b4 from gingerbread into master.\n\nChange-Id: I700a5f07b8b227878cea9437a289a45a245c0424\n"
    },
    {
      "commit": "dd8b0c90400a1c59d4d71d768c02eed961596bc8",
      "tree": "824f5086cdab46a9484c41dc87e921e2ff4212a6",
      "parents": [
        "5d3f6073bfc62811f552a16be7d58483104a29a3",
        "41aabeb51305d19747687f246080f44fc2a74435"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Oct 11 17:42:30 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Oct 11 17:42:30 2010 -0700"
      },
      "message": "am 41aabeb5: am 1e6a3a53: Merge \"Added more robust tracking and cancelation of events.\" into gingerbread\n\nMerge commit \u002741aabeb51305d19747687f246080f44fc2a74435\u0027\n\n* commit \u002741aabeb51305d19747687f246080f44fc2a74435\u0027:\n  Added more robust tracking and cancelation of events.\n"
    },
    {
      "commit": "8bb7a1dfbb43dda49fb3c4f86181bcd7f969a832",
      "tree": "0eb8b8355abedba7b083d5ef547893ed66d3d56a",
      "parents": [
        "0ad4a77cb78348951c349ba92ec858bfb26aeb33",
        "b4de3dca96b9ff18562062e181dcd8b83e641e45"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Mon Oct 11 17:31:06 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Oct 11 17:31:06 2010 -0700"
      },
      "message": "am b4de3dca: Merge \"OBB: rearrange to be entirely asynchronous\" into gingerbread\n\nMerge commit \u0027b4de3dca96b9ff18562062e181dcd8b83e641e45\u0027 into gingerbread-plus-aosp\n\n* commit \u0027b4de3dca96b9ff18562062e181dcd8b83e641e45\u0027:\n  OBB: rearrange to be entirely asynchronous\n"
    },
    {
      "commit": "f2e0681ada3ffe1de994a51dcebd6ef045d27434",
      "tree": "c6f8e837d2091a890fb3d9d2882b3a534b190625",
      "parents": [
        "d965724fdcc63a070657518542559a8b1a35a70d",
        "1da8d4d1697cec871dea8c30dad67e90db10bde6"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Oct 11 17:26:51 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Oct 11 17:26:51 2010 -0700"
      },
      "message": "am 1da8d4d1: Merge \"Fix an event injection bug when the policy is bypassed.\" into gingerbread\n\nMerge commit \u00271da8d4d1697cec871dea8c30dad67e90db10bde6\u0027 into gingerbread-plus-aosp\n\n* commit \u00271da8d4d1697cec871dea8c30dad67e90db10bde6\u0027:\n  Fix an event injection bug when the policy is bypassed.\n"
    },
    {
      "commit": "b4de3dca96b9ff18562062e181dcd8b83e641e45",
      "tree": "b2e8b6060e1dbea173de867e5258add9b08ef8f3",
      "parents": [
        "1169f420f6df5cf5254fed883efa7e6780473c08",
        "af9d667ccf3e24058214cf4cc0a8aa8bc5100e3c"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Mon Oct 11 17:24:54 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Oct 11 17:24:54 2010 -0700"
      },
      "message": "Merge \"OBB: rearrange to be entirely asynchronous\" into gingerbread"
    },
    {
      "commit": "af9d667ccf3e24058214cf4cc0a8aa8bc5100e3c",
      "tree": "c59adbe6d27cf236d6920f689dd237a115fef3f9",
      "parents": [
        "ce2f1909c74a1b90995f06a865d21260b062300b"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Fri Oct 08 09:21:39 2010 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Mon Oct 11 17:22:03 2010 -0700"
      },
      "message": "OBB: rearrange to be entirely asynchronous\n\nRearrange structure of MountService handling of OBBs to be entirely\nasynchronous so we don\u0027t rely on locking as much. We still need the\nlocking to support dumpsys which has been improved to output all the\ndata structures for OBBs.\n\nAdded more tests to cover more of the error return codes.\n\nOh and fix a logic inversion bug.\n\nChange-Id: I34f541192dbbb1903b24825889b8fa8f43e6e2a9\n"
    },
    {
      "commit": "b931a1b4183386ba840edc1bcc507eccf11b5cbe",
      "tree": "f9e1ba1030d392ab288ad13e5eaba32c65a96c76",
      "parents": [
        "b699726018a0049665d8ad6b90dbc5af0e18f135"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Oct 11 14:20:19 2010 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Oct 11 16:26:13 2010 -0700"
      },
      "message": "Fix an event injection bug when the policy is bypassed.\n\nAdded the concept of a \"trusted\" event to distinguish between events from\nattached input devices or trusted injectors vs. other applications.\nThis change enables us to move certain policy decisions out of the\ndispatcher and into the policy itself where they can be handled more\nsystematically.\n\nChange-Id: I4d56fdcdd31aaa675d452088af39a70c4e039970\n"
    },
    {
      "commit": "37de60c179449a706ea41fea8384063723b0cb63",
      "tree": "61d5bc5effb307f88ae74ed970a3e1667ba49c30",
      "parents": [
        "cb4e40768096412c7d068a9cf27b1f5155ddfa94",
        "2b4f1f4cb814f7a7df8d2cb9fcb5210bfe7999c7"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Sun Oct 10 17:14:53 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sun Oct 10 17:14:53 2010 -0700"
      },
      "message": "am 2b4f1f4c: am f72dd019: Merge \"Disable 10secs forward/backward seeking for rtsp as seek is a very expensive operation there. Decouple the 10sec forward/backward button functionality from seekbar functionality.\" into gingerbread\n\nMerge commit \u00272b4f1f4cb814f7a7df8d2cb9fcb5210bfe7999c7\u0027\n\n* commit \u00272b4f1f4cb814f7a7df8d2cb9fcb5210bfe7999c7\u0027:\n  Disable 10secs forward/backward seeking for rtsp as seek is a very expensive operation there. Decouple the 10sec forward/backward button functionality from seekbar functionality.\n"
    },
    {
      "commit": "329430a54e152ad1f5e0003194728988661788bb",
      "tree": "0a77d3d71fc858ae611319eefd27a08e7c9ed2c3",
      "parents": [
        "438a17292a3edf779eb7aef5966c8c9e034235a8",
        "4f21e517d09b9d793d20d64547df330fba705b3c"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sun Oct 10 16:06:04 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sun Oct 10 16:06:04 2010 -0700"
      },
      "message": "am 4f21e517: am b37fcbfd: Merge \"Added getter for session Id to AudioSink\" into gingerbread\n\nMerge commit \u00274f21e517d09b9d793d20d64547df330fba705b3c\u0027\n\n* commit \u00274f21e517d09b9d793d20d64547df330fba705b3c\u0027:\n  Added getter for session Id to AudioSink\n"
    },
    {
      "commit": "41aabeb51305d19747687f246080f44fc2a74435",
      "tree": "98ac58495ec40abed5b08de8a1a2563ce93edb5b",
      "parents": [
        "0acb0d7a4b9cb684bff6e70b4c41002fb45adc04",
        "1e6a3a53fc4d56e3a0f86c8721dedfd46e738a32"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Sun Oct 10 14:50:38 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sun Oct 10 14:50:38 2010 -0700"
      },
      "message": "am 1e6a3a53: Merge \"Added more robust tracking and cancelation of events.\" into gingerbread\n\nMerge commit \u00271e6a3a53fc4d56e3a0f86c8721dedfd46e738a32\u0027 into gingerbread-plus-aosp\n\n* commit \u00271e6a3a53fc4d56e3a0f86c8721dedfd46e738a32\u0027:\n  Added more robust tracking and cancelation of events.\n"
    },
    {
      "commit": "b699726018a0049665d8ad6b90dbc5af0e18f135",
      "tree": "e711b4de7efbb4473306a208befe0e834d90c39b",
      "parents": [
        "db56b9bd39e739474684987b83f386f50596aa5d"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Oct 08 22:31:17 2010 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Sun Oct 10 14:45:51 2010 -0700"
      },
      "message": "Added more robust tracking and cancelation of events.\n\nThis change fixes several issues where events would be dropped in the\ninput dispatch pipeline in such a way that the dispatcher could not\naccurately track the state of the input device.\n\nGiven more robust tracking, we can now also provide robust cancelation\nof input events in cases where an application might otherwise become\nout of sync with the event stream due to ANR, app switch, policy decisions,\nor forced focus transitions.\n\nPruned some of the input dispatcher log output.\n\nMoved the responsibility for calling intercept*BeforeQueueing into\nthe input dispatcher instead of the input reader and added support for\nearly interception of injected events for events coming from trusted\nsources.  This enables behaviors like injection of media keys while\nthe screen is off, haptic feedback of injected virtual keys, so injected\nevents become more \"first class\" in a way.\n\nChange-Id: Iec6ff1dd21e5f3c7feb80ea4feb5382bd090dbd9\n"
    },
    {
      "commit": "584ad9af405e891aebaf3f29b150a91c7d5bc4f1",
      "tree": "0c1566b73960ace1bea2e192aa2e57ca3faed39c",
      "parents": [
        "ee04af3ed40103bc1e3ed5f6ab9e0094d893bceb",
        "1ef773ff9caf9c1b9ee32b634f1c80e9a065aa6a"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Sun Oct 10 13:36:13 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Oct 10 13:36:13 2010 -0700"
      },
      "message": "Merge \"Move binder magic from the Surface class to GraphicBuffer.\""
    },
    {
      "commit": "1ef773ff9caf9c1b9ee32b634f1c80e9a065aa6a",
      "tree": "9f00c524f8d91b21fe99ce89c3a1d703fb236b1d",
      "parents": [
        "d6e9d7695b55414420c366528ba431eacdea5dfc"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Thu Oct 07 13:46:55 2010 -0700"
      },
      "committer": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Sun Oct 10 13:09:46 2010 -0700"
      },
      "message": "Move binder magic from the Surface class to GraphicBuffer.\n\n- Register buffers with Gralloc when unflattening a GraphicBuffer (rather than\ndoing it in the Surface class).\n- Add support for a GraphicBuffer that wraps an android_native_window_t*.\n\nChange-Id: I029ac086111bbac800e5ca37eb505f558b718cd8\n"
    },
    {
      "commit": "d5da367024c36b317b101fc066a7a4cf992c7d58",
      "tree": "87cf98a6514557be5427c462349a0ee9deb9a9dd",
      "parents": [
        "bcf74accafcdac6c7a940ce28982fc0ef08e111b",
        "22cb4ef8ce9c4d5536ac5cee5c40b82bfa56ccc5"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Sun Oct 10 12:52:40 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sun Oct 10 12:52:40 2010 -0700"
      },
      "message": "am 22cb4ef8: am d577cfd7: Merge \"Switch Looper back to using poll() instead of epoll().\" into gingerbread\n\nMerge commit \u002722cb4ef8ce9c4d5536ac5cee5c40b82bfa56ccc5\u0027\n\n* commit \u002722cb4ef8ce9c4d5536ac5cee5c40b82bfa56ccc5\u0027:\n  Switch Looper back to using poll() instead of epoll().\n"
    },
    {
      "commit": "bcf74accafcdac6c7a940ce28982fc0ef08e111b",
      "tree": "f093a5152dd151cf9e28c7d620e4e58e4a0140ce",
      "parents": [
        "06dfa35e3c5f379b14d2acbc584c8d8cb2e822c7",
        "9580b8ce6553ddde03db594fd4fd4f59ca61c382"
      ],
      "author": {
        "name": "Gloria Wang",
        "email": "gwang@google.com",
        "time": "Sun Oct 10 12:51:00 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sun Oct 10 12:51:00 2010 -0700"
      },
      "message": "am 9580b8ce: resolved conflicts for merge of e6ad0e47 to gingerbread-plus-aosp\n\nMerge commit \u00279580b8ce6553ddde03db594fd4fd4f59ca61c382\u0027\n\n* commit \u00279580b8ce6553ddde03db594fd4fd4f59ca61c382\u0027:\n  Update of DRM framework.\n"
    },
    {
      "commit": "06dfa35e3c5f379b14d2acbc584c8d8cb2e822c7",
      "tree": "6f85385f03eb1ec1dda1f6127145a054eac2a79d",
      "parents": [
        "22b379ad178fe256bbfe706e32f611466f656fd9",
        "bb70837397e3fb437b7b4443b37d7a83c11e6e43"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Sun Oct 10 11:25:54 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sun Oct 10 11:25:54 2010 -0700"
      },
      "message": "am bb708373: am 949f7d90: Merge \"Work to support switching transport streams mid-stream and signalling discontinuities to the decoder.\" into gingerbread\n\nMerge commit \u0027bb70837397e3fb437b7b4443b37d7a83c11e6e43\u0027\n\n* commit \u0027bb70837397e3fb437b7b4443b37d7a83c11e6e43\u0027:\n  Work to support switching transport streams mid-stream and signalling discontinuities to the decoder.\n"
    },
    {
      "commit": "72662b1abe7e76f5d880ffc44c561b3af63f89ad",
      "tree": "b2ecf72154e1d23fcb1d96b75c9affdd44ead4b4",
      "parents": [
        "7a2eff1fc79f3594ea4ef0f1c6aaa7a1d914dd1b",
        "45bd1159fa34b51ba077e0cde760d171ca092552"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Sun Oct 10 11:16:01 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sun Oct 10 11:16:01 2010 -0700"
      },
      "message": "am 45bd1159: am 02654f01: Merge \"On this particular device the hardware video decoder spits out buffers that don\\\u0027t actually contain our video data, so we cannot use them to restore the video frame after suspend/resume.\" into gingerbread\n\nMerge commit \u002745bd1159fa34b51ba077e0cde760d171ca092552\u0027\n\n* commit \u002745bd1159fa34b51ba077e0cde760d171ca092552\u0027:\n  On this particular device the hardware video decoder spits out buffers that don\u0027t actually contain our video data, so we cannot use them to restore the video frame after suspend/resume.\n"
    },
    {
      "commit": "997eaa2c7c6f7c59d145dab3e93431ea2e2a7dc7",
      "tree": "e2c981c36bfad2f95a0ab9f8be4b5ee8d3a4e9d8",
      "parents": [
        "4c0c81a30733ba677c16db14a54349d80c642b5b"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Sat Oct 09 01:16:58 2010 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Sat Oct 09 01:21:20 2010 -0700"
      },
      "message": "0-memcpy video recording framework\n\nPart III: Move startRecording() call earlier, asking camera hal\nto allocate video buffers before CameraSource.start() is called.\n\nChange-Id: I3f1d7d5636ca2644fe52af61f297d48c6b1ce89d\n"
    },
    {
      "commit": "0c128b67f066b2e691348d5375c2da47b84f69ac",
      "tree": "1ad86cd5d3bba568535b8e6c79a0585c50e58157",
      "parents": [
        "54ca811b29ceea6595b7e3d607a89ee625f0184c"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Oct 08 11:59:32 2010 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Oct 08 18:32:43 2010 -0700"
      },
      "message": "Move Camera specific logic out from StagefrightRecorder to CameraSource\n\no updated comments and streamlined the logic in\n  checkVideoSize() and checkFrameRate() as suggested\n\nChange-Id: I49d04ac7998d4a215997aa63555dfb6e814e38d3\n"
    },
    {
      "commit": "2b4f1f4cb814f7a7df8d2cb9fcb5210bfe7999c7",
      "tree": "398decc9b6a98cf073b75b230dbcd550363b7e3e",
      "parents": [
        "5dcf588a81a59142985736d8bb0430586f68ec08",
        "f72dd0190ee64914161d361be1213eda8cab7b90"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Oct 08 11:18:03 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Oct 08 11:18:03 2010 -0700"
      },
      "message": "am f72dd019: Merge \"Disable 10secs forward/backward seeking for rtsp as seek is a very expensive operation there. Decouple the 10sec forward/backward button functionality from seekbar functionality.\" into gingerbread\n\nMerge commit \u0027f72dd0190ee64914161d361be1213eda8cab7b90\u0027 into gingerbread-plus-aosp\n\n* commit \u0027f72dd0190ee64914161d361be1213eda8cab7b90\u0027:\n  Disable 10secs forward/backward seeking for rtsp as seek is a very expensive operation there. Decouple the 10sec forward/backward button functionality from seekbar functionality.\n"
    },
    {
      "commit": "f72dd0190ee64914161d361be1213eda8cab7b90",
      "tree": "7d3193050b07d2c017ec6df20278038b02119f7b",
      "parents": [
        "b9bf545774b1f1dbd35c34c4060a6ebdd2bc843c",
        "10b9b3f3fe47cea0833fe2c7d5ed08a1185f9006"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Oct 08 11:16:07 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Oct 08 11:16:07 2010 -0700"
      },
      "message": "Merge \"Disable 10secs forward/backward seeking for rtsp as seek is a very expensive operation there. Decouple the 10sec forward/backward button functionality from seekbar functionality.\" into gingerbread"
    },
    {
      "commit": "10b9b3f3fe47cea0833fe2c7d5ed08a1185f9006",
      "tree": "db45ecb6b04d3acaf38d3cd8871ed70ef8c5bbe9",
      "parents": [
        "bb245d35b6e81d750a91815543973b0a5976352b"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Oct 08 10:16:24 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Oct 08 10:16:24 2010 -0700"
      },
      "message": "Disable 10secs forward/backward seeking for rtsp as seek is a very expensive operation there. Decouple the 10sec forward/backward button functionality from seekbar functionality.\n\nChange-Id: I016e79b688774f8ee91ac53216197b5fb9cb41b2\nrelated-to-bug: 3073955\n"
    },
    {
      "commit": "4f21e517d09b9d793d20d64547df330fba705b3c",
      "tree": "872e144dacbf5668fd8012c937f1feddb06cf0c9",
      "parents": [
        "d96a068cc7b3519a5b7d122a12025684b6f28c76",
        "b37fcbfd7f9d65b90b43e0242903030c5a6517b5"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Oct 08 08:30:03 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Oct 08 08:30:03 2010 -0700"
      },
      "message": "am b37fcbfd: Merge \"Added getter for session Id to AudioSink\" into gingerbread\n\nMerge commit \u0027b37fcbfd7f9d65b90b43e0242903030c5a6517b5\u0027 into gingerbread-plus-aosp\n\n* commit \u0027b37fcbfd7f9d65b90b43e0242903030c5a6517b5\u0027:\n  Added getter for session Id to AudioSink\n"
    },
    {
      "commit": "b3bdf3f0086f1d921720f6dc92cabc7b6f2ab63e",
      "tree": "21f02868e4a39ef36117dc7e0724e0ad5adf1247",
      "parents": [
        "36a182870527f1d71f482e9a280bc818a4609cb6"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Oct 07 18:23:03 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Oct 07 18:23:03 2010 -0700"
      },
      "message": "Added getter for session Id to AudioSink\n\nAdded a method to expose the audio session id at AudioSink interface\nso that the AudioPlayer in stagefright can retrieve it.\n\nAlso:\n- Fixed audio effect send level not being initialized in mediaplayer.\n- Fixed compilation error when LOGV is enabled in mediaplayer JNI\n\nChange-Id: I4bb55454fd63d646e0e677692d737c4843fb05fb\n"
    },
    {
      "commit": "a97e50f20d39d2abf0fab77090dd82bdef4bce7a",
      "tree": "27e8025752321b42eccd5611a827bf075395b14f",
      "parents": [
        "d577cfd73a223279f9a5af698f55edd38a3fe4db"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Thu Oct 07 16:17:57 2010 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Thu Oct 07 16:17:57 2010 -0700"
      },
      "message": "Revert to using epoll_wait().\n\nThis change depends on the kernel having been patched to use hrtimers\ninstead of jiffies for scheduling epoll timeouts.\n\nChange-Id: I216bc1c4f565e67ebcb3d2ba4280cb615932bb9e\n"
    },
    {
      "commit": "22cb4ef8ce9c4d5536ac5cee5c40b82bfa56ccc5",
      "tree": "e725626a428d290ad091d2618c9c4f0694f4dd0a",
      "parents": [
        "9580b8ce6553ddde03db594fd4fd4f59ca61c382",
        "d577cfd73a223279f9a5af698f55edd38a3fe4db"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Thu Oct 07 15:46:57 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 07 15:46:57 2010 -0700"
      },
      "message": "am d577cfd7: Merge \"Switch Looper back to using poll() instead of epoll().\" into gingerbread\n\nMerge commit \u0027d577cfd73a223279f9a5af698f55edd38a3fe4db\u0027 into gingerbread-plus-aosp\n\n* commit \u0027d577cfd73a223279f9a5af698f55edd38a3fe4db\u0027:\n  Switch Looper back to using poll() instead of epoll().\n"
    },
    {
      "commit": "9580b8ce6553ddde03db594fd4fd4f59ca61c382",
      "tree": "bac634abd9cb09389028cbc9c3c2d80adbb7f3d2",
      "parents": [
        "bb70837397e3fb437b7b4443b37d7a83c11e6e43",
        "e6ad0e477b5d4326487059e5d6c4697f97accbd1"
      ],
      "author": {
        "name": "Gloria Wang",
        "email": "gwang@google.com",
        "time": "Thu Oct 07 15:27:17 2010 -0700"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Oct 07 15:27:17 2010 -0700"
      },
      "message": "resolved conflicts for merge of e6ad0e47 to gingerbread-plus-aosp\n\nChange-Id: I63b00932b0f8b975da31aa9a010369db2d49fd76\n"
    },
    {
      "commit": "bb70837397e3fb437b7b4443b37d7a83c11e6e43",
      "tree": "c99194c9284fffd07e07f8cf7f8daf2adef5692e",
      "parents": [
        "51501aa8703c15c6156ba14774f3ff41cde31700",
        "949f7d9066e09768e570686a5695aaba4a1dafd0"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Oct 07 14:02:26 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 07 14:02:26 2010 -0700"
      },
      "message": "am 949f7d90: Merge \"Work to support switching transport streams mid-stream and signalling discontinuities to the decoder.\" into gingerbread\n\nMerge commit \u0027949f7d9066e09768e570686a5695aaba4a1dafd0\u0027 into gingerbread-plus-aosp\n\n* commit \u0027949f7d9066e09768e570686a5695aaba4a1dafd0\u0027:\n  Work to support switching transport streams mid-stream and signalling discontinuities to the decoder.\n"
    },
    {
      "commit": "45bd1159fa34b51ba077e0cde760d171ca092552",
      "tree": "679c5f55c40aa310039761a7f22bb861d648b9c4",
      "parents": [
        "c0c2076e9a4dfd3b30b988d4ddd78abf9ed83166",
        "02654f01bc6bd2e581b4a1d2409ecea217294fa2"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Oct 07 14:02:01 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 07 14:02:01 2010 -0700"
      },
      "message": "am 02654f01: Merge \"On this particular device the hardware video decoder spits out buffers that don\\\u0027t actually contain our video data, so we cannot use them to restore the video frame after suspend/resume.\" into gingerbread\n\nMerge commit \u002702654f01bc6bd2e581b4a1d2409ecea217294fa2\u0027 into gingerbread-plus-aosp\n\n* commit \u002702654f01bc6bd2e581b4a1d2409ecea217294fa2\u0027:\n  On this particular device the hardware video decoder spits out buffers that don\u0027t actually contain our video data, so we cannot use them to restore the video frame after suspend/resume.\n"
    },
    {
      "commit": "d577cfd73a223279f9a5af698f55edd38a3fe4db",
      "tree": "30533a98b61ae7846db76ff39c91f73980ffda2e",
      "parents": [
        "949f7d9066e09768e570686a5695aaba4a1dafd0",
        "415d8c38199e258dfce92cdb0c69e056b3b51ef8"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Thu Oct 07 13:29:56 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Oct 07 13:29:56 2010 -0700"
      },
      "message": "Merge \"Switch Looper back to using poll() instead of epoll().\" into gingerbread"
    },
    {
      "commit": "415d8c38199e258dfce92cdb0c69e056b3b51ef8",
      "tree": "5bf6d167a19b272f2a153df6010a7dd6f58a274f",
      "parents": [
        "930d6c3cd5ad387489eb1d35a38beeafe54166b6"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Oct 05 15:35:37 2010 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Thu Oct 07 13:26:39 2010 -0700"
      },
      "message": "Switch Looper back to using poll() instead of epoll().\n\nAdded a couple of micro-optimizations to avoid calling wake() unnecessarily\nand reduce JNI overhead slightly.\n\nFixed a minor issue where we were not clearing the \"next\" field of Messages\nreturned by the MessageQueue so the Message would hold on to its successor\nand potentially prevent the GC from collecting it if the message were leaked\nsomehow.\n\nChange-Id: I488d29417ce0cdd7d0e447cda76ec978ef7f811c\n"
    },
    {
      "commit": "a458719bb6ebbcce99d4dba43af4bd51c5a06216",
      "tree": "6749676e32e62171ac2ae40dea62ad5ac2303981",
      "parents": [
        "c5610a4c1308e2d52108131fbdef35e432a414b6",
        "56ee1080f004110bff622e5b60c243d9cabfe120"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Oct 07 12:21:33 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 07 12:21:33 2010 -0700"
      },
      "message": "am 56ee1080: am 17bc4f65: Merge \"Make sure to call AudioTrack::stop() instead of AudioTrack::pause() after submitting all samples to AudioTrack to make sure those remaining samples are actually played out.\" into gingerbread\n\nMerge commit \u002756ee1080f004110bff622e5b60c243d9cabfe120\u0027\n\n* commit \u002756ee1080f004110bff622e5b60c243d9cabfe120\u0027:\n  Make sure to call AudioTrack::stop() instead of AudioTrack::pause() after submitting all samples to AudioTrack to make sure those remaining samples are actually played out.\n"
    },
    {
      "commit": "928b5bfa7db23cddc93624a6ff31ff208e8b24bf",
      "tree": "4d6dd5b5b085c4cf6000b4c0d51b6d53f11b5e06",
      "parents": [
        "13297fddcbac3247d78f4c7e6408fa6dd8011d9f",
        "56364bcd0d1a1b064db3e83fdb64f948ce5c2ad7"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Thu Oct 07 12:20:45 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 07 12:20:45 2010 -0700"
      },
      "message": "am 56364bcd: am 78d15acf: Merge \"Make secure views tolerate IME overlays.\" into gingerbread\n\nMerge commit \u002756364bcd0d1a1b064db3e83fdb64f948ce5c2ad7\u0027\n\n* commit \u002756364bcd0d1a1b064db3e83fdb64f948ce5c2ad7\u0027:\n  Make secure views tolerate IME overlays.\n"
    },
    {
      "commit": "4c19bf9833f59f58a9aaea566f0eb98a7fb7e2ea",
      "tree": "98365cbdcad2ebb3095dcb71afdece89fc13ed07",
      "parents": [
        "02654f01bc6bd2e581b4a1d2409ecea217294fa2"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Sep 08 14:32:20 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Oct 07 11:41:43 2010 -0700"
      },
      "message": "Work to support switching transport streams mid-stream and signalling discontinuities to the decoder.\n\nChange-Id: I7150e5e7342e1117c524856b204aadcb763e06ed\nrelated-to-bug: 2368598\n"
    },
    {
      "commit": "1e1941638398e5e3e1d7b9ad88e66f574576bcfa",
      "tree": "e6c89a82b8298503ff96a891e706a55d48c0d574",
      "parents": [
        "f8d2acdc57fd747278bb909c9e15b959e07d63b6"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Wed Oct 06 16:43:57 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Oct 07 09:19:25 2010 -0700"
      },
      "message": "On this particular device the hardware video decoder spits out buffers that don\u0027t actually contain our video data, so we cannot use them to restore the video frame after suspend/resume.\n\nChange-Id: I1b8fe68c1766299844fe84ebbff49cb8b3e4cc7c\nrelated-to-bug: 3070094\n"
    },
    {
      "commit": "cf2bdd1fd88d7d10c6309fac5a44d5b44b9b12e4",
      "tree": "57af4aa11b766470bf5fedf9930f313414f8439b",
      "parents": [
        "b5c564fed2aa3b0c6b4b4f3289532f5f00ce4eca",
        "769bb2aaa400f9d5ece1b145a9aac2c544015f35"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Oct 07 08:11:26 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Oct 07 08:11:26 2010 -0700"
      },
      "message": "Merge \"0-memcpy video recording framework\""
    },
    {
      "commit": "769bb2aaa400f9d5ece1b145a9aac2c544015f35",
      "tree": "e93f9fd93104810a3993d2b6da73081a7062c24a",
      "parents": [
        "c9d5b31f84f5c8b5db690491031369556ed7fee9"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Oct 06 18:11:23 2010 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Oct 07 02:09:03 2010 -0700"
      },
      "message": "0-memcpy video recording framework\n\nPart II: proposed camera hal change\n\nChange-Id: I51663cf5de2b00f71e4ff1828080094676065444\n"
    },
    {
      "commit": "499f518400d54f2f14753a674edd95c5bb11acfd",
      "tree": "4a985755f7752b22cdea5d7cbaa4f5417d53da65",
      "parents": [
        "7930b5bc068e92a1eaaa6c890b77aebbdf01e259",
        "ff04e97faf75c435e453d4c1caf7eeac8b9c1ceb"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Oct 06 17:07:39 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Oct 06 17:07:39 2010 -0700"
      },
      "message": "am ff04e97f: am f4619308: Merge \"fix [2835280] Add support for cancelling buffers to ANativeWindow\" into gingerbread\n\nMerge commit \u0027ff04e97faf75c435e453d4c1caf7eeac8b9c1ceb\u0027\n\n* commit \u0027ff04e97faf75c435e453d4c1caf7eeac8b9c1ceb\u0027:\n  fix [2835280] Add support for cancelling buffers to ANativeWindow\n"
    },
    {
      "commit": "8c4a042984ce9132810f6e79da732ea89e467d6f",
      "tree": "16d37ccdeb9fd09a0ca5711a23c4c602bc40b119",
      "parents": [
        "664d035829acd35f75fa82826d960efd72da3578",
        "a86a6c4e326bfdfc351dacca95b23bb78f78efbe"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Wed Oct 06 16:17:14 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Oct 06 16:17:14 2010 -0700"
      },
      "message": "am a86a6c4e: am 6f1c7bda: Merge \"Fixed an issue where the reserved free space in the file writer was larger than intended\" into gingerbread\n\nMerge commit \u0027a86a6c4e326bfdfc351dacca95b23bb78f78efbe\u0027\n\n* commit \u0027a86a6c4e326bfdfc351dacca95b23bb78f78efbe\u0027:\n  Fixed an issue where the reserved free space in the file writer was larger than intended\n"
    },
    {
      "commit": "4f65ea60555ef01e6ca0cd64acc0ef698640c853",
      "tree": "b3078773f7d362251cab92b32ac8c12f25adb690",
      "parents": [
        "0f935ebfffee769c3c707813bf9db7d50996d785",
        "bfa33b9484e2c0a019ab81f30261b9696df23a9b"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Tue Oct 05 17:02:42 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Oct 05 17:02:42 2010 -0700"
      },
      "message": "am bfa33b94: am f84a5918: Merge \"Use pread() in ZipFileRO for Linux\" into gingerbread\n\nMerge commit \u0027bfa33b9484e2c0a019ab81f30261b9696df23a9b\u0027\n\n* commit \u0027bfa33b9484e2c0a019ab81f30261b9696df23a9b\u0027:\n  Use pread() in ZipFileRO for Linux\n"
    },
    {
      "commit": "56ee1080f004110bff622e5b60c243d9cabfe120",
      "tree": "afd1e67174d27ee1c67e751004b1e05009cdbfa8",
      "parents": [
        "cfc80bd5c1e4f0207357b288b1b7b8374a31ba70",
        "17bc4f65324a823598e7671256c815bf32ddcc95"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Oct 05 14:13:16 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Oct 05 14:13:16 2010 -0700"
      },
      "message": "am 17bc4f65: Merge \"Make sure to call AudioTrack::stop() instead of AudioTrack::pause() after submitting all samples to AudioTrack to make sure those remaining samples are actually played out.\" into gingerbread\n\nMerge commit \u002717bc4f65324a823598e7671256c815bf32ddcc95\u0027 into gingerbread-plus-aosp\n\n* commit \u002717bc4f65324a823598e7671256c815bf32ddcc95\u0027:\n  Make sure to call AudioTrack::stop() instead of AudioTrack::pause() after submitting all samples to AudioTrack to make sure those remaining samples are actually played out.\n"
    },
    {
      "commit": "c743f4506f88a14189449c719a6ec1cfe5f0f812",
      "tree": "f69dfc65287acea092d8769ca3e6f907567a4b6b",
      "parents": [
        "78d15acfb20269ce263ce19514a2c0e7a98409e2"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Oct 05 10:25:34 2010 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Oct 05 13:53:39 2010 -0700"
      },
      "message": "Make sure to call AudioTrack::stop() instead of AudioTrack::pause() after submitting all samples to AudioTrack to make sure those remaining samples are actually played out.\n\nChange-Id: Id574a0203efcb5e565f1b0fe77869fc33b9a9d56\n"
    },
    {
      "commit": "56364bcd0d1a1b064db3e83fdb64f948ce5c2ad7",
      "tree": "0ae7fc29d1870e7b13694c7245df6d9ad19b2db3",
      "parents": [
        "f2cc2e522177683145b2daa0de0ed898b865824d",
        "78d15acfb20269ce263ce19514a2c0e7a98409e2"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Oct 05 13:17:04 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Oct 05 13:17:04 2010 -0700"
      },
      "message": "am 78d15acf: Merge \"Make secure views tolerate IME overlays.\" into gingerbread\n\nMerge commit \u002778d15acfb20269ce263ce19514a2c0e7a98409e2\u0027 into gingerbread-plus-aosp\n\n* commit \u002778d15acfb20269ce263ce19514a2c0e7a98409e2\u0027:\n  Make secure views tolerate IME overlays.\n"
    },
    {
      "commit": "19dfc83c376d8f5ff3b128ee4c675790cffbc02d",
      "tree": "06b41715a604ca7dc09cc852c28a8cd2354a0fee",
      "parents": [
        "95037fb1a633f5bdeb4e0ece2d18a4974259c368"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Oct 05 12:26:23 2010 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Oct 05 12:26:23 2010 -0700"
      },
      "message": "Make secure views tolerate IME overlays.\n\nChange-Id: I3cf09b9d91045f4d9c558b4aace482a7b0bbd3d8\n"
    },
    {
      "commit": "ff04e97faf75c435e453d4c1caf7eeac8b9c1ceb",
      "tree": "089714d6c07e5ec9e3bbf3cf5478c1dd264d8bc1",
      "parents": [
        "722665c5f76e81bed646490977ea30f38aaa00da",
        "f461930872beb4362998642c115691bdd2e94617"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Oct 04 20:21:14 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Oct 04 20:21:14 2010 -0700"
      },
      "message": "am f4619308: Merge \"fix [2835280] Add support for cancelling buffers to ANativeWindow\" into gingerbread\n\nMerge commit \u0027f461930872beb4362998642c115691bdd2e94617\u0027 into gingerbread-plus-aosp\n\n* commit \u0027f461930872beb4362998642c115691bdd2e94617\u0027:\n  fix [2835280] Add support for cancelling buffers to ANativeWindow\n"
    },
    {
      "commit": "8ddd2c72ee7dd6f45e5375a197774b8671b982b7",
      "tree": "b3a346d011b76c96b986f831036ff95652f067cf",
      "parents": [
        "19058877df9bf94f197a72855f810f7f6bf8d068"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Oct 01 16:22:41 2010 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Oct 04 20:10:11 2010 -0700"
      },
      "message": "fix [2835280] Add support for cancelling buffers to ANativeWindow\n\nThere is a new ANativeWindow::cancelBuffer() API that can be used to\ncancel any dequeued buffer, BEFORE it\u0027s been enqueued. The buffer is\nreturned to the list of availlable buffers. dequeue and cancel are not\nmutually thread safe, they must be called from the same thread or\nexternal synchronization must be used.\n\nChange-Id: I86cc7985bace8b6a93ad2c75d2bef5c3c2cb4d61\n"
    },
    {
      "commit": "bba3b8efbe7dc9dd6fa326103ef7ddefc28d5ba5",
      "tree": "5da8b6283591ad47c1edca60a110fb3837a2459b",
      "parents": [
        "9fa7926beaf6c7fe32159a7e41fae9f618ec7504",
        "19058877df9bf94f197a72855f810f7f6bf8d068"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Oct 04 20:06:51 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Oct 04 20:06:51 2010 -0700"
      },
      "message": "am 19058877: Merge \"refactored screenshot code\" into gingerbread\n\nMerge commit \u002719058877df9bf94f197a72855f810f7f6bf8d068\u0027 into gingerbread-plus-aosp\n\n* commit \u002719058877df9bf94f197a72855f810f7f6bf8d068\u0027:\n  refactored screenshot code\n"
    },
    {
      "commit": "19058877df9bf94f197a72855f810f7f6bf8d068",
      "tree": "f88763bcad2b9d97f19538bb0a4f40e83c4f8a8a",
      "parents": [
        "b9aacfdfb014cc0299f7999d2a8940cd60a4cc59",
        "597c7f67b5f2491c6098a1de241a3f0fd274688a"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Oct 04 20:04:42 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Oct 04 20:04:42 2010 -0700"
      },
      "message": "Merge \"refactored screenshot code\" into gingerbread"
    },
    {
      "commit": "a86a6c4e326bfdfc351dacca95b23bb78f78efbe",
      "tree": "5c7b2072a20be1393f9e02144527d39a786ed5a9",
      "parents": [
        "c7bfb13fd92cda6ae5894ed2ee63e1ab4d7b25ee",
        "6f1c7bda39774fe3a1febf72b03c8ad481c1ea54"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Oct 04 18:39:52 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Oct 04 18:39:52 2010 -0700"
      },
      "message": "am 6f1c7bda: Merge \"Fixed an issue where the reserved free space in the file writer was larger than intended\" into gingerbread\n\nMerge commit \u00276f1c7bda39774fe3a1febf72b03c8ad481c1ea54\u0027 into gingerbread-plus-aosp\n\n* commit \u00276f1c7bda39774fe3a1febf72b03c8ad481c1ea54\u0027:\n  Fixed an issue where the reserved free space in the file writer was larger than intended\n"
    },
    {
      "commit": "6f1c7bda39774fe3a1febf72b03c8ad481c1ea54",
      "tree": "12cc1b22592ca6386e19a499479dd9532b351889",
      "parents": [
        "15f107b151deff1f25f1255bdbcb630ed576ac8d",
        "6a9e39ac55b32a2847546ef1784c2d6c91863a55"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Oct 04 18:37:48 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Oct 04 18:37:48 2010 -0700"
      },
      "message": "Merge \"Fixed an issue where the reserved free space in the file writer was larger than intended\" into gingerbread"
    },
    {
      "commit": "597c7f67b5f2491c6098a1de241a3f0fd274688a",
      "tree": "841774d2e67bfced0608d2344868c64ac566004e",
      "parents": [
        "541d942000c338a15dc4b361b15b72864640d2bf"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Sep 29 13:02:36 2010 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Oct 04 17:36:17 2010 -0700"
      },
      "message": "refactored screenshot code\n\nthe core screenshot function now can capture the screen at any lower resolution\nperforming bilinear filtering.\n\nwe also now have some client code to interface with the screenshot service.\n\nit\u0027s now possible to request a screenshot at a lower resolution.\n\nChange-Id: I33689bba98507ab928d0898b21596d0d2fe4b953\n"
    }
  ],
  "next": "bfa33b9484e2c0a019ab81f30261b9696df23a9b"
}
