)]}'
{
  "log": [
    {
      "commit": "c15008e72ec00ca20a271c3006dac649fd07533b",
      "tree": "a518cebc2b12966bde88c0a3a80ee19b989d17bb",
      "parents": [
        "21c1114dad3a778992479ec8ef514e412a7b2646"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Wed Nov 10 11:59:15 2010 -0800"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Wed Nov 10 11:59:15 2010 -0800"
      },
      "message": "Move all debug flags in a single place.\n\nThis change also adds a new memory usage flag. When turned on, the\nfollowing is printed after every frame:\n\nD/OpenGLRenderer( 3723): Current memory usage / total memory usage (bytes):\nD/OpenGLRenderer( 3723):   TextureCache          3766680 / 20971520\nD/OpenGLRenderer( 3723):   LayerCache            3538944 /  8388608\nD/OpenGLRenderer( 3723):   GradientCache          135168 /   524288\nD/OpenGLRenderer( 3723):   PathCache               41180 /  4194304\nD/OpenGLRenderer( 3723):   TextDropShadowCache         0 /  2097152\nD/OpenGLRenderer( 3723):   FontRenderer 0         262144 /   262144\nD/OpenGLRenderer( 3723):   FontRenderer 1         262144 /   262144\nD/OpenGLRenderer( 3723):   FontRenderer 2         262144 /   262144\nD/OpenGLRenderer( 3723): Other:\nD/OpenGLRenderer( 3723):   FboCache                    2 /       12\nD/OpenGLRenderer( 3723):   PatchCache                 31 /      512\nD/OpenGLRenderer( 3723): Total memory usage:\nD/OpenGLRenderer( 3723):   8268404 bytes, 7.89 MB\n\nThis should help tracking possibe memory issues.\n\nChange-Id: I83f483ca1d2dbef904829bce368e33fe5503e8d6\n"
    },
    {
      "commit": "f70a7e34953438dd70573dbb6fd3dd34a1bce831",
      "tree": "4e479d32f7d091d13ce5ba9c8a8f0ab9acd7f58e",
      "parents": [
        "9e10841c27d973b930e1b49a099c69d866659505"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Tue Nov 09 16:37:03 2010 -0800"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Tue Nov 09 16:37:28 2010 -0800"
      },
      "message": "Fix possible crash when texture is NULL in the drop shadow cache.\n\nChange-Id: I2142c55dbcfebcdf013a7f4ae04b266a60f5ce8a\n"
    },
    {
      "commit": "9e10841c27d973b930e1b49a099c69d866659505",
      "tree": "aaf593ba3581cf97a6b031a7b310e696f5cbb51a",
      "parents": [
        "820b9e0d3b6f94fe0b524aebf756ce25df273e6a"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Tue Nov 09 14:35:20 2010 -0800"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Tue Nov 09 14:37:42 2010 -0800"
      },
      "message": "Correctly remove unused paths from the cache.\n\nChange-Id: I41d9334dcd9871634037344ab49bf69383498161\n"
    },
    {
      "commit": "2b425d3c9b39603054febe0c2135b05764748158",
      "tree": "8d07f98ed9478698e5cedaab455ae645bc4ed176",
      "parents": [
        "3f24a5b34808e10472e30888108eae67e3c39530",
        "641b0628cd9d8be001fa445771d460b47ba1f6cb"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Tue Nov 09 14:23:06 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 09 14:23:06 2010 -0800"
      },
      "message": "Merge \"Fix fountain bug with more than 10 touches reported.\""
    },
    {
      "commit": "641b0628cd9d8be001fa445771d460b47ba1f6cb",
      "tree": "8edd4be6634813d68b00ca6827ea4e1d9edc4312",
      "parents": [
        "1c41517124a90fcfdb95dc069fc492c6fcf1ff25"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Tue Nov 09 14:20:34 2010 -0800"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Tue Nov 09 14:20:34 2010 -0800"
      },
      "message": "Fix fountain bug with more than 10 touches reported.\n\nChange-Id: Ie4ddefbcbe6407fb7ffae2c6e2440fec0b974cfb\n"
    },
    {
      "commit": "0d200833fdc53f9796698f97c18cefc4a1b82df2",
      "tree": "bef2739584bf97f330eda7c691c011e420cee8e9",
      "parents": [
        "c55fa1b999068fc7f242b88a87270b249ab366eb"
      ],
      "author": {
        "name": "Chet Haase",
        "email": "chet@google.com",
        "time": "Fri Nov 05 15:36:16 2010 -0700"
      },
      "committer": {
        "name": "Chet Haase",
        "email": "chet@google.com",
        "time": "Tue Nov 09 06:38:56 2010 -0800"
      },
      "message": "Fix GL rendering of translucent surfaces\n\nGL renderer was not initializing scissor correctly for translucent\nsurfaces, resulting in invisible window backgrounds in some cases\nlike fading popup windows\n\nChange-Id: I87a964986e1ba2c4f59708c8892c5fa71903e6fc\n"
    },
    {
      "commit": "1c41517124a90fcfdb95dc069fc492c6fcf1ff25",
      "tree": "43a463cfe40b0cf7e96ca9045075e31390d1e60e",
      "parents": [
        "553a53ef9ff789dff8b5a74dfea4d6f37feeb263"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Mon Nov 08 17:06:46 2010 -0800"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Mon Nov 08 17:19:31 2010 -0800"
      },
      "message": "Handle user message ID 0\nPass RS runtime errors back to java.\nthrow exceptions for runtime errors.\n\nChange-Id: Ifcf16cbbf9b98137971dced5076f8a5563eb016c\n"
    },
    {
      "commit": "3fe599ce21a3a28a03a2d575fdeedb7b2ac8590a",
      "tree": "aa8cb3f47b95499bf871970a101d5bf12325697c",
      "parents": [
        "98b8bc7f9a314d614817aec2d60883b3f1a0a3fd",
        "9d71e2180062931416092f26276a07e55b318f62"
      ],
      "author": {
        "name": "Alex Sakhartchouk",
        "email": "alexst@google.com",
        "time": "Mon Nov 08 15:29:45 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 08 15:29:45 2010 -0800"
      },
      "message": "Merge \"Moving attrib creation to Mesh. Adding arrays as shader inputs. Removing fixed size arrays.\""
    },
    {
      "commit": "9d71e2180062931416092f26276a07e55b318f62",
      "tree": "4e649a7ff122348fc2ed2961b3c280a989327242",
      "parents": [
        "5b59e02eb542f016866985945859b033e94f9f0b"
      ],
      "author": {
        "name": "Alex Sakhartchouk",
        "email": "alexst@google.com",
        "time": "Mon Nov 08 15:10:52 2010 -0800"
      },
      "committer": {
        "name": "Alex Sakhartchouk",
        "email": "alexst@google.com",
        "time": "Mon Nov 08 15:10:52 2010 -0800"
      },
      "message": "Moving attrib creation to Mesh. Adding arrays as shader inputs.\nRemoving fixed size arrays.\n\nChange-Id: I0213e403a2f1283dd43f21bea770aeb059561903\n"
    },
    {
      "commit": "d8acf9b68235c9c9a73f797cf520b9384d1c9368",
      "tree": "f3c0ee6f19508124f4c1974dc6ba70443fdf3730",
      "parents": [
        "db9015635043effd7aa1811625315dbf2ced5c2a",
        "0fe478ea04720a57ef3919dbc23711bc7eba517f"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Mon Nov 08 14:03:30 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 08 14:03:30 2010 -0800"
      },
      "message": "Merge \"Support nested display lists.\""
    },
    {
      "commit": "1a542c7b8ed0be049869a12d1e01e2604d052ac2",
      "tree": "ed1b5acbe31240e259689a6496ed1cf2dfa5dd1b",
      "parents": [
        "3915bb845b032dc184dba5e60970b803390ca3ed"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Mon Nov 08 09:48:20 2010 -0800"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Mon Nov 08 13:02:58 2010 -0800"
      },
      "message": "The CHEEK_TOUCH stuff never worked.  Remove it.\n\nBug: 3104906\nChange-Id: Ia37236ba1775fc3ec8c111e2e0b85b105e0dea6a\n"
    },
    {
      "commit": "3915bb845b032dc184dba5e60970b803390ca3ed",
      "tree": "198a47c1d4ada990ef04d563b5e0caaec35abc18",
      "parents": [
        "60029771d26ca3c51288c3d92cab1d3537147acd"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Nov 05 15:02:16 2010 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Nov 08 12:49:43 2010 -0800"
      },
      "message": "Tell system server whether the app handled input events.\n\nRefactored ViewRoot, NativeActivity and related classes to tell the\ndispatcher whether an input event was actually handled by the application.\n\nThis will be used to move more of the global default key processing\ninto the system server instead of the application.\n\nChange-Id: If06b98b6f45c543e5ac5b1eae2b3baf9371fba28\n"
    },
    {
      "commit": "0fe478ea04720a57ef3919dbc23711bc7eba517f",
      "tree": "d498b2893e0890f0bb9dccf44dc392004d68e844",
      "parents": [
        "cce1d2a60bc1ef10ec6beb338ec3d4cf94486c47"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Mon Nov 08 12:08:41 2010 -0800"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Mon Nov 08 12:15:28 2010 -0800"
      },
      "message": "Support nested display lists.\n\nChange-Id: I3815a2832fc0f722c668ba8f51c5f177edb77c94\n"
    },
    {
      "commit": "cce1d2a60bc1ef10ec6beb338ec3d4cf94486c47",
      "tree": "02a22110ccb0c69a4b0b25cb43f326280de221db",
      "parents": [
        "3fe3851753e3623d3c7c468efa6ee17f17f9aa74",
        "5fe11d20e3c432fc04dc3526c35496c49045a19d"
      ],
      "author": {
        "name": "Stephen Hines",
        "email": "srhines@google.com",
        "time": "Mon Nov 08 11:49:02 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 08 11:49:02 2010 -0800"
      },
      "message": "Merge \"Add vector array test to RSTest.\""
    },
    {
      "commit": "5fe11d20e3c432fc04dc3526c35496c49045a19d",
      "tree": "f90cf7ba8ae12bea18d3567c3bc080f8191c3f8e",
      "parents": [
        "14aa0592e67c9acf514fe03f6d6d58aeab6401eb"
      ],
      "author": {
        "name": "Stephen Hines",
        "email": "srhines@google.com",
        "time": "Fri Nov 05 19:48:42 2010 -0700"
      },
      "committer": {
        "name": "Stephen Hines",
        "email": "srhines@google.com",
        "time": "Fri Nov 05 19:48:42 2010 -0700"
      },
      "message": "Add vector array test to RSTest.\n\nChange-Id: I258d23a44df011aaf64aa545c86c97611d70143f\n"
    },
    {
      "commit": "51e7fe7545e3509ebb5c31c10440acd31cec89a2",
      "tree": "c9826e9555c6ec96ba3061365bcb7ed2a555c43e",
      "parents": [
        "06a42367ce6b7116c451f9e3155196ef8806f861"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Oct 29 22:19:53 2010 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Nov 05 13:27:35 2010 -0700"
      },
      "message": "Rename the locked meta key constants for clarity.\n\nAlso added some tests for LED setting.\n\nChange-Id: I3fd86322afd07ae8de52d1ccbc2fae2c6d586641\n"
    },
    {
      "commit": "7f78b0c3ae6222b39f6240524390de9764f21764",
      "tree": "63f1de17ded22cd96c91bb6463b80f85fe1fd93b",
      "parents": [
        "d8d7b555cb45bf55f74e89a7cf9312e400f7cd1c"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Thu Nov 04 14:36:26 2010 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Thu Nov 04 14:36:26 2010 -0700"
      },
      "message": "Lines would not set the scissor before drawing.\n\nLines were not drawing in Calendar because they were getting clipped\nby the previous clip rectangle. This change simply updates the scissor\nas needed. This change also reduces the number of state changes in GL.\n\nChange-Id: I41ab13dca3a33cfa6d1a44371c48852ab418b04e\n"
    },
    {
      "commit": "8ad4b47920a88c6317c270514f0ce7b0b053d0a4",
      "tree": "0041279cdf101721ad27afed3d60d646c4951a89",
      "parents": [
        "b52907f6be7edb3a8b709348af484dd7d646b13e",
        "1041aded2df45094c36831028245fb7c5e9b67b7"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Thu Nov 04 12:14:37 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 04 12:14:37 2010 -0700"
      },
      "message": "Merge \"Fix possible rendering issue when drawing a path.\""
    },
    {
      "commit": "1041aded2df45094c36831028245fb7c5e9b67b7",
      "tree": "f11be43caf8d9f1b63ad9a79aea4e5a8edc03061",
      "parents": [
        "617d74ac484ae1b8d9593627f1325ee079d7f223"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Thu Nov 04 12:10:40 2010 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Thu Nov 04 12:10:40 2010 -0700"
      },
      "message": "Fix possible rendering issue when drawing a path.\n\nChange-Id: I25f2e609589f0dd9294bcf7930de6398c0d7e377\n"
    },
    {
      "commit": "6b81399aa1aebfcd02a0dff142996d13b75eacb7",
      "tree": "57897a164ffa4ce310a822a3568606b226b8b456",
      "parents": [
        "f3e0268b3aa3052c7c220d619a99e489bdf0a431",
        "3ba02b3d2f6fb49677466a2e93c96f307d2a7a41"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Wed Nov 03 23:03:06 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 03 23:03:06 2010 -0700"
      },
      "message": "Merge \"Update ScriptC constructor to remove depricated param.\""
    },
    {
      "commit": "3ba02b3d2f6fb49677466a2e93c96f307d2a7a41",
      "tree": "cf2b140d07099fed7cfcd42e1bb2d22f80297447",
      "parents": [
        "7c608f25d494c8a0a671e7373efbb47ca635367e"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Wed Nov 03 23:01:38 2010 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Wed Nov 03 23:01:38 2010 -0700"
      },
      "message": "Update ScriptC constructor to remove depricated param.\n\nChange-Id: Id36e325834526c6b5416fd78d5cf4259d7df97e9\n"
    },
    {
      "commit": "617d74ac484ae1b8d9593627f1325ee079d7f223",
      "tree": "44e77924ca5ae58bdf31652f1927af08c0955523",
      "parents": [
        "0c24a5514c1ff143a223720a090b19a86a75945f",
        "e45362cad94c014d8b3765cb102db0f8c0d92500"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Wed Nov 03 20:03:42 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 03 20:03:42 2010 -0700"
      },
      "message": "Merge \"Fix rendering bug with saveLayerAlpha/drawColor.\""
    },
    {
      "commit": "e45362cad94c014d8b3765cb102db0f8c0d92500",
      "tree": "184c8a507c06f077668e294203ae370823fcb5e5",
      "parents": [
        "5ec9924d24495822b589f1a17996655d66273b30"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Wed Nov 03 19:58:32 2010 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Wed Nov 03 19:58:32 2010 -0700"
      },
      "message": "Fix rendering bug with saveLayerAlpha/drawColor.\n\ndrawColor() was not calling quickReject because it fills the clip region\nand thus always passes the test. However, quickReject also checks whether\nthe current layer is invisible. drawColor() now performs the same check\nand avoid drawing inside an invisible layer.\n\nChange-Id: I63d0e9a8a9c0fba774f0f5c3870d58e6ed96fbd1\n"
    },
    {
      "commit": "9195f75df0d2503b4134be7e0deb7699c1613381",
      "tree": "3e24d5d410c16c0ff364e21ae9efe4a23c2de0c4",
      "parents": [
        "26e37349831476d3225570af2dfbf1e459374c6b",
        "5ec9924d24495822b589f1a17996655d66273b30"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Wed Nov 03 16:23:41 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 03 16:23:41 2010 -0700"
      },
      "message": "Merge \"Fix rendering issue with layers.\""
    },
    {
      "commit": "5ec9924d24495822b589f1a17996655d66273b30",
      "tree": "60a92b5ceb25b980be02cef82ef56ecf55cb7f04",
      "parents": [
        "98444a944c9126898bc4c370f831a79bb3b30bd8"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Wed Nov 03 16:19:08 2010 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Wed Nov 03 16:19:08 2010 -0700"
      },
      "message": "Fix rendering issue with layers.\n\nChange-Id: I1d511ab2707000762a942d32c300a9944ab38603\n"
    },
    {
      "commit": "5dc336e23a0fcff66cbb31c002789d2e521abb5c",
      "tree": "eb828528d7c46df5a0b7153ee09b1cc34b84cf13",
      "parents": [
        "8dc287de7f111fe96b953e459c6d25877538fb5c",
        "d5f06300341df0990be3e0b7a26fa49b13c6fc19"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Wed Nov 03 14:29:16 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 03 14:29:16 2010 -0700"
      },
      "message": "Merge \"RS Error cleanup. Thow java exception during init if the GL driver fails rather than native crash.\""
    },
    {
      "commit": "d5f06300341df0990be3e0b7a26fa49b13c6fc19",
      "tree": "b6ab4893e599c401debbe0f0282e28303c5514d9",
      "parents": [
        "4b8d36b30ad2e87f3969034eb42dc14b99f03686"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Wed Nov 03 14:27:11 2010 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Wed Nov 03 14:27:11 2010 -0700"
      },
      "message": "RS Error cleanup.\nThow java exception during init if the\nGL driver fails rather than native crash.\n\nChange-Id: Ie96ef5a2ac12e64f9456545d86157c4c95179a8e\n"
    },
    {
      "commit": "e46a0a4693405eb8bbaa069c4e234a6976b48244",
      "tree": "71dc7c1f44719b3587ce87b06fdd970464c753af",
      "parents": [
        "5ffcd088cef3fdf3cebb674e47cd1aa739fde630"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Nov 02 17:58:22 2010 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Nov 02 17:58:22 2010 -0700"
      },
      "message": "Fix a key repeating bug.\n\nThis change fixes a bug in the dispatcher where the window manager\npolicy would incorrectly receive a key repeat count of 0 in the case\nwhere the key repeat was generated by the hardware or driver.\nLong-press on HOME was broken as a result.\n\nBug: 3159581\nChange-Id: If0f02662313f5b879a4e566fbb461389e274a550\n"
    },
    {
      "commit": "5ffcd088cef3fdf3cebb674e47cd1aa739fde630",
      "tree": "def11bfa9027807caf05affbeda90f89dcb84db4",
      "parents": [
        "d4bb9b3789bb7bcba25b392aa330326f530c7dc8",
        "b0418da0e7594a8c2164a46985c5f1993632e010"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Nov 02 17:38:18 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 02 17:38:18 2010 -0700"
      },
      "message": "Merge \"Add plumbing for volume mute key.\""
    },
    {
      "commit": "b0418da0e7594a8c2164a46985c5f1993632e010",
      "tree": "f73f81b31796d4f75ef6530d1fb883fccc74031f",
      "parents": [
        "c68134b74016b82e0c49c47b89d93b2d0921cbe5"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Nov 01 15:24:01 2010 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Nov 02 17:31:39 2010 -0700"
      },
      "message": "Add plumbing for volume mute key.\n\nFull support for the volume mute key will be implemented in a\nlater change.\n\nBug: 2912307\nChange-Id: I98c27d6360f159c8b7447e04b45f442eff87b38a\n"
    },
    {
      "commit": "98444a944c9126898bc4c370f831a79bb3b30bd8",
      "tree": "8a540fb507da3d8b2c34a645b6a9fbc37a560fb9",
      "parents": [
        "acc863cabbd6c03f4fe58e568f5bb3d119943ea9",
        "5b3b35296e8b2c8d3f07d32bb645d5414db41a1d"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Tue Nov 02 16:23:22 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 02 16:23:22 2010 -0700"
      },
      "message": "Merge \"Optimize FBO drawing with regions. This optimization is currently disabled until Launcher is modified to take advantage of it. The optimization can be enabled by turning on RENDER_LAYERS_AS_REGIONS in the OpenGLRenderer.h file.\""
    },
    {
      "commit": "5b3b35296e8b2c8d3f07d32bb645d5414db41a1d",
      "tree": "bad2ebdbfeb8a3a0be1591d5a357a8280df7d1d2",
      "parents": [
        "2444ddb3d9b59ec45ba50858fcbff639e59b93b1"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Wed Oct 27 18:57:51 2010 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Tue Nov 02 16:17:23 2010 -0700"
      },
      "message": "Optimize FBO drawing with regions.\nThis optimization is currently disabled until Launcher is\nmodified to take advantage of it. The optimization can be\nenabled by turning on RENDER_LAYERS_AS_REGIONS in the\nOpenGLRenderer.h file.\n\nChange-Id: I2fdf59d0f4dc690a3d7f712173ab8db3848b27b1\n"
    },
    {
      "commit": "611f56721f1552f0fd3c169103c558212247b31c",
      "tree": "92f1eabb6f0fefc4b34b0c25b96a51fdfc978e26",
      "parents": [
        "b4d9c66c9e662fae68cc00731b14600de41069b9",
        "ce13d94ccb36512bf9a6ce6b9063a6d6f8c57710"
      ],
      "author": {
        "name": "Stephen Hines",
        "email": "srhines@google.com",
        "time": "Tue Nov 02 14:14:35 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 02 14:14:35 2010 -0700"
      },
      "message": "Merge \"New RS types test for checking compilation.\""
    },
    {
      "commit": "ce13d94ccb36512bf9a6ce6b9063a6d6f8c57710",
      "tree": "f4d807dcd415c619373c8e15a86d75bfe36337ff",
      "parents": [
        "2ec6a54c6f21d2dc07472b6a20fd5850de99692c"
      ],
      "author": {
        "name": "Stephen Hines",
        "email": "srhines@google.com",
        "time": "Mon Oct 25 11:48:00 2010 -0700"
      },
      "committer": {
        "name": "Stephen Hines",
        "email": "srhines@google.com",
        "time": "Tue Nov 02 13:58:12 2010 -0700"
      },
      "message": "New RS types test for checking compilation.\n\nChange-Id: Ib4d0326462d4d0229430f61c74f16979f7b38dbb\n"
    },
    {
      "commit": "5c4cf8cd7ccd76f25a8433096774b44a6dd8ead8",
      "tree": "51ef6e7399b75a089cf68f6ec0eaeaa0c2760b28",
      "parents": [
        "460119b7ea7a4ca8490db9af5c2983419dd816b0"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Tue Nov 02 11:27:21 2010 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Tue Nov 02 11:27:31 2010 -0700"
      },
      "message": "Fix default return code for getResource\n\nReorganization of getResource to allow for other densities accidentally\noverrode the default return code for getResource from BAD_VALUE to\nBAD_INDEX. This corrects the default return to BAD_VALUE which restores\nother things to working.\n\nBug: 3155824\nChange-Id: I13dafff85bc6978c5f5435fc09ab0474c7885c4d\n"
    },
    {
      "commit": "c4b5bf3c7668d3875362bb86af05b3e47937e2ee",
      "tree": "e94ae0a25ef5e413edd3e34c00829d2b618c70c0",
      "parents": [
        "a32edd4b4c894f4fb3d9fd7e9d5b80321df79e20",
        "7ab5d2d951792c9b1a1e7cfb279280c2d076506f"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Nov 02 02:34:15 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Nov 02 02:34:15 2010 -0700"
      },
      "message": "am 7ab5d2d9: am a87ea46c: Fix bugs related to cheek event suppression.\n\n* commit \u00277ab5d2d951792c9b1a1e7cfb279280c2d076506f\u0027:\n  Fix bugs related to cheek event suppression.\n"
    },
    {
      "commit": "7ab5d2d951792c9b1a1e7cfb279280c2d076506f",
      "tree": "51056ccc3a744e0ef6266c420086f16999509c01",
      "parents": [
        "424963ef8d46c34d67ea24d25735944c0d87409c",
        "a87ea46cb023763e0a9b0222da20b0a354f79d8d"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Nov 01 21:02:05 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Nov 01 21:02:05 2010 -0700"
      },
      "message": "am a87ea46c: Fix bugs related to cheek event suppression.\n\n* commit \u0027a87ea46cb023763e0a9b0222da20b0a354f79d8d\u0027:\n  Fix bugs related to cheek event suppression.\n"
    },
    {
      "commit": "a87ea46cb023763e0a9b0222da20b0a354f79d8d",
      "tree": "af391e4d3190d4023b6e5757a504346798151fc3",
      "parents": [
        "5dda76a72e8bb4630fb5fd38a42e7bceb5b9c954"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Nov 01 20:35:46 2010 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Nov 01 20:51:58 2010 -0700"
      },
      "message": "Fix bugs related to cheek event suppression.\n\nTwo issues:\n\n1. First, due to an inverted conditional in the input dispatcher, we were\n   reporting touches as long touches and vice-versa to the power manager.\n\n2. Power manager user activity cheek event suppression also suppresses touch\n   events (but not long touch or up events).  As a result, if cheek event\n   suppression was enabled, touches would not poke the user activity timer.\n   However due to the above logic inversion, this actually affected long\n   touches.  Net result, if cheek suppression was enabled in the power manager\n   and you held your thumb on the screen long enough, the phone would\n   go to sleep!\n\nCheek event suppression is commonly turned on when making a phone call.\nInterestingly, it does not seem to get turned off afterward...\n\nThis change fixes the logic inversion and exempts touches from the cheek\nsuppression.  The reason we do the latter is because the old behavior\nwas actually harmful in other ways too: a touch down would be suppressed\nbut not a long touch or the touch up.  This would cause bizarre behavior\nif you touched the screen while it was dimmed.  Instead of brightening\nimmediately, it would brighten either when you lifted your finger or\n300ms later, whichever came first.\n\nBug: 3154895\nChange-Id: Ied9ccec6718fbe86506322ff47a4e3eb58f81834\n"
    },
    {
      "commit": "fe17625238fbf48608040619a929bdf8a04129f1",
      "tree": "89ee3554c0b5fad50222cf82bc07ede8e31f6d57",
      "parents": [
        "d238beb3954b759994f6a8ceb57f74e447a021e0",
        "4d396052deb54399cbadbeb8abd873df6f3af342"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Nov 01 15:13:10 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 01 15:13:10 2010 -0700"
      },
      "message": "Merge \"Fix policy issues when screen is off.\""
    },
    {
      "commit": "4d396052deb54399cbadbeb8abd873df6f3af342",
      "tree": "632cf9922df2abe3b23738792a100a9297517db0",
      "parents": [
        "487d9586635e6b209f9a5ed4063f005590d10e85"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Oct 29 21:50:21 2010 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Nov 01 15:00:25 2010 -0700"
      },
      "message": "Fix policy issues when screen is off.\n\nRewrote interceptKeyBeforeQueueing to make the handling more systematic.\nBehavior should be identical except:\n- We never pass keys to applications when the screen is off and the keyguard\n  is not showing (the proximity sensor turned off the screen).\n  Previously we passed all non-wake keys through in this case which\n  caused a bug on Crespo where the screen would come back on if a soft key\n  was held at the time of power off because the resulting key up event\n  would sneak in just before the keyguard was shown.  It would then be\n  passed through to the dispatcher which would poke user activity and\n  wake up the screen.\n- We propagate the key flags when broadcasting media keys which\n  ensures that recipients can tell when the key is canceled.\n- We ignore endcall or power if canceled (shouldn\u0027t happen anyways).\n\nChanged the input dispatcher to not poke user activity for canceled\nevents since they are synthetic and should not wake the device.\n\nChanged the lock screen so that it does not poke the wake lock when the\ngrab handle is released.  This fixes a bug where the screen would come\nback on immediately if the power went off while the user was holding\none of the grab handles because the sliding tab would receive an up\nevent after screen turned off and release the grab handles.\n\nFixed a couple of issues where media keys were being handled inconsistently\nor not at all, particularly in the case of the new PAUSE, PLAY\nand RECORD keys.\n\nBug: 3144874\nChange-Id: Ie630f5fb6f128cfdf94845f9428067045f42892c\n"
    },
    {
      "commit": "8f0adba7cbac2391719896947601e403b5895fdc",
      "tree": "1cb626780bde2757fbb383f20c0fb57f0142b438",
      "parents": [
        "ab3ff25a6fdb7648dbf243923b8698bb3a894611"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Mon Nov 01 14:26:30 2010 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Mon Nov 01 14:26:30 2010 -0700"
      },
      "message": "Add code to mark functions rather than whole files as threadable.\n\nChange-Id: Ie635fbbb96b8ade48501ec564fe135edc256537d\n"
    },
    {
      "commit": "ab3ff25a6fdb7648dbf243923b8698bb3a894611",
      "tree": "fd8a9cf8e0582eb2f7c0da115e1e5f152757204e",
      "parents": [
        "c3cb9f2e12a6db1bddce0c77f8c626bf1b5b1ffd"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Fri Oct 29 16:48:55 2010 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Fri Oct 29 16:49:08 2010 -0700"
      },
      "message": "Remove excessive logging.\n\nChange-Id: I22497b1b169ca0f3edbc20649594f6f58f6144d0\n"
    },
    {
      "commit": "03034739eb90a41c930201253f5d709c232ce5a9",
      "tree": "5e4de6e1968ce4f32b170aaf5108c6335f2f30a3",
      "parents": [
        "0aa211db16c1d1f86206c534619571cc36ab4a19",
        "55fc850cf992cdcb0993cb109d2f716613c0dbdd"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Fri Oct 29 14:20:04 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Oct 29 14:20:04 2010 -0700"
      },
      "message": "Merge \"Add path to get different DPI drawables\""
    },
    {
      "commit": "55fc850cf992cdcb0993cb109d2f716613c0dbdd",
      "tree": "2277f806e14fb8a6b422dde687ac9779176ae83b",
      "parents": [
        "490d7c5deda8d602f916942d7002757082274b9b"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Thu Oct 28 14:47:01 2010 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Fri Oct 29 12:47:07 2010 -0700"
      },
      "message": "Add path to get different DPI drawables\n\nAllow a caller to request a different density than their current display\nallows. This can mean a device displaying mdpi can get a resource that\u0027s\nin hdpi and have it pretend to be in mdpi resolution. If a drawable\nthat\u0027s returned is not in the requested density, it will set it at the\nappropriate density to be scaled up later on.\n\nThe API for this is hidden currently.\n\nBug: 3134688\nChange-Id: I6c3908cbdef4907b8d3f1576df9e3b0e7af1755a\n"
    },
    {
      "commit": "5585e36a413dcc70a4bdd04063ea31db2519ea8d",
      "tree": "cbb70db5c3dc61bfcd29e705accb48a2cc0cdc0a",
      "parents": [
        "c75529f59f05e0240816aec2cd684ebdbf95ab73"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Fri Oct 29 10:19:21 2010 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Fri Oct 29 10:28:13 2010 -0700"
      },
      "message": "Balls test app.\n\nChange-Id: I842f43e37145f8112120e2bd49925f81c588c40c\n"
    },
    {
      "commit": "858b93c0fd24f9ee5158247e1deedaf8b239a941",
      "tree": "bad1853da59d50bf71bf683057dea7aa0d7703a5",
      "parents": [
        "61b39a48bcf961999578c75f8b712b3ba0dfc70e",
        "420a5fbbd58d6a0b4ee38948410be9d83b007e07"
      ],
      "author": {
        "name": "Jim Miller",
        "email": "jaggies@google.com",
        "time": "Thu Oct 28 13:55:14 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Oct 28 13:55:14 2010 -0700"
      },
      "message": "Merge \"Fix 3140348: Signature was wrong for atan2() in RS.\""
    },
    {
      "commit": "420a5fbbd58d6a0b4ee38948410be9d83b007e07",
      "tree": "db2a2b581c25360d96ec9c4cca7b176b7e620c06",
      "parents": [
        "e829fef63957a23b61cdb01bb692a17a041ff2dc"
      ],
      "author": {
        "name": "Jim Miller",
        "email": "jaggies@google.com",
        "time": "Thu Oct 28 13:00:09 2010 -0700"
      },
      "committer": {
        "name": "Jim Miller",
        "email": "jaggies@google.com",
        "time": "Thu Oct 28 13:00:09 2010 -0700"
      },
      "message": "Fix 3140348: Signature was wrong for atan2() in RS.\n\nChange-Id: I6c5b79efc12e2dcef06f3f0bcbbdf8871947af26\n"
    },
    {
      "commit": "de33dd7c0ded0ae9b71de9f82081c2bede7083c0",
      "tree": "a335ad7317b5dd74dfd6dcca0481604d410bcc89",
      "parents": [
        "07173fd2c1de3aa091494d93aa6f515818bddb9a",
        "581cc64028e8b8f66cec8105bf530b16d5fb34eb"
      ],
      "author": {
        "name": "Alex Sakhartchouk",
        "email": "alexst@google.com",
        "time": "Thu Oct 28 10:32:12 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Oct 28 10:32:12 2010 -0700"
      },
      "message": "Merge \"Adding nvidia extension for limited npot support. Updating a3d loading to be async.\""
    },
    {
      "commit": "88e7b31ba1447e98f65e4d2939dbf66268c75e35",
      "tree": "3a0a704cb26ccd2cc397506a54e637637b718107",
      "parents": [
        "a80d256d04146cfc0a56a0e08666c53728df596a",
        "df3cccf3dc6b59ec4a45d80fb483022360e13830"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Wed Oct 27 22:18:43 2010 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Wed Oct 27 22:18:43 2010 -0700"
      },
      "message": "resolved conflicts for merge of df3cccf3 to master\n\nChange-Id: I425496a9fc4e9cbc50ad6938e9dccb14827d9558\n"
    },
    {
      "commit": "df3cccf3dc6b59ec4a45d80fb483022360e13830",
      "tree": "ad6c69291a1bb02fbf694b0e5ce03258d419bb49",
      "parents": [
        "96abb48dff22a54de4ddcdd427d8e5a261d0facc",
        "120a4594855951ed5eb185fdfc19bf98efef3ba2"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Wed Oct 27 19:31:24 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Oct 27 19:31:24 2010 -0700"
      },
      "message": "am 120a4594: Drop all dispatcher state when dispatcher is disabled.\n"
    },
    {
      "commit": "120a4594855951ed5eb185fdfc19bf98efef3ba2",
      "tree": "74fc123ad9fd79bc8d077dc019f5f669e4596e89",
      "parents": [
        "aa93bcd62482719c146a411008e1eac94135b6a4"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Wed Oct 27 18:43:51 2010 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Wed Oct 27 18:43:51 2010 -0700"
      },
      "message": "Drop all dispatcher state when dispatcher is disabled.\n\nThis patch makes the dispatcher drop all of its state when it is\ndisabled (when the screen turns off).  This ensures that the dispatcher\ndoes not get stuck thinking a pointer is still down if the screen\nturned off while the user was touching the display (such as a fat touch\nwhile hitting the power button).\n\nBug: 3098344\nChange-Id: If50ef5804870aa1acd3179fd4b40e3cda58dd39d\n"
    },
    {
      "commit": "581cc64028e8b8f66cec8105bf530b16d5fb34eb",
      "tree": "82d5b43ecb850ffa7b0dede58c86032fcc066d54",
      "parents": [
        "0424d69d484dfc25c73f6557199cfbb7aaaeb043"
      ],
      "author": {
        "name": "Alex Sakhartchouk",
        "email": "alexst@google.com",
        "time": "Wed Oct 27 14:10:07 2010 -0700"
      },
      "committer": {
        "name": "Alex Sakhartchouk",
        "email": "alexst@google.com",
        "time": "Wed Oct 27 14:10:07 2010 -0700"
      },
      "message": "Adding nvidia extension for limited npot support.\nUpdating a3d loading to be async.\n\nChange-Id: I4be71d2002b9ad6ab8896d63e625f031e6b7ea6c\n"
    },
    {
      "commit": "fd7b62d5be677c51dd488feaad32e333d9c776c3",
      "tree": "0fe91cf1e11e548cc63eebf9df7f52707203e32b",
      "parents": [
        "6b5f29f34a4a7a7539a31a682dcef44b2137bcf7",
        "e6544e4cc906c6b5c4157fccdc928149fc39d7d6"
      ],
      "author": {
        "name": "Vasu Nori",
        "email": "vnori@google.com",
        "time": "Tue Oct 26 18:39:27 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 26 18:39:27 2010 -0700"
      },
      "message": "Merge \"convert one of the LOGE to LOG_WINDOW msg to reduce grief\""
    },
    {
      "commit": "e6544e4cc906c6b5c4157fccdc928149fc39d7d6",
      "tree": "19893999e30e0fc7ad1d9e7923db08466555b689",
      "parents": [
        "f0a896b353e01c7093ba2ee0539f1a7cabef6ec6"
      ],
      "author": {
        "name": "Vasu Nori",
        "email": "vnori@google.com",
        "time": "Tue Oct 26 16:44:44 2010 -0700"
      },
      "committer": {
        "name": "Vasu Nori",
        "email": "vnori@google.com",
        "time": "Tue Oct 26 16:44:44 2010 -0700"
      },
      "message": "convert one of the LOGE to LOG_WINDOW msg to reduce grief\n\ngrief from people who think this message is bad news.\nbut in reality, this message is really just an informational message\nto aid in debugging\n\nChange-Id: I1a2ab1666a27adb7d3fd210528b2c5218640d53d\n"
    },
    {
      "commit": "f887594d0e83542d8b374d294b62a1bff606478f",
      "tree": "182975af6d0812d73a24c8b45b962a421b4a400d",
      "parents": [
        "a8264dfe5a6f614e77b228edc71053cae7cd2153",
        "746b7401ceb86b5f2805f8c0d3b39ac739152015"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Tue Oct 26 16:31:31 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 26 16:31:31 2010 -0700"
      },
      "message": "Merge \"Remove unnecessary GL calls.\""
    },
    {
      "commit": "746b7401ceb86b5f2805f8c0d3b39ac739152015",
      "tree": "757875a6d574e07572088b7c1eed80125299bdff",
      "parents": [
        "0d9275e565551eed57297627188aa39f3897a50b"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Tue Oct 26 16:27:31 2010 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Tue Oct 26 16:27:31 2010 -0700"
      },
      "message": "Remove unnecessary GL calls.\n\nThis change batches calls to glScissor() and removes extra GL\nqueries and glActiveTexture() calls.\n\nChange-Id: I1cd079d314f87cd9c088f95c8d4909c2f860f6aa\n"
    },
    {
      "commit": "64eb351cff16db2aeaf2c279fbcce9c6a80d0047",
      "tree": "a6f84a9e3da23cc1786664396b28161f4378557b",
      "parents": [
        "6bdf5c39d80efaba9142b87d27a3d09457edd967",
        "31a7e42f4baa059352f0db119de38428e655eab2"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Tue Oct 26 16:16:17 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 26 16:16:17 2010 -0700"
      },
      "message": "Merge \"Begin adding async allocation creation.\""
    },
    {
      "commit": "31a7e42f4baa059352f0db119de38428e655eab2",
      "tree": "7e3bf245244215cad507f57c24043f20a91bcd8c",
      "parents": [
        "cd44bf9c7ae89edcf906451e162d096cf3d7e561"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Tue Oct 26 13:09:17 2010 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Tue Oct 26 13:09:17 2010 -0700"
      },
      "message": "Begin adding async allocation creation.\n\nChange-Id: I5d1381699e2b334c1d824f357bd6b310a5f79be8\n\nImplement async bitmap upload and clean up types.\n\nChange-Id: Icbe9894e04c1319351c1cd75b0e0017855198f20\n"
    },
    {
      "commit": "9440083be22ec13e252aa347e654911d33e50086",
      "tree": "5af291c0ad2e3f3b05dde457618ed0414e4fa312",
      "parents": [
        "fdfe1a6bef4c1f5cb18b8deb9f1180feb9e530a2",
        "ad93c2bb63dfc813b2eefa1043aa63afbddce655"
      ],
      "author": {
        "name": "Chet Haase",
        "email": "chet@google.com",
        "time": "Tue Oct 26 12:53:57 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 26 12:53:57 2010 -0700"
      },
      "message": "Merge \"Optimizing ColorFilter in display lists\""
    },
    {
      "commit": "ad93c2bb63dfc813b2eefa1043aa63afbddce655",
      "tree": "b1a5a9cd667ed0dca718405390d76081a8241d54",
      "parents": [
        "78098341f86b4c71256017ca2b33674d6bcab046"
      ],
      "author": {
        "name": "Chet Haase",
        "email": "chet@google.com",
        "time": "Fri Oct 22 16:17:12 2010 -0700"
      },
      "committer": {
        "name": "Chet Haase",
        "email": "chet@google.com",
        "time": "Tue Oct 26 12:52:03 2010 -0700"
      },
      "message": "Optimizing ColorFilter in display lists\n\nChange-Id: Ie4d5e5b0bc45e0ce47bba144049303c270762e54\n"
    },
    {
      "commit": "32b1dd2632b2424fa4686418af622bab6b5d5cbd",
      "tree": "1fbea27f3c9857d81005e0e7c2256904b8742e3d",
      "parents": [
        "49d1735482dbcb017775b1807847e943f0a5152c",
        "85c5ca07b9c6e58337a149d36bc3cecbdb879046"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Oct 26 12:26:23 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Oct 26 12:26:23 2010 -0700"
      },
      "message": "am 85c5ca07: am 2f19f56a: Merge \"Updade Surface (ANativeWindow) format based on its buffers format\" into gingerbread\n"
    },
    {
      "commit": "85c5ca07b9c6e58337a149d36bc3cecbdb879046",
      "tree": "1c99b878e01f7ac291e197e7b3057e60f93a1001",
      "parents": [
        "1b98a9e6a9bd22c4dca731491b701f7ece6a6eb7",
        "2f19f56ac5bcf02ed503bdaf95b724cba8ff782d"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Oct 26 12:22:12 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Oct 26 12:22:12 2010 -0700"
      },
      "message": "am 2f19f56a: Merge \"Updade Surface (ANativeWindow) format based on its buffers format\" into gingerbread\n"
    },
    {
      "commit": "dcaff67a807de225bc7e5b6dccc98fa15b329512",
      "tree": "04bd67fdad5b1d39ba5cabb25708ea9bee6f66c7",
      "parents": [
        "7f266f089ece32ab7373207d5782b23a7185cfd6",
        "d98aa2de9ab18e09c2be1997f41212740f51f6e6"
      ],
      "author": {
        "name": "Chet Haase",
        "email": "chet@google.com",
        "time": "Tue Oct 26 06:59:19 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 26 06:59:19 2010 -0700"
      },
      "message": "Merge \"DisplayList optimizations and fixes.\""
    },
    {
      "commit": "d98aa2de9ab18e09c2be1997f41212740f51f6e6",
      "tree": "04bf505226c6a38fde7a466e28154e006e806f30",
      "parents": [
        "9bb127869666be6507fb5c4b37b7d1965c7e5fa6"
      ],
      "author": {
        "name": "Chet Haase",
        "email": "chet@google.com",
        "time": "Mon Oct 25 15:47:32 2010 -0700"
      },
      "committer": {
        "name": "Chet Haase",
        "email": "chet@google.com",
        "time": "Tue Oct 26 06:54:55 2010 -0700"
      },
      "message": "DisplayList optimizations and fixes.\n\nWe now use a copy of SkPaint objects to avoid having it changed from under us.\nWe reuse copies that have not changed. We also copy the SkMatrix every time to\navoid the same problem.\n\nChange-Id: If3fd80698f2d43ea16d23302063e0fd8d0549027\n"
    },
    {
      "commit": "3f87246dd3db8644f4687b9c270c827aba04cd25",
      "tree": "e3fc46f3b085c7c64aaab98ef49baafc7872ac09",
      "parents": [
        "74a040c914d0e9e765c276ec1ab310f6c681d96a",
        "76860e3fe73a791b1b04f33d78b908eb3163b4b2"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Oct 25 18:51:57 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Oct 25 18:51:57 2010 -0700"
      },
      "message": "Merge \"Tweak log messages a bit.\""
    },
    {
      "commit": "9bca4793a33d2714b306d69ceb870925a588fe71",
      "tree": "03d6bc554b1a61de818c32330039af59cad4b70d",
      "parents": [
        "3e3ba155fc0ef7a7f40f06762240d9ba22f62b19"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Mon Oct 25 18:42:25 2010 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Mon Oct 25 18:42:25 2010 -0700"
      },
      "message": "Small cleanup.\n\nRemoves unnecessary forward class declaration, make Caches::currentBuffer\nprivate instead of public.\n\nChange-Id: Idba6325c8c602d89239e667cb8ec87e7943f8e75\n"
    },
    {
      "commit": "3e3ba155fc0ef7a7f40f06762240d9ba22f62b19",
      "tree": "ceaa261fca5f5be2a171e25ecef3376fc24021bd",
      "parents": [
        "8164c2d338781c3a3c4a443941070dca5d88f2a7"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Mon Oct 25 18:33:16 2010 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Mon Oct 25 18:33:16 2010 -0700"
      },
      "message": "Don\u0027t change texture unit when not needed.\n\nChange-Id: Ifa84426d234f2122402cb13533cb5964f1ce95ec\n"
    },
    {
      "commit": "8164c2d338781c3a3c4a443941070dca5d88f2a7",
      "tree": "22f218c64471d29d1cfbc9a55cb8bb530cf78714",
      "parents": [
        "c361da845a205ac35e724c0ca436744d483de7aa"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Mon Oct 25 18:03:28 2010 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Mon Oct 25 18:03:28 2010 -0700"
      },
      "message": "Don\u0027t change textures wrap modes on every draw.\n\nChange-Id: If6d3f313778cc7f3e803a063338539c8b3e165e3\n"
    },
    {
      "commit": "76860e3fe73a791b1b04f33d78b908eb3163b4b2",
      "tree": "cea00ab372ea81c9d65ceb45b3beb33228f17796",
      "parents": [
        "6dc0c73fb05bcac570a134242789512977201648"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Oct 25 17:37:46 2010 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Oct 25 17:37:46 2010 -0700"
      },
      "message": "Tweak log messages a bit.\n\nChange-Id: Ifadf78c1ab8db49106216c70086f98860795c65f\n"
    },
    {
      "commit": "b9737a1d1b9eb24cab18a6f50659a43c8bca79be",
      "tree": "e2852ec578389d66a4ad592c109a7697c8306924",
      "parents": [
        "3026a1c4e88412b7fe997f93fedba871d79a03cd"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Oct 25 16:29:24 2010 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Oct 25 17:08:37 2010 -0700"
      },
      "message": "Updade Surface (ANativeWindow) format based on its buffers format\n\nthis is to allow applications to change the format of a surface\u0027s\nbuffer, and have it reflected in EGL; which is needed for\nEGLConfig validation.\n\nChange-Id: Iee074c30ad765881e2409c1d37450b05e561c44d\n"
    },
    {
      "commit": "7631cbbed41ad3183723e5bc6e082d40549664b9",
      "tree": "08cbfda54b2574cdbfca6ba9171807b5b1ff0e1a",
      "parents": [
        "3ae4ac8538765d6cf5b8aceea8c81b21854321bd"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Sun Oct 24 15:22:06 2010 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Sun Oct 24 15:25:53 2010 -0700"
      },
      "message": "Add test stubs for newly added methods.\n\nChange-Id: I44139adebbbed1358f613fbcbfcddac6617ef5bd\n"
    },
    {
      "commit": "3ae4ac8538765d6cf5b8aceea8c81b21854321bd",
      "tree": "d0e8ae9e1117ce1aeebf375a2807de5ed95c0655",
      "parents": [
        "4761b176ed241a88394968b983f06c5ae1aad26a",
        "2ef36763700eff5679d6012e7f078c57f1a4c465"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Sun Oct 24 14:36:23 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sun Oct 24 14:36:23 2010 -0700"
      },
      "message": "am 2ef36763: am 860c2df4: Merge \"Add unit tests for native input and fix bugs identified.\" into gingerbread\n\nMerge commit \u00272ef36763700eff5679d6012e7f078c57f1a4c465\u0027\n\n* commit \u00272ef36763700eff5679d6012e7f078c57f1a4c465\u0027:\n  Add unit tests for native input and fix bugs identified.\n"
    },
    {
      "commit": "2ef36763700eff5679d6012e7f078c57f1a4c465",
      "tree": "3b36010de56350d0b88914c4fbd729afa38acd00",
      "parents": [
        "b34fe2f0258eb1ed512b682206b7fe65116f1dbd",
        "860c2df4132a2a0be9bcb0e91bfb7e79588c000f"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Sun Oct 24 14:31:41 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sun Oct 24 14:31:41 2010 -0700"
      },
      "message": "am 860c2df4: Merge \"Add unit tests for native input and fix bugs identified.\" into gingerbread\n\nMerge commit \u0027860c2df4132a2a0be9bcb0e91bfb7e79588c000f\u0027 into gingerbread-plus-aosp\n\n* commit \u0027860c2df4132a2a0be9bcb0e91bfb7e79588c000f\u0027:\n  Add unit tests for native input and fix bugs identified.\n"
    },
    {
      "commit": "715a89ebbf3f8c7a4621fc3a1396e6c1539bea28",
      "tree": "42f12ccfd5c5244c3688de86a479ae5e8ce65336",
      "parents": [
        "50ae1dc3a4ed563ad7ad96adaa0353567474545c",
        "dd78ccacff83f0714ad90be98b58ad85f5d08c66"
      ],
      "author": {
        "name": "Chet Haase",
        "email": "chet@google.com",
        "time": "Sun Oct 24 12:35:07 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Oct 24 12:35:07 2010 -0700"
      },
      "message": "Merge \"Fix Caches singleton to avoid resource leaks\""
    },
    {
      "commit": "dd78ccacff83f0714ad90be98b58ad85f5d08c66",
      "tree": "40889dd933c043eb840e2f6beda2981908af6e1f",
      "parents": [
        "4de82c7885bd41f9fa5ca3938d617cae5edacbdf"
      ],
      "author": {
        "name": "Chet Haase",
        "email": "chet@google.com",
        "time": "Fri Oct 22 18:59:26 2010 -0700"
      },
      "committer": {
        "name": "Chet Haase",
        "email": "chet@google.com",
        "time": "Sun Oct 24 12:27:22 2010 -0700"
      },
      "message": "Fix Caches singleton to avoid resource leaks\n\nThe declaration of Singleton objects must be in CPP files (not header\nfiles) to avoid creating separate instances of what is supposedly a\nsingle object.\n\nChange-Id: Ie903384824a458b5572f3ce5b6cfb359c18a9c44\n"
    },
    {
      "commit": "9c937f3687968e1a07f2e061fca1ad64fa106c04",
      "tree": "4903e88f50bdd965b557650651af49781f2ac8d3",
      "parents": [
        "0175e01f54670d0133d131222826f7033e2e2c03",
        "ae88e5e8e9cb6c9539314c4360c5b20f8ec1fefc"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Sat Oct 23 23:10:35 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Oct 23 23:10:35 2010 -0700"
      },
      "message": "Merge \"Fix rendering issue with layers.\""
    },
    {
      "commit": "0175e01f54670d0133d131222826f7033e2e2c03",
      "tree": "409ae836e4dcfbf82c55529f09f742f598cee28a",
      "parents": [
        "4de82c7885bd41f9fa5ca3938d617cae5edacbdf"
      ],
      "author": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Sat Oct 23 02:15:57 2010 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Sat Oct 23 22:12:29 2010 -0700"
      },
      "message": "Enable optimized bitcode that is also jitted faster.\n\nChange-Id: I08832cfaf4e8465c16b445eeb1b82f72d874d0ef\n"
    },
    {
      "commit": "c3db858de9fa152480b9cf53c8c0cb793a280722",
      "tree": "ba337dd2df79d211a940727c5c93c112cf0de77d",
      "parents": [
        "b6a2256e5461160a89d077b761d3253d95ce869f"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Wed Oct 20 15:33:38 2010 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Sat Oct 23 03:52:57 2010 -0700"
      },
      "message": "Add unit tests for native input and fix bugs identified.\n\nFixed a bug where we would lose the first touch point when swiping out of\nthe virtual key area.\n\nFixed a bug where we would not send an ACTION_MOVE event in cases where\nindividual pointers went down/up and the remaining pointers actually moved.\nThis is important since many applications do not handle pointer movements\nduring ACTION_POINTER_DOWN or ACTION_POINTER_UP.  In the case of\nACTION_POINTER_UP the movement was completely lost since all pointers were\ndispatched using their old location rather than the new location.\n\nImproved motion event validation to check for duplicate pointer ids.\n\nAdded an input source constant that was missing from the NDK api but\ndefined in the framework api.\n\nAdded a timestamp when reporting added/removed devices in EventHub.\n\nBug: 3070082\nChange-Id: I3206a030f43b7616e2f48006e5a9d522c4d92e56\n"
    },
    {
      "commit": "ae88e5e8e9cb6c9539314c4360c5b20f8ec1fefc",
      "tree": "451798ed04880220134161c51b1f417fb8450797",
      "parents": [
        "58ae6db4ff8a9d0910e1183ee8be9a038a2712a6"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Fri Oct 22 17:49:18 2010 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Fri Oct 22 17:49:18 2010 -0700"
      },
      "message": "Fix rendering issue with layers.\n\nA change was made earlier in the renderer to not snap the current clip rect\non every clip operation. The clip rect must not be snapped to pixel boundaries\nbefore being used for pixel precision operations. Some operations were doing\nthis correctly, others were not. For instance, a layer was always created by\nrounding to the correct pixels, but composing a layer was done with a non\nrounded clip, thus resulting in slightly odd behaviors.\n\nChange-Id: I31c2cf0a343450470bcd449c3f13fe37648b9c7c\n"
    },
    {
      "commit": "58ae6db4ff8a9d0910e1183ee8be9a038a2712a6",
      "tree": "3c3186965c778b0019af3bb1cc58f8ccc5f1af6a",
      "parents": [
        "b0be86e08ea124c525eebc41f256a96ee4fc10cc"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Fri Oct 22 11:16:37 2010 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Fri Oct 22 11:16:37 2010 -0700"
      },
      "message": "Don\u0027t use two different variables to refer to mSnapshot.\n\nChange-Id: Ie4a0616d2fe0b040ac14b734a9ddf77bf1f35b0c\n"
    },
    {
      "commit": "b0be86e08ea124c525eebc41f256a96ee4fc10cc",
      "tree": "b3998060ca41379eb3f4beb3c58ab72b42fcff09",
      "parents": [
        "d15949e65d128a89957d62e5c6b0f799d096fb81",
        "ae517591d96be39f5f18a1716c856ade13a8bcc7"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Fri Oct 22 10:42:48 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Oct 22 10:42:48 2010 -0700"
      },
      "message": "Merge \"Don\u0027t perform glCopyTextImage with coordinates outside the buffer.\""
    },
    {
      "commit": "ae517591d96be39f5f18a1716c856ade13a8bcc7",
      "tree": "05fbd13d7ea9d793455da764d6852e12429dd8dd",
      "parents": [
        "477d9b2ddc9515e0df088c448ddfb6f9145edce1"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Fri Oct 22 10:40:27 2010 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Fri Oct 22 10:40:27 2010 -0700"
      },
      "message": "Don\u0027t perform glCopyTextImage with coordinates outside the buffer.\n\nBug #3122179\n\nChange-Id: I91ed397e9e553a8eeb69d82d0c5b1e49a3cdd5ff\n"
    },
    {
      "commit": "da36c84a9706b1a7a1052113dcec527d0c71156e",
      "tree": "7666f00d7920a601b7cc3dd4e715dd2b1bbad76e",
      "parents": [
        "0865f7629a6fc0dba81cb42451b3eba6f34efe9d",
        "7ba8c44ef7ba22d83a670e50314d69d0ddce1b9c"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Fri Oct 22 09:14:28 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Oct 22 09:14:28 2010 -0700"
      },
      "message": "am 7ba8c44e: am 8ad30b5b: Merge \"Initialized check in ZipFileRO::findEntryByName\" into gingerbread\n\nMerge commit \u00277ba8c44ef7ba22d83a670e50314d69d0ddce1b9c\u0027\n\n* commit \u00277ba8c44ef7ba22d83a670e50314d69d0ddce1b9c\u0027:\n  Initialized check in ZipFileRO::findEntryByName\n"
    },
    {
      "commit": "7ba8c44ef7ba22d83a670e50314d69d0ddce1b9c",
      "tree": "c3dc318d20be052ad30122473325bee4e26b90e8",
      "parents": [
        "d4d3f36f4c25b41f4253eadd5e67035fe220cad3",
        "8ad30b5b7e380428701a44458393cbc2381f205b"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Fri Oct 22 08:59:24 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Oct 22 08:59:24 2010 -0700"
      },
      "message": "am 8ad30b5b: Merge \"Initialized check in ZipFileRO::findEntryByName\" into gingerbread\n\nMerge commit \u00278ad30b5b7e380428701a44458393cbc2381f205b\u0027 into gingerbread-plus-aosp\n\n* commit \u00278ad30b5b7e380428701a44458393cbc2381f205b\u0027:\n  Initialized check in ZipFileRO::findEntryByName\n"
    },
    {
      "commit": "8ad30b5b7e380428701a44458393cbc2381f205b",
      "tree": "bc0c80f21bd9d146bee842a08c71d601b931f8c9",
      "parents": [
        "1257d330dcfdb87214278c8fc9718ea9fc663df6",
        "0b224238781fdd6d11f76a30376bc1556e1d217a"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Fri Oct 22 07:55:44 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Oct 22 07:55:44 2010 -0700"
      },
      "message": "Merge \"Initialized check in ZipFileRO::findEntryByName\" into gingerbread"
    },
    {
      "commit": "b38d534873ca514f5a5230596c838aa37eca1568",
      "tree": "4473cccf239e0a97597db92052508b2149309ad1",
      "parents": [
        "4924aee9cb1c5988359f3162b6e89689c5b101e1"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Thu Oct 21 14:06:55 2010 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Thu Oct 21 21:17:30 2010 -0700"
      },
      "message": "Fix refcounting bugs where the sys refcount\ncould be corrupted during async type creation.\n\nChange-Id: If42828e92990598b0cb5da81c82ea513f94725f2\n\nFix stack object deletion bug.\n\nChange-Id: I2c723aa5ad15e0c99dc9cd0cfbc7db80bace172a\n"
    },
    {
      "commit": "470ce098f82047304f78162646d65ed3a908e95e",
      "tree": "7c11c85aa19e50b746ae790bc99b946d8290d770",
      "parents": [
        "39df5331c7423455f1fb6c01b075b618f8bc00fd",
        "d7cd560af506f75d07034c136bea09b409b4d408"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Thu Oct 21 17:21:56 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 21 17:21:56 2010 -0700"
      },
      "message": "am d7cd560a: am 1d79a9d9: Use correct size of GAMEPAD_KEYCODES\n\nMerge commit \u0027d7cd560af506f75d07034c136bea09b409b4d408\u0027\n\n* commit \u0027d7cd560af506f75d07034c136bea09b409b4d408\u0027:\n  Use correct size of GAMEPAD_KEYCODES\n"
    },
    {
      "commit": "d7cd560af506f75d07034c136bea09b409b4d408",
      "tree": "61396a3535fda841a646106c67410fe798ba7dea",
      "parents": [
        "044fcd64fe999dca0f986dfce9cb3b5b1da77f44",
        "1d79a9d9f85f932a1fd6dcddba335450b65ba4e6"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Thu Oct 21 16:22:58 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 21 16:22:58 2010 -0700"
      },
      "message": "am 1d79a9d9: Use correct size of GAMEPAD_KEYCODES\n\nMerge commit \u00271d79a9d9f85f932a1fd6dcddba335450b65ba4e6\u0027 into gingerbread-plus-aosp\n\n* commit \u00271d79a9d9f85f932a1fd6dcddba335450b65ba4e6\u0027:\n  Use correct size of GAMEPAD_KEYCODES\n"
    },
    {
      "commit": "1d79a9d9f85f932a1fd6dcddba335450b65ba4e6",
      "tree": "4c25f01396a8fed470404bbd92aa2af90df205b0",
      "parents": [
        "703aae06c0925b19657877bb1872bb2f28874969"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Thu Oct 21 15:46:03 2010 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Thu Oct 21 15:46:03 2010 -0700"
      },
      "message": "Use correct size of GAMEPAD_KEYCODES\n\nCompute the actual number of indices in the GAMEPAD_KEYCODES instead of\nthe pure size in bytes.\n\nBug: 3121536\nChange-Id: I71edbd8bf6eff2c8cc0ea5c6845362b3d1e06466\n"
    },
    {
      "commit": "0b224238781fdd6d11f76a30376bc1556e1d217a",
      "tree": "f5cb7107a1028d8902fe163ab706b8de02f570fa",
      "parents": [
        "703aae06c0925b19657877bb1872bb2f28874969"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Thu Oct 21 15:18:28 2010 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Thu Oct 21 15:25:12 2010 -0700"
      },
      "message": "Initialized check in ZipFileRO::findEntryByName\n\nIf a ZipFileRO object is uninitialized, the hash table will not have\nbeen initialized. This condition wasn\u0027t checked in findEntryByName.\n\nBug: 3121109\nChange-Id: Ib696e0e7e0cb4dd0fb2e456d6a847e5e8f4fe14e\n"
    },
    {
      "commit": "bdccfe4ac4b3c727febecd7443dda7828533e554",
      "tree": "34724909d1392207d23983dbc38ac463e4617eda",
      "parents": [
        "f3c3c4fd14cb4185ec6df5a4355aab8b9f4039dc",
        "5c13d89c1332fcc499379b9064b891187b75ca32"
      ],
      "author": {
        "name": "Chet Haase",
        "email": "chet@google.com",
        "time": "Thu Oct 21 13:29:26 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Oct 21 13:29:26 2010 -0700"
      },
      "message": "Merge \"Optimizing display lists by referencing pointers to resources instead of copying them\""
    },
    {
      "commit": "5c13d89c1332fcc499379b9064b891187b75ca32",
      "tree": "439222e6d58a765a84133345ac6ef7cb13f1c04e",
      "parents": [
        "a376d030a2075909219926d622b71016418d7dcd"
      ],
      "author": {
        "name": "Chet Haase",
        "email": "chet@google.com",
        "time": "Fri Oct 08 08:37:55 2010 -0700"
      },
      "committer": {
        "name": "Chet Haase",
        "email": "chet@google.com",
        "time": "Thu Oct 21 12:02:42 2010 -0700"
      },
      "message": "Optimizing display lists by referencing pointers to resources instead of copying them\n\nChange-Id: I81ad3551d74aa1e5bb64d69e33d2eb29a6c1eb6a\n"
    },
    {
      "commit": "385a753dead6ef15f2e30eae47f73e642b3ef7ed",
      "tree": "ae4e55f4c7903e62f23802c7d49ad97ae5b2f0a7",
      "parents": [
        "a376d030a2075909219926d622b71016418d7dcd",
        "368fdba47a49f249aa4346edaf3f45291ca6a7ff"
      ],
      "author": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@android.com",
        "time": "Thu Oct 21 07:39:10 2010 -0700"
      },
      "committer": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@android.com",
        "time": "Thu Oct 21 07:39:10 2010 -0700"
      },
      "message": "resolved conflicts for merge of 368fdba4 to master\n\nChange-Id: I42b7b433c86a71a5da5db67109f056a280077c9d\n"
    },
    {
      "commit": "4ceee5a6b0089ffbec75690b7284f80d481ab212",
      "tree": "a78e3fcb15f5aa8170e6b937049840dcb0cdde7c",
      "parents": [
        "fb31036fd844444c395a2ae9c97439eec9f774e4",
        "73655bd2d303f8b3fe5c4bb0d8e4824361647381"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Oct 20 21:28:29 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Oct 20 21:28:29 2010 -0700"
      },
      "message": "am 73655bd2: Merge \"propagate RS context priority to EGLContext when possible. DO NOT MERGE.\" into gingerbread\n\nMerge commit \u002773655bd2d303f8b3fe5c4bb0d8e4824361647381\u0027 into gingerbread-plus-aosp\n\n* commit \u002773655bd2d303f8b3fe5c4bb0d8e4824361647381\u0027:\n  propagate RS context priority to EGLContext when possible. DO NOT MERGE.\n"
    },
    {
      "commit": "73655bd2d303f8b3fe5c4bb0d8e4824361647381",
      "tree": "b994cf8a574010ef0b51c58d9e1f6ffee941bf57",
      "parents": [
        "583fefc8dcadecc7fc933513d3569dd9c16c100c",
        "2db76167b17262aa3e341cbc85c949d119a14aa6"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Oct 20 20:04:52 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Oct 20 20:04:52 2010 -0700"
      },
      "message": "Merge \"propagate RS context priority to EGLContext when possible. DO NOT MERGE.\" into gingerbread"
    },
    {
      "commit": "38311859e809118f2cba3597d056abffe4eb80c0",
      "tree": "0debf077cf395ecb9e5c28979e6bce7325aef34f",
      "parents": [
        "067222d11f95e2547b638b6daf5d4c06c6dc49ef"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Oct 18 20:42:51 2010 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Tue Oct 19 23:07:08 2010 -0700"
      },
      "message": "Camera framework change required for 0-memcpy recording\n\nbug - 3042125\n\nChange-Id: I46eb7a10b5394086b353fd73e4503beceeed76f1\n"
    },
    {
      "commit": "368fdba47a49f249aa4346edaf3f45291ca6a7ff",
      "tree": "437ece3f7d6b298f0f4911e4195ae86482a55eae",
      "parents": [
        "5a67749a35bcbb70bfcc5f4c18da6a196bda33c1",
        "bdf1706ac680c0fe74765b8d6d34823b8ac05306"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Tue Oct 19 12:29:43 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Oct 19 12:29:43 2010 -0700"
      },
      "message": "am bdf1706a: Merge \"Reduce logging.\" into gingerbread\n\nMerge commit \u0027bdf1706ac680c0fe74765b8d6d34823b8ac05306\u0027 into gingerbread-plus-aosp\n\n* commit \u0027bdf1706ac680c0fe74765b8d6d34823b8ac05306\u0027:\n  Reduce logging.\n"
    },
    {
      "commit": "431bb2269532f2514861b908d5fafda8fa64da79",
      "tree": "c862fe87c2525c18057728a75f2b3da9cdc30d2b",
      "parents": [
        "1858031946b3627b599475c5894655362e510351"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Mon Oct 18 19:13:23 2010 -0400"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Tue Oct 19 15:08:05 2010 -0400"
      },
      "message": "Reduce logging.\n\nRemember, the system and main logs are\n    - Shared resources\n    - Primarily for recording problems\n    - To be used only for large grained events during normal operation\n\nBug: 3104855\nChange-Id: I136fbd101917dcbc8ebc3f96f276426b48bde7b7\n"
    },
    {
      "commit": "50c0f093d942a59d4e01b2c76d26c0e9d6ed796c",
      "tree": "e3ba1ae68c0694bfcfca0c5c538b034ac86ca8b4",
      "parents": [
        "29d9849fd7b8b49c26fe7e7bae0ba01e907dc1b7"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Tue Oct 19 11:42:22 2010 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Tue Oct 19 11:42:22 2010 -0700"
      },
      "message": "Solve rendering issue with embedded WebViews.\nBug #3094017\n\nThe blending mode was not appropriately set after WebView released the\ncontext.\n\nChange-Id: Ib36d48e82c12f6d131dd5a0bcde9106925b8da63\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"
    }
  ],
  "next": "f7c51552f038dab7ba64e38f35a5e7c52a4d72e8"
}
