)]}'
{
  "log": [
    {
      "commit": "d21b6e1fe337b35f62cf2028e9bd0637fd009a75",
      "tree": "8831d34e2dd0335c158c2aa12bee68452745c8c5",
      "parents": [
        "28147b654bba8ae2b7976e58aa7869255e436b0b"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Wed Nov 30 20:21:23 2011 -0800"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Wed Nov 30 20:21:23 2011 -0800"
      },
      "message": "Optimize away unnecessary state changes\n\nChange-Id: I0f6816f9f6234853575ecee5033186ad19e76380\n"
    },
    {
      "commit": "993b2099cee5c3ad86a5fbbd29194994336187be",
      "tree": "418b272f4f123457611c33146a53cf5ad3abb0fb",
      "parents": [
        "df96385b9acf9ec74c62edc34ffa9c8d9dae1c03",
        "55d3880eed3450748eb7b97281e030902ee29c2a"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Nov 30 10:50:52 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Nov 30 10:50:52 2011 -0800"
      },
      "message": "am 55d3880e: am bb1e7d43: Merge changes I7e973a35,Ib3386fcc into ics-mr1\n\n* commit \u002755d3880eed3450748eb7b97281e030902ee29c2a\u0027:\n  SurfaceTexture: add EGL_KHR_fence_sync option\n  SurfaceTexture: add a blit-to-FBO test\n"
    },
    {
      "commit": "77cec6132aea6ed98812125f5ad5f79e889cf658",
      "tree": "57535ce4ed1806290cb04f8434d324dec7995df2",
      "parents": [
        "d6c938f04ec1e39dcbcf4d5adfcbdfbac0484540"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Mon Nov 14 14:51:01 2011 -0800"
      },
      "committer": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Tue Nov 29 17:09:01 2011 -0800"
      },
      "message": "SurfaceTexture: add EGL_KHR_fence_sync option\n\nThis change adds a compile-time option for SurfaceTexture to use the\nEGL_KHR_fence_sync extension to synchronize access to Gralloc buffers.\n\nBug: 5122031\nChange-Id: I7e973a358631fff5308acf377581b811911fe790\n"
    },
    {
      "commit": "d6c938f04ec1e39dcbcf4d5adfcbdfbac0484540",
      "tree": "9acd90f3ac1bd34dd53ec287e8ceaf4b14a0d9e8",
      "parents": [
        "be6ab576ff0e3bf2a8dc3feee6f476061afbda30"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Fri Nov 11 18:05:11 2011 -0800"
      },
      "committer": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Tue Nov 29 14:52:36 2011 -0800"
      },
      "message": "SurfaceTexture: add a blit-to-FBO test\n\nThis change adds a test for blitting (via GL rendering) from a\nSurfaceTexture to an FBO.\n\nChange-Id: Ib3386fcc3f37153277f3e37a26347441bb80ab58\n"
    },
    {
      "commit": "79f39eb46055282c86815853ad94a1e01ca6675f",
      "tree": "3853d9c0c5b1877a390178558e77dd7b6c31ad75",
      "parents": [
        "f9e88fbee04f83638b07546741196bd4c242ef54"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu Nov 17 17:49:17 2011 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Nov 29 13:10:25 2011 -0800"
      },
      "message": "Add support for sending VSYNC events to the framework\n\nuse gui/DisplayEvent to receive the events. Events are\ndispatched through a unix pipe, so the API is compatible\nwith utils/Looper. see gui/DisplayEvent.h for more info.\n\nBug: 1475048\nChange-Id: Ia720f64d1b950328b47b22c6a86042e481d35f09\n"
    },
    {
      "commit": "f9e88fbee04f83638b07546741196bd4c242ef54",
      "tree": "a0b0da85f2411f6a025637cd082f1efced6790e5",
      "parents": [
        "e11ec1df421be0b1a18fd3cf6ec23361d86ca32a"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Nov 29 13:07:24 2011 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Nov 29 13:07:40 2011 -0800"
      },
      "message": "Fix build.\n\nRevert \"Add support for sending VSYNC events to the framework\"\n\nThis reverts commit f3918c5bd4bc9f02f74da42995564150ca2dd382.\n\nChange-Id: I998e3e1aa3fa310829ae973b64fe11b01f6f468f\n"
    },
    {
      "commit": "aa2892edc7bb2b915771679d9811ec54a26db366",
      "tree": "49c0dc6ac659e69b4a2b7c4c439d60b7d759e3e6",
      "parents": [
        "1e773932a1658128b80508f081de3c80655465d2",
        "f3918c5bd4bc9f02f74da42995564150ca2dd382"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Nov 29 11:47:03 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 29 11:47:03 2011 -0800"
      },
      "message": "Merge changes If4126023,Iacda2386,I1eb691f7,Ib56139f8\n\n* changes:\n  Add support for sending VSYNC events to the framework\n  BitTube::read now handles EAGAIN\n  split ComposerService out of SurfaceComposerClient.h\n  rewrite SF\u0027s message loop on top of Looper\n"
    },
    {
      "commit": "f3918c5bd4bc9f02f74da42995564150ca2dd382",
      "tree": "9f8a1bb871b9b5a7571a6a9cbc65d539ac947b92",
      "parents": [
        "bb9ba8bae551305acba4f60577b0f461a9421bc5"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu Nov 17 17:49:17 2011 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Nov 29 11:44:05 2011 -0800"
      },
      "message": "Add support for sending VSYNC events to the framework\n\nuse gui/DisplayEvent to receive the events. Events are\ndispatched through a unix pipe, so the API is compatible\nwith utils/Looper. see gui/DisplayEvent.h for more info.\n\nBug: 1475048\nChange-Id: If4126023fc9c067e56087ec7d16a8fd542ce1794\n"
    },
    {
      "commit": "bb9ba8bae551305acba4f60577b0f461a9421bc5",
      "tree": "8a4ccf7b3a0a92232933f55dd2ab4ac591bc803e",
      "parents": [
        "3f15700a012b1ab0097eaf90caf0540ba6caa529"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Nov 29 11:42:32 2011 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Nov 29 11:42:59 2011 -0800"
      },
      "message": "BitTube::read now handles EAGAIN\n\nChange-Id: Iacda2386342ba0727bbf278f6c597488d5467bb8\n"
    },
    {
      "commit": "cb52d6760078197cd6d0c16349348dd2ad16a88c",
      "tree": "bbce61abcabc4031bcef8783ecba3280975d4b0f",
      "parents": [
        "748025579912f92609cadd71786805e10281858d",
        "02e88f23a65c602e83d7a46c0925e653b948e418"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Mon Nov 28 16:11:27 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Nov 28 16:11:27 2011 -0800"
      },
      "message": "am 02e88f23: am 46685db9: Merge \"Fix crash in existing applications Bug #5659476\" into ics-mr1\n\n* commit \u002702e88f23a65c602e83d7a46c0925e653b948e418\u0027:\n  Fix crash in existing applications Bug #5659476\n"
    },
    {
      "commit": "46685db957cc01cef4ba198aafe44d99fe31f62c",
      "tree": "0a04fceefb38ca16d539c917fa3a8143b213da17",
      "parents": [
        "da822367886d68f997153c7edd5368f3dfb6d58d",
        "ff98fa5a847f66e591287154c634ef7895a9549c"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Mon Nov 28 16:06:52 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 28 16:06:52 2011 -0800"
      },
      "message": "Merge \"Fix crash in existing applications Bug #5659476\" into ics-mr1"
    },
    {
      "commit": "d3ea6b40bb8f0fbc2a877963db1ab4fa0fc02b2f",
      "tree": "2f0be21ad21c6efc24597d5cadbadd5645da091c",
      "parents": [
        "589364c7179e764f4e8b9c0d53f45a1abf528aa8",
        "3892889952b0ad3fa0b095c96d8ae2ae110585e2"
      ],
      "author": {
        "name": "Chet Haase",
        "email": "chet@google.com",
        "time": "Mon Nov 28 15:47:16 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Nov 28 15:47:16 2011 -0800"
      },
      "message": "am 38928899: am 8990cb57: Merge \"Fix flashing wifi dialog after rotating back from landscape.\" into ics-mr1\n\n* commit \u00273892889952b0ad3fa0b095c96d8ae2ae110585e2\u0027:\n  Fix flashing wifi dialog after rotating back from landscape.\n"
    },
    {
      "commit": "3f15700a012b1ab0097eaf90caf0540ba6caa529",
      "tree": "548cf135dc366cfd34e430024e89b8e0b58a35b4",
      "parents": [
        "16aca5197244f9066968658735611a0dbbe46403"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu Nov 17 17:48:35 2011 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Nov 28 15:21:57 2011 -0800"
      },
      "message": "split ComposerService out of SurfaceComposerClient.h\n\nChange-Id: I1eb691f7ca263d5895d871ab675bb5826e0323c6\n"
    },
    {
      "commit": "08837c246c9c27902c59b41c8661c2f27a4aa2bc",
      "tree": "ef44ddbbbe0ffe253fff53baa2701d8c747db570",
      "parents": [
        "425c595acb798ed9652b5a1f0e5412cbd8e3873d"
      ],
      "author": {
        "name": "Chet Haase",
        "email": "chet@google.com",
        "time": "Mon Nov 28 11:53:21 2011 -0800"
      },
      "committer": {
        "name": "Chet Haase",
        "email": "chet@google.com",
        "time": "Mon Nov 28 15:19:22 2011 -0800"
      },
      "message": "Fix flashing wifi dialog after rotating back from landscape.\n\nThere was an error in some of the OpenGL layer logic such that we would\noccasionally set up a layer for rendering and then not clean up when it was\ndone. This caused future OpenGL rendering to go into that layer instead of\nto the buffers being displayed on the screen, resulting in artifacts including\nflashes and displaying of stale content. This happened specifically when\nusing the wifi settings dialog with the InputMethod keyboard displayed,\nbut it was probably visible in other situations as well.\n\nIssue #5628248: Flickering/flashing after entering password for WiFi\n\nChange-Id: I38139f620b310f4309570fa7224552d2ee633999\n"
    },
    {
      "commit": "ff98fa5a847f66e591287154c634ef7895a9549c",
      "tree": "87df4b0743e2b8b8d80ef85eaaa93bdad6f3eecf",
      "parents": [
        "e35581ad5ad635f9dcfe4ab6a432c48b46b782cd"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Mon Nov 28 09:35:09 2011 -0800"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Mon Nov 28 14:55:56 2011 -0800"
      },
      "message": "Fix crash in existing applications\nBug #5659476\n\nThe FontRenderer was not cleaning up its temporary state, leading\nto crashes when invoking renderDropShadow.\n\nChange-Id: I43b24820dd5625af8c080bbe11b64de2f74164b2\n"
    },
    {
      "commit": "12be3fff12e5c55193867f49e13169b9400b2997",
      "tree": "fbc630524bfb174e5741b6ea47c8063988afa310",
      "parents": [
        "b145ae9eca9c6a998d15915b17346d35991ad0af"
      ],
      "author": {
        "name": "Logan Chien",
        "email": "loganchien@google.com",
        "time": "Sun Nov 27 08:41:23 2011 +0800"
      },
      "committer": {
        "name": "Logan Chien",
        "email": "loganchien@google.com",
        "time": "Sun Nov 27 08:42:11 2011 +0800"
      },
      "message": "Remove dead code.\n\nChange-Id: I2838a40026291e7345b07911af3ba17278b63ffe\n"
    },
    {
      "commit": "8a743d90a973e4fcf52093f2a89a5c049b626480",
      "tree": "4b9cef02449deff2fb8e2e1bf7dc2d07aaeb84be",
      "parents": [
        "e7d17220be8e20523ffd1c9855f3d389d9ef22ee",
        "9d61edcc0fd960f227aa0c4b8e20b05dea2aca19"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Wed Nov 23 15:32:09 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 23 15:32:09 2011 -0800"
      },
      "message": "Merge \"Add a basic hashtable data structure, with tests!\""
    },
    {
      "commit": "e7d17220be8e20523ffd1c9855f3d389d9ef22ee",
      "tree": "ef52f95323ad3333cc239fa082dccb7195e6d23a",
      "parents": [
        "08e74ba8b05573d0acddc51d09a2554b29a62dbc",
        "09ee7c80eabe0d92119ea0ffff949109602b5833"
      ],
      "author": {
        "name": "Stephen Hines",
        "email": "srhines@google.com",
        "time": "Wed Nov 23 13:58:13 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 23 13:58:13 2011 -0800"
      },
      "message": "Merge \"Add support for handling a bitcode wrapper to librs.\""
    },
    {
      "commit": "09ee7c80eabe0d92119ea0ffff949109602b5833",
      "tree": "0cbefe33f8df5cfac9bdc0cf766bfdcb5f78348a",
      "parents": [
        "fc6cf2888426f5192b9f284d14b911f3bbc7c2fb"
      ],
      "author": {
        "name": "Stephen Hines",
        "email": "srhines@google.com",
        "time": "Tue Nov 22 19:43:58 2011 -0800"
      },
      "committer": {
        "name": "Stephen Hines",
        "email": "srhines@google.com",
        "time": "Tue Nov 22 20:10:45 2011 -0800"
      },
      "message": "Add support for handling a bitcode wrapper to librs.\n\nBUG\u003d5425905\n\nChange-Id: I75676060703df6d9043b287fea900c4379455ee2\n"
    },
    {
      "commit": "9d61edcc0fd960f227aa0c4b8e20b05dea2aca19",
      "tree": "61daffde4cf87f4a1af612ccd93e291731215c99",
      "parents": [
        "b1e72b6826455a19a80dab14612da7f22e0e1a75"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Nov 14 18:29:15 2011 -0800"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Nov 22 17:12:22 2011 -0800"
      },
      "message": "Add a basic hashtable data structure, with tests!\n\nThe basic hashtable is intended to be used to support a variety\nof different datastructures such as map, set, multimap,\nmultiset, linkedmap, generationcache, etc.\n\nConsequently its interface is fairly primitive.\n\nThe basic hashtable supports copy-on-write style functionality\nusing SharedBuffer.\n\nThe change introduces a simple generic function in TypeHelpers for\nspecifying hash functions.  The idea is to add template\nspecializations of hash_type\u003cT\u003e next to the relevant data structures\nsuch as String8, String16, sp\u003cT\u003e, etc.\n\nChange-Id: I2c479229e9d4527b4fbfe3b8b04776a2fd32c973\n"
    },
    {
      "commit": "b1e72b6826455a19a80dab14612da7f22e0e1a75",
      "tree": "f824b11cf5eb377ccfb6e084169817e41e41a213",
      "parents": [
        "7e254a37d0beb1fe307ca45617fbe7cc394d275f",
        "77228be41788c1fc582e195d9b17f5eeb58ef6e9"
      ],
      "author": {
        "name": "Robert Ly",
        "email": "robertly@google.com",
        "time": "Tue Nov 22 16:21:45 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 22 16:21:45 2011 -0800"
      },
      "message": "Merge \"add overview description for RS API reference\""
    },
    {
      "commit": "dd39fdfe99a08b0bbb03eba8f32cad4018271def",
      "tree": "01ae28f76d5edc975ad53b881de6fd73d392af5b",
      "parents": [
        "ec99c62e8b7c223c86a89008219be6c78f14eab8"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Tue Nov 22 12:49:11 2011 -0800"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Tue Nov 22 13:17:18 2011 -0800"
      },
      "message": "Fix script init error handling.\n\nChange-Id: I7ceb0af4dfd12db0274985ff658f678d7af829ff\n"
    },
    {
      "commit": "ec99c62e8b7c223c86a89008219be6c78f14eab8",
      "tree": "417f6b4c61bf5da7127b01b3a5f3071ec0eb7936",
      "parents": [
        "c28e574037b2bfc8c2ea24593299aa20ae9078f8",
        "38a931fcd3e3d5f16082fe41317f427f25b8d279"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Nov 22 12:57:08 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 22 12:57:08 2011 -0800"
      },
      "message": "Merge \"Use libcorkscrew to format the stack trace.\""
    },
    {
      "commit": "c28e574037b2bfc8c2ea24593299aa20ae9078f8",
      "tree": "38a75bdcc25887e4c9f2c640227fce4d2635079a",
      "parents": [
        "0ce49783083bf81cc1ea812e029fc94e1625a8fd",
        "a2fabf4a109d46f99ff7370aa05e48c1708c2838"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Tue Nov 22 12:42:06 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Nov 22 12:42:06 2011 -0800"
      },
      "message": "am a2fabf4a: am 303a0695: Merge \"Draw in the correct FBO after invoking a GL functor Bug #5650514\" into ics-mr1\n\n* commit \u0027a2fabf4a109d46f99ff7370aa05e48c1708c2838\u0027:\n  Draw in the correct FBO after invoking a GL functor Bug #5650514\n"
    },
    {
      "commit": "303a0695b8fa0b8f0095c437145a28633a7a8d92",
      "tree": "dd160fcabedd56f0be6c73850eec81672ef82cf9",
      "parents": [
        "26dd54f87c1daaa369576d9abea823c8105bd702",
        "421458aad764cd9d1403d2540ab979b336b02341"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Tue Nov 22 12:33:17 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 22 12:33:17 2011 -0800"
      },
      "message": "Merge \"Draw in the correct FBO after invoking a GL functor Bug #5650514\" into ics-mr1"
    },
    {
      "commit": "77228be41788c1fc582e195d9b17f5eeb58ef6e9",
      "tree": "59ea57ef25136ec0691fed9673130df3e04dfcaa",
      "parents": [
        "75f9808e5544c69254ea6cf374469a3dd9042b7d"
      ],
      "author": {
        "name": "Robert Ly",
        "email": "robertly@google.com",
        "time": "Tue Nov 22 09:41:28 2011 -0800"
      },
      "committer": {
        "name": "Robert Ly",
        "email": "robertly@google.com",
        "time": "Tue Nov 22 09:45:16 2011 -0800"
      },
      "message": "add overview description for RS API reference\n\nChange-Id: Id5554c607ad4c435f92bfa939e4ce4833a638f62\n"
    },
    {
      "commit": "4c6d112c169412d69702b65e54a3a788a55fd7d8",
      "tree": "67df5ae877fb8783a859b031b4e1dc70ff43e71d",
      "parents": [
        "29c18ca579f95716719d7664e037580725f3a519",
        "cc4d02e0cbb99341a0508838c88eeef53180fdfd"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Nov 21 21:08:47 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Nov 21 21:08:47 2011 -0800"
      },
      "message": "am cc4d02e0: am 07a2d831: Merge \"don\\\u0027t report an error when disconnecting from an abandoned surfacetexture\" into ics-mr1\n\n* commit \u0027cc4d02e0cbb99341a0508838c88eeef53180fdfd\u0027:\n  don\u0027t report an error when disconnecting from an abandoned surfacetexture\n"
    },
    {
      "commit": "29c18ca579f95716719d7664e037580725f3a519",
      "tree": "2ca077135cd3e4ff4f7dd4632a65b5fb3f36f694",
      "parents": [
        "3526b00a53a2582a51ff8b98ac1400a48f351107",
        "8390cf39f8a4f74f7baa91d23cba06894a3fb9b5"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Nov 21 21:08:44 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Nov 21 21:08:44 2011 -0800"
      },
      "message": "am 8390cf39: am 8646cd42: Merge \"enable ALLOW_DEQUEUE_CURRENT_BUFFER for tegra devices\" into ics-mr1\n\n* commit \u00278390cf39f8a4f74f7baa91d23cba06894a3fb9b5\u0027:\n  enable ALLOW_DEQUEUE_CURRENT_BUFFER for tegra devices\n"
    },
    {
      "commit": "07f062b6271e7ec820d1079566e7451a9cf55558",
      "tree": "57d9f1caf0e0ab9ed8d13a00f1391bdb7823edf7",
      "parents": [
        "53d42cb7d3c5c35b63363abbe9c44b8f6961afd4",
        "c25972950c2ea62fb085524dbe737c2bf0f08f4a"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Mon Nov 21 21:08:21 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Nov 21 21:08:21 2011 -0800"
      },
      "message": "am c2597295: am 53cf2020: Merge changes I37fd43b5,I91eb29db,I0491ce35 into ics-mr1\n\n* commit \u0027c25972950c2ea62fb085524dbe737c2bf0f08f4a\u0027:\n  SurfaceTexture: fix a couple tests\n  EGL: default to swap interval 1\n  SurfaceTexture: clean up some tests\n"
    },
    {
      "commit": "38a931fcd3e3d5f16082fe41317f427f25b8d279",
      "tree": "3114e43fdb8e001827bde69c701f8d83fb3823e6",
      "parents": [
        "fc6cf2888426f5192b9f284d14b911f3bbc7c2fb"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Nov 21 21:04:55 2011 -0800"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Nov 21 21:04:55 2011 -0800"
      },
      "message": "Use libcorkscrew to format the stack trace.\n\nChange-Id: I3a5439ada76bc77c2dd491eaed2272e16a811cc7\n"
    },
    {
      "commit": "07a2d831903774e07c1c6b6dd5c7c06bf8ca176a",
      "tree": "7b120ba029a7efaea3780ddad4149992dc303496",
      "parents": [
        "8646cd42df5edc5f5b9c52d6ab5309821e875656",
        "b05bb17eebe631637cf9fa3af00758e8159d6e8d"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Nov 21 17:57:31 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 21 17:57:31 2011 -0800"
      },
      "message": "Merge \"don\u0027t report an error when disconnecting from an abandoned surfacetexture\" into ics-mr1"
    },
    {
      "commit": "8646cd42df5edc5f5b9c52d6ab5309821e875656",
      "tree": "6434c3dc4ea983b856a0755cacd9d402e2a2d65e",
      "parents": [
        "8cd39e3a104d0739fd2f1ae73e5f4081f1528c6c",
        "e2fa30cba0c3412d07214dec346bb21a562d3461"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Nov 21 17:57:20 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 21 17:57:20 2011 -0800"
      },
      "message": "Merge \"enable ALLOW_DEQUEUE_CURRENT_BUFFER for tegra devices\" into ics-mr1"
    },
    {
      "commit": "421458aad764cd9d1403d2540ab979b336b02341",
      "tree": "403620dc73a58422834e39e2ba04059ea1ed1274",
      "parents": [
        "7859c1842c1f2e3c43415dfb5337a0b005bdb1c4"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Mon Nov 21 15:14:37 2011 -0800"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Mon Nov 21 15:14:37 2011 -0800"
      },
      "message": "Draw in the correct FBO after invoking a GL functor\nBug #5650514\n\nAfter invoking a GL functor, libhwui restores a few OpenGL states\nincluding the current FBO. The renderer was however making the\nwrong assumption that the FBO to restore to was the base layer\ninstead of the FBO associated with the current canvas state.\n\nChange-Id: Ie565500832ebffd673f6a43b83422d6cc05470a0\n"
    },
    {
      "commit": "caa4482a6880d81281dc2d312aeb515a3af3f0a1",
      "tree": "d06843b2be4ca07a01d8477f975582b0c5b975aa",
      "parents": [
        "87f3265bb082160efdfdfb87a79698c67ebad447"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Sat Nov 19 21:20:17 2011 -0800"
      },
      "committer": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Mon Nov 21 14:38:15 2011 -0800"
      },
      "message": "SurfaceTexture: fix a couple tests\n\nThis change fixes some robustness issues with the\nEglDestroySurfaceUnrefsBuffers and\nEglDestroySurfaceAfterAbandonUnrefsBuffers tests.  The tests previously\ndepended upon GL implementation details that should not have been relied\nupon.\n\nChange-Id: I37fd43b56568efe1dbe69d85e892be8a1cf44d20\n"
    },
    {
      "commit": "87f3265bb082160efdfdfb87a79698c67ebad447",
      "tree": "a9eb05cf1cb1a6d59d1dafe806c843aee10daa76",
      "parents": [
        "c10a94c4b8b42ef75168ad140fdb97d6cca3d2eb"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Sat Nov 19 18:04:43 2011 -0800"
      },
      "committer": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Mon Nov 21 14:37:29 2011 -0800"
      },
      "message": "EGL: default to swap interval 1\n\nThis change explicitly sets swap interval 1 on the window when an\nEGLSurface is created to render to it.\n\nChange-Id: I91eb29dbee3ae4a55076b921f084d503fbe94e03\n"
    },
    {
      "commit": "c10a94c4b8b42ef75168ad140fdb97d6cca3d2eb",
      "tree": "22db4c026ec52081a3b13ae1df01a00e19aa51c4",
      "parents": [
        "0e2c2f3971eb4b246a5c1b198370e003668f53ee"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Sat Nov 19 17:49:21 2011 -0800"
      },
      "committer": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Mon Nov 21 11:52:02 2011 -0800"
      },
      "message": "SurfaceTexture: clean up some tests\n\nThis change cleans a few things up in the SurfaceTexture tests:\n- Wraps a few long lines.\n- Refactors the multithreading portions of SurfaceTextureGLToGLTest into\n  a new test fixture called SurfaceTextureGLThreadToGLTest.\n- Changes some of the tests that were creating their own EGLSurface to\n  use the SurfaceTextureGLToGLTest fixture.\n- Reorders the test functions so that they are immediately below to the\n  test fixture that they use.\n\nChange-Id: I0491ce3528a7ff2b4f1e83602ba290269c087297\n"
    },
    {
      "commit": "36bd710a6094282c8f9a6083c3b09911bf8a5ac7",
      "tree": "d9f63cb4b22b64f342445b4f131ff3894a31446e",
      "parents": [
        "3f6114164f87567d069fe37962b3d1952f5905e5",
        "d0df44b5c979e00a19187cea35768ba26557e447"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Nov 18 15:22:59 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Nov 18 15:22:59 2011 -0800"
      },
      "message": "am d0df44b5: am 4d71053b: Merge \"attempt to fix bug 5313580\" into ics-mr1\n\n* commit \u0027d0df44b5c979e00a19187cea35768ba26557e447\u0027:\n  attempt to fix bug 5313580\n"
    },
    {
      "commit": "b05bb17eebe631637cf9fa3af00758e8159d6e8d",
      "tree": "86c9b59ecf5d806e34f2e7a39aaf37c3b1b80fbe",
      "parents": [
        "4d71053b0728b248d80d7d5a098df459722e2be0"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Nov 18 14:30:20 2011 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Nov 18 14:32:35 2011 -0800"
      },
      "message": "don\u0027t report an error when disconnecting from an abandoned surfacetexture\n\nthis happens often with CPU Surfaces, which disconnect long\nafter their surfacetexture has been abandoned.\n\nChange-Id: If49da03b72f99130e01b2b9bcbd444bb38f7ed4e\n"
    },
    {
      "commit": "e2fa30cba0c3412d07214dec346bb21a562d3461",
      "tree": "bcbbb1b9c50b53d8b4648388b64bada837479a48",
      "parents": [
        "4d71053b0728b248d80d7d5a098df459722e2be0"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Nov 14 19:17:37 2011 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Nov 18 13:50:35 2011 -0800"
      },
      "message": "enable ALLOW_DEQUEUE_CURRENT_BUFFER for tegra devices\n\nthis flag should be enabled for all targets, but currently\nsome have issues with it, so we\u0027re turning it on only for\ntested targets.\n\nthis will hopefully resolve some performance issues.\n\nBug: 5553562, 5631630\nChange-Id: I54c7a9e2068586898ab13e405d95534669260537\n"
    },
    {
      "commit": "4d71053b0728b248d80d7d5a098df459722e2be0",
      "tree": "d35280fd9ed5c113422c928b469c2c788d427615",
      "parents": [
        "e6a96560ed96e5121db2e22168698f14338c8f1d",
        "90cbbd1f7f510e7c173f706919492a95e91a87e7"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Nov 18 12:11:15 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Nov 18 12:11:15 2011 -0800"
      },
      "message": "Merge \"attempt to fix bug 5313580\" into ics-mr1"
    },
    {
      "commit": "892a9d674db33586719f98df5c9a0a44769ebd54",
      "tree": "566190171598bae8ef9cc76ccc6d3051d1e13c3b",
      "parents": [
        "99f0528b5eed9de4b9c59e806df32a58954c65a9",
        "9da22d2cc31069d86a92021d8540bb5a77c9591b"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Fri Nov 18 02:37:41 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Nov 18 02:37:41 2011 -0800"
      },
      "message": "am 9da22d2c: am 2ba13186: Merge \"SurfaceTexture: fix a bug with buffer reallocation\" into ics-mr1\n\n* commit \u00279da22d2cc31069d86a92021d8540bb5a77c9591b\u0027:\n  SurfaceTexture: fix a bug with buffer reallocation\n"
    },
    {
      "commit": "90cbbd1f7f510e7c173f706919492a95e91a87e7",
      "tree": "228bd0b3b540cdbdb52cea0a6c0fdd9bf33563b2",
      "parents": [
        "302afb93d4fd908949ac796eda8343f9683e616a"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu Nov 17 18:46:09 2011 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu Nov 17 18:46:09 2011 -0800"
      },
      "message": "attempt to fix bug 5313580\n\nthe working theory here is that a Surface object has become non-promotable\nbecause it lost its last reference; later Surface::readFromParcel is called\nthe previous surface is found in the cache, but can\u0027t be promoted. this causes\na new Surface object to be created which will promptly try to connect to the\nCPU_API -- this in turn will fail because the previous (now dead) surface is\nstill connected.\n\nTo fix this, we make sure to disconnect from the SurfaceTexture when\nSurface[TextureClient] is destroyed.\n\nChange-Id: I422234868a05d7b7d283e9d5a85f7ab79e65d8a9\n"
    },
    {
      "commit": "2ba13186b268de3527af6da1933a4b65877548d9",
      "tree": "ea6586b746df5e52e63581f799b1b3055fd28496",
      "parents": [
        "c8fd6e3057a98a992b96c2bce3fa2a981c6e45c0",
        "e36d05483fa525be1c98dbf98ac3d6244e6cdb47"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Thu Nov 17 17:10:47 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 17 17:10:47 2011 -0800"
      },
      "message": "Merge \"SurfaceTexture: fix a bug with buffer reallocation\" into ics-mr1"
    },
    {
      "commit": "e36d05483fa525be1c98dbf98ac3d6244e6cdb47",
      "tree": "a3b6f7e0bd68fdcee4a93c24f864ff33e60359d0",
      "parents": [
        "cce32110e6f42378a76e0eb2495d24b6c8bc8ae7"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Thu Nov 17 16:00:44 2011 -0800"
      },
      "committer": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Thu Nov 17 16:00:44 2011 -0800"
      },
      "message": "SurfaceTexture: fix a bug with buffer reallocation\n\nThis change fixes an issue involving buffer reallocation and the\nALLOW_DEQUEUE_CURRENT_BUFFER mode in SurfaceTexture.  The bug happened\nwhen the buffer slot currently attached to the GL texture was selected\nfor dequeuing, but the dequeue operation caused the buffer to be\nreallocated.  Because the buffer is new, the image producer could fill\nthe buffer and queue it before an updateTexImage call, which would\nresult in the \"slot %d is current\" error in queueBuffer.\n\nBug: 5631630\nChange-Id: Icdd8bc5cad3c7db43953446d9be2603aaea11a8d\n"
    },
    {
      "commit": "5044556861af496d6451aef3f69a4df0d1b591c9",
      "tree": "e083a6288023969c64e6d22c8cec5887bdd5fff0",
      "parents": [
        "1bce803f663d50a3a60fab63f565f91bce5c35e5",
        "2d8ef49914595f3f1df42fed0a9ae68777ff9411"
      ],
      "author": {
        "name": "Alex Sakhartchouk",
        "email": "alexst@google.com",
        "time": "Thu Nov 17 09:13:24 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 17 09:13:24 2011 -0800"
      },
      "message": "Merge \"Fixing FBO font rendering bug that resulted from using old surface size.\""
    },
    {
      "commit": "905a12a949e779b50ad7ab0d69047b6e047ad7b8",
      "tree": "9bccdcf6f7e241391efbbc9ae895cae2a861a7e8",
      "parents": [
        "5a1623b379662e95580736510e1640148c228123",
        "abdade71bc17153696fe2abe281c5a3b0c2e5abe"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu Nov 17 07:48:10 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Nov 17 07:48:10 2011 -0800"
      },
      "message": "am abdade71: am 69c17a11: Merge \"Revert \"enable ALLOW_DEQUEUE_CURRENT_BUFFER for tegra devices\"\" into ics-mr1\n\n* commit \u0027abdade71bc17153696fe2abe281c5a3b0c2e5abe\u0027:\n  Revert \"enable ALLOW_DEQUEUE_CURRENT_BUFFER for tegra devices\"\n"
    },
    {
      "commit": "04dd4deafdbde8e4a9d12745e3d4a886ef8769f4",
      "tree": "138bed74f6d156ffe0ac11fdaccec295a19d2312",
      "parents": [
        "6c932dab1cef4fc711c4fdab938bced67b15d5df",
        "7765fc651a9519dd2f0ac9d3374a50e9865c5c99"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Thu Nov 17 05:46:00 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Nov 17 05:46:00 2011 -0800"
      },
      "message": "am 7765fc65: am fd6b64f6: Merge \"SurfaceTexture: Fix to return the oldest of free buffers to Client on Dequeue call\" into ics-mr1\n\n* commit \u00277765fc651a9519dd2f0ac9d3374a50e9865c5c99\u0027:\n  SurfaceTexture: Fix to return the oldest of free buffers to Client on Dequeue call\n"
    },
    {
      "commit": "69c17a11a2ce5badc238e66ce9f8ca4a3a1028b3",
      "tree": "282fabe34a685c61ba5e79776fec818ac486aa2a",
      "parents": [
        "e937da83143d67fbd709d37bd7418f9807e72baa",
        "db5494c4067c8f5cc4aa4fc2ceeca0cf673349ac"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Nov 16 16:13:38 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 16 16:13:38 2011 -0800"
      },
      "message": "Merge \"Revert \"enable ALLOW_DEQUEUE_CURRENT_BUFFER for tegra devices\"\" into ics-mr1"
    },
    {
      "commit": "db5494c4067c8f5cc4aa4fc2ceeca0cf673349ac",
      "tree": "1beca287b274c532204dbdc552e83006462ebb5e",
      "parents": [
        "bd7836846c1e5d3610ba6c26686674d429a4316c"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Nov 16 15:59:13 2011 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Nov 16 15:59:13 2011 -0800"
      },
      "message": "Revert \"enable ALLOW_DEQUEUE_CURRENT_BUFFER for tegra devices\"\n\nThis reverts commit e7758be6da85728df6b4215f413660c67c5a9740.\n\nSeemed to cause failures un SurfaceTexture.\n\nBug: 5627450\n"
    },
    {
      "commit": "2d8ef49914595f3f1df42fed0a9ae68777ff9411",
      "tree": "a7bd41b3a01cb9a824056fc04972ddb72e88ee31",
      "parents": [
        "7b95eba9f47a3992128d59a9ec593b887e4dac0e"
      ],
      "author": {
        "name": "Alex Sakhartchouk",
        "email": "alexst@google.com",
        "time": "Wed Nov 16 12:22:10 2011 -0800"
      },
      "committer": {
        "name": "Alex Sakhartchouk",
        "email": "alexst@google.com",
        "time": "Wed Nov 16 12:22:10 2011 -0800"
      },
      "message": "Fixing FBO font rendering bug that resulted from using old surface size.\n\nChange-Id: I31d0967bb36ca6ffb6a4c8194597d3c523cfe954\n"
    },
    {
      "commit": "fd6b64f6ad040b4d550a5219a2576997e2c0e85d",
      "tree": "6d1557564d97571409783c88b3b88a34152c418c",
      "parents": [
        "7dc81e06e4d0554683595e8d2e318837548e249a",
        "f1e868f68204bf469a0c162b84af0e651d513ac8"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Wed Nov 16 11:34:30 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 16 11:34:30 2011 -0800"
      },
      "message": "Merge \"SurfaceTexture: Fix to return the oldest of free buffers to Client on Dequeue call\" into ics-mr1"
    },
    {
      "commit": "5a4718183340a108b55eba7bf755b4432153caa1",
      "tree": "9f0491db27e6d2303494f0c1813bcab1316939a0",
      "parents": [
        "5cf2a1399e8cd047e84e159e25c74c259882f52c",
        "e60149d2277da53c4a681b7f3971cf13cd4b012b"
      ],
      "author": {
        "name": "Alex Sakhartchouk",
        "email": "alexst@google.com",
        "time": "Wed Nov 16 10:36:02 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 16 10:36:02 2011 -0800"
      },
      "message": "Merge \"Expand RS vector3 types to vector4.\""
    },
    {
      "commit": "221096fdd6963a0f7090b928cfb92b9267f32d7a",
      "tree": "300e2781bf3720d2b7e57611d6691c9fe9ea521a",
      "parents": [
        "8e56e1f3459703a9b9f5a13676428eeda68bb73f",
        "4c0e0dd29dcce33e7521b11d01d21d9431f3b264"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Nov 15 19:43:35 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Nov 15 19:43:35 2011 -0800"
      },
      "message": "am 4c0e0dd2: am 3e7497b4: Merge \"Eliminate hw.keyboards system properties.\" into ics-mr1\n\n* commit \u00274c0e0dd29dcce33e7521b11d01d21d9431f3b264\u0027:\n  Eliminate hw.keyboards system properties.\n"
    },
    {
      "commit": "3e7497b4eccd3db1d6ff0ce1f1f2db11f9a8eeef",
      "tree": "14b19d7f750f12c4168bb582c1cd99e93afd454a",
      "parents": [
        "cdec187a27b2acc34cd4df26b836b83362527d6a",
        "1e08fe90df18930691b0c2ec22e5db25d7fcb4cf"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Nov 15 19:17:09 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 15 19:17:09 2011 -0800"
      },
      "message": "Merge \"Eliminate hw.keyboards system properties.\" into ics-mr1"
    },
    {
      "commit": "1e08fe90df18930691b0c2ec22e5db25d7fcb4cf",
      "tree": "772ffaafe6917d37ee65f5ed3d653230557bdc80",
      "parents": [
        "9058435dc1a741030c042c4d6f2512f5d1605e5d"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Nov 15 17:48:10 2011 -0800"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Nov 15 18:00:10 2011 -0800"
      },
      "message": "Eliminate hw.keyboards system properties.\n\nStop using system properties to publish information about\nthe key character map path.  Instead, we can retrieve it\non demand by asking the window manager.\n\nIt was possible to exhaust the supply of system properties\nwhen repeatedly adding and removing input devices.\n\nBug: 5532806\nChange-Id: Idd361a24ad7db2edc185c8546db7fb05f9c28669\n"
    },
    {
      "commit": "e60149d2277da53c4a681b7f3971cf13cd4b012b",
      "tree": "1bb4f453808bf3ebd87d6f724c7b1b73d5d54934",
      "parents": [
        "7b95eba9f47a3992128d59a9ec593b887e4dac0e"
      ],
      "author": {
        "name": "Alex Sakhartchouk",
        "email": "alexst@google.com",
        "time": "Tue Nov 15 15:15:21 2011 -0800"
      },
      "committer": {
        "name": "Alex Sakhartchouk",
        "email": "alexst@google.com",
        "time": "Tue Nov 15 15:15:21 2011 -0800"
      },
      "message": "Expand RS vector3 types to vector4.\n\nBUG\u003d5609007\n\nThe underlying LLVM implementation for vector3 types does this implicitly. If\nRS does not adjust its implementation, we will always be misaligned for any\nsubsequent data after a vector3 type. We previously inserted padding into the\nreflected layers from llvm-rs-cc (hence the skip padding part of this change).\nWe can safely ignore the padding now that the Java/native code is updated to\nuse the expanded size. The compiler will also need modification to ensure that\nwe don\u0027t mistakenly skip over any end-of-struct padding.\n\nFixing the 3 component vector padding problem.\n\nChange-Id: If68af42287deb8f4b28addcd19a9fa314656be44\n"
    },
    {
      "commit": "1fea891f0099a554c9402675bf4ce8f9ef2cac13",
      "tree": "73b3f5ee48e7a2833315a397528352df8fffa190",
      "parents": [
        "d6ae2ceedf3a44840d3e872ca69380bf92fe430e",
        "556a406cf4dd8a7faa318e0d522d899f8b9da7dc"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Nov 15 13:11:19 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Nov 15 13:11:19 2011 -0800"
      },
      "message": "am 556a406c: am 3aa684ec: Merge \"enable ALLOW_DEQUEUE_CURRENT_BUFFER for tegra devices\" into ics-mr1\n\n* commit \u0027556a406cf4dd8a7faa318e0d522d899f8b9da7dc\u0027:\n  enable ALLOW_DEQUEUE_CURRENT_BUFFER for tegra devices\n"
    },
    {
      "commit": "f1e868f68204bf469a0c162b84af0e651d513ac8",
      "tree": "23a997a5d68fb46652460aa233ec3dd0133652f3",
      "parents": [
        "6a54a997e3dc71c5b9c5a1c7829bc3eb35404e92"
      ],
      "author": {
        "name": "Sunita Nadampalli",
        "email": "sunitan@ti.com",
        "time": "Wed Nov 09 18:23:41 2011 -0600"
      },
      "committer": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Tue Nov 15 11:43:35 2011 -0800"
      },
      "message": "SurfaceTexture: Fix to return the oldest of free buffers to Client on Dequeue call\n\nSurface Texture dequeue logic is modified to return the oldest of the\nfree buffers to Client on dequeue call.\n\nCurrently dequeue method is returning the first buffer index which is free.\nThe parsing is done in ascending order of the buffer slot indices.\nThis leads to returning the buffer which has been just queued to composer,\nand hence display, and this defeats the purpose of having minimum dequeue count\nas 2 in asynchrnouse mode.\n\nThis is fixed by checking all the free slots and returning the oldest buffer.\n\nChange-Id: Ibbac10593c3994c278c601af0480b171635ecdd4\nSigned-off-by: Sunita Nadampalli \u003csunitan@ti.com\u003e\n"
    },
    {
      "commit": "e7758be6da85728df6b4215f413660c67c5a9740",
      "tree": "8d5f7f80261e2424e107acd40e2c6f481dd6bd1c",
      "parents": [
        "6b228af6ff20b3f592db4ad5662e1bc401d09b4d"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Nov 14 19:17:37 2011 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Nov 14 19:17:37 2011 -0800"
      },
      "message": "enable ALLOW_DEQUEUE_CURRENT_BUFFER for tegra devices\n\nthis flag should be enabled for all targets, but currently\nsome have issues with it, so we\u0027re turning it on only for\ntested targets.\n\nthis will hopefully resolve some performance issues.\n\nBug: 5553562\nChange-Id: I939992b4cd0debea980dec0127c72be2dff33af8\n"
    },
    {
      "commit": "bf677de46a039e07038511909576bfbf4406f7fd",
      "tree": "cb2243d4b75f084b01a65c6e9cf6c497683b2775",
      "parents": [
        "a4e3fe22762116b1bb6f40b354febf7bd2eec44d",
        "d9e688cab3015d858110fb8240cf7378c6befd82"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Nov 14 18:28:59 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 14 18:28:59 2011 -0800"
      },
      "message": "Merge \"Clean up GenerationCache.\""
    },
    {
      "commit": "28a5ec9613a824d2ec15ce5e5cec77a6fcf444d5",
      "tree": "07bea7361a1fefe863809e83e585f4d0b194ec7d",
      "parents": [
        "196c215a8b89499a353cf023488a04888431a6b0",
        "2cfb873c9f0b56f2c7d694a21c968511223933af"
      ],
      "author": {
        "name": "Dave Burke",
        "email": "daveburke@google.com",
        "time": "Mon Nov 14 12:30:04 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Nov 14 12:30:04 2011 -0800"
      },
      "message": "am 2cfb873c: am 9d66da8a: Merge \"Revert \"Discard framebuffer rendering queues when discarding layers\"\" into ics-mr1\n\n* commit \u00272cfb873c9f0b56f2c7d694a21c968511223933af\u0027:\n  Revert \"Discard framebuffer rendering queues when discarding layers\"\n"
    },
    {
      "commit": "9d66da8ae61a8520f46ee7df3cbb374852d9da91",
      "tree": "ea78efc4e2f5b66cb79f24586f8d0e993ee4ba1b",
      "parents": [
        "72a31ab98f8687aa48fce028d54e79929780a302",
        "7077506f9945b87b02bdd47ffce75a5b813c821c"
      ],
      "author": {
        "name": "Dave Burke",
        "email": "daveburke@google.com",
        "time": "Mon Nov 14 12:25:53 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 14 12:25:53 2011 -0800"
      },
      "message": "Merge \"Revert \"Discard framebuffer rendering queues when discarding layers\"\" into ics-mr1"
    },
    {
      "commit": "d8fa1ad4523b6c04cab663ff4b65181fc00594d9",
      "tree": "7ed37b59efdc59ea95e8966d0a528fdec69689ce",
      "parents": [
        "527c44e8a455dd0fdef1aeb6d7d8f99bb0839295",
        "738d8cae2239d194429676f2889cfae3c8f7ba08"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Nov 14 11:54:38 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Nov 14 11:54:38 2011 -0800"
      },
      "message": "am 738d8cae: am c93a151f: Merge \"Define, document, and test the behavior of very large SurfaceTextures\" into ics-mr1\n\n* commit \u0027738d8cae2239d194429676f2889cfae3c8f7ba08\u0027:\n  Define, document, and test the behavior of very large SurfaceTextures\n"
    },
    {
      "commit": "c93a151fde7d616c22b86ae458b3d015e3820d5e",
      "tree": "1637c0bf5c8e8b4457393532214238209e810620",
      "parents": [
        "cde433c5f75fd4ac2ab31e9fc34654750d1e83f8",
        "b89d88f531ee39927f8f554baaae5ecc9101ba9d"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Nov 14 11:49:42 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 14 11:49:42 2011 -0800"
      },
      "message": "Merge \"Define, document, and test the behavior of very large SurfaceTextures\" into ics-mr1"
    },
    {
      "commit": "7077506f9945b87b02bdd47ffce75a5b813c821c",
      "tree": "303448affa31375afa0a721d8d5555801ead8454",
      "parents": [
        "cde433c5f75fd4ac2ab31e9fc34654750d1e83f8"
      ],
      "author": {
        "name": "Dave Burke",
        "email": "daveburke@google.com",
        "time": "Mon Nov 14 11:39:30 2011 -0800"
      },
      "committer": {
        "name": "Dave Burke",
        "email": "daveburke@google.com",
        "time": "Mon Nov 14 11:39:30 2011 -0800"
      },
      "message": "Revert \"Discard framebuffer rendering queues when discarding layers\"\n\nThis reverts commit da96f8ac2c1c35a54f3f36e6d776cb386a251d03.\n"
    },
    {
      "commit": "3f511aaf1cb9dfa69e2f4225a5bd41bec0864cc7",
      "tree": "70f0bfe3328a8d573208abbf3a12e5a883c48f7a",
      "parents": [
        "e7a8aae0a60cdb251fb83eba2ccb35c5f00a0cdf",
        "a16ee9390e1fcea8ff7cbefd253659c37f2999a3"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Nov 14 07:49:07 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Nov 14 07:49:07 2011 -0800"
      },
      "message": "am a16ee939: am 28587497: Merge \"Discard framebuffer rendering queues when discarding layers Bug #5581817\" into ics-mr1\n\n* commit \u0027a16ee9390e1fcea8ff7cbefd253659c37f2999a3\u0027:\n  Discard framebuffer rendering queues when discarding layers Bug #5581817\n"
    },
    {
      "commit": "d9e688cab3015d858110fb8240cf7378c6befd82",
      "tree": "806f5e09090a6cf467666009a165e5f63155ae2f",
      "parents": [
        "e3571f633a825738d785b587e91798a3d0876740"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Nov 11 15:40:13 2011 -0800"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Nov 11 22:14:07 2011 -0800"
      },
      "message": "Clean up GenerationCache.\n\nUse const references to keys and values where appropriate to avoid\ncopying them unnecessarily.\n\nDeleted some dead code.\n\nSimplified a few pieces that were doing unnecessary redundant work.\n\nChange-Id: Ib2145b7094a40db2d679e05dafe050fe1e87b846\n"
    },
    {
      "commit": "b89d88f531ee39927f8f554baaae5ecc9101ba9d",
      "tree": "c00601c0b328a2670e449a3afb296bd7ea30eadd",
      "parents": [
        "c51bb4d394dd47e48abc8a6d9cbc740f821546ff"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu Nov 10 14:34:26 2011 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Nov 11 18:44:35 2011 -0800"
      },
      "message": "Define, document, and test the behavior of very large SurfaceTextures\n\nupdateTexImage() now throws a runtime exception when its native\ncounterpart fails\n\nBug: 5506633\n\nChange-Id: I151a6f685d465966e7df4df624412ab2da62e95f\n"
    },
    {
      "commit": "1333742bedc9b462024302f302e3a7f27053df66",
      "tree": "f7cf76c82246c9fad4481ad232f17dfa81f57d45",
      "parents": [
        "0ed4c7f8cc8462d434c3a0103790b38fdbb8f392",
        "cb0db0306b5849a35d3d99eea1b34ce019c6f0d8"
      ],
      "author": {
        "name": "Akwasi Boateng",
        "email": "akwasi.boateng@ti.com",
        "time": "Fri Nov 11 15:34:19 2011 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Nov 11 15:34:19 2011 +0000"
      },
      "message": "am cb0db030: Merge branch \\\u0027ics-mr1-plus-aosp\\\u0027 of ssh://android-git:29418/platform/frameworks/base into ics-mr1-plus-aosp\n\n* commit \u0027cb0db0306b5849a35d3d99eea1b34ce019c6f0d8\u0027:\n  Make the overridden ImageView#setVisibility remotable\n  Clamp non-monotonic stats instead of dropping.\n  DO NOT MERGE. Fix leak in LayoutTransition\n  Fix lastVisible/global rects\n  Fix Wimax-less build.\n  Fix leak in LayoutTransition\n  Deferring wallpaper update to improve workspace scrolling (issue 5506959)\n  Terminate EGL when an app goes in the background\n  boot animation is dithered and scaled\n  Fix NdefRecord byte-stream constructor.\n  PopupWindow dismiss() can get into a recursive loop.\n  Fold WiMAX state into the mobile RSSI.\n  Remove dedicated wimax icon to fix RSSI layout.\n"
    },
    {
      "commit": "da96f8ac2c1c35a54f3f36e6d776cb386a251d03",
      "tree": "646abfdfeee4346b422943924182162f4a3cdf84",
      "parents": [
        "50a66f0e9c5a85a6af4a99eb66656a69eba24572"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Thu Nov 10 19:23:58 2011 -0800"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Thu Nov 10 19:23:58 2011 -0800"
      },
      "message": "Discard framebuffer rendering queues when discarding layers\nBug #5581817\n\nChange-Id: If612846ec5f7793710fc4df152791fb32c506551\n"
    },
    {
      "commit": "8ff6b9ebeeb24a6161ec6098e6bfdf8790ee5695",
      "tree": "b6caef363611d37aa58a1b92d96b0b8e2e9f50c4",
      "parents": [
        "36a7f2a9adfa21ec31f00d496fef82e68931c860"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Wed Nov 09 20:10:18 2011 -0800"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Thu Nov 10 16:44:49 2011 -0800"
      },
      "message": "Terminate EGL when an app goes in the background\n\nThis does not happen on high end gfx devices. This happens\nonly if only one EGL context is initialized in the current\nprocess.\n\nChange-Id: Ibd1737efdf84eef8a84108b05795440d1ae9964e\n"
    },
    {
      "commit": "d2f561d183f6f2aab19cd8552d83b32cbc7fa5be",
      "tree": "2409c2237cfce6c70b5d08f5d322280a15db2606",
      "parents": [
        "46bb0a1cf687e77f7f7338cf74d5ae4897fda9b0"
      ],
      "author": {
        "name": "Stephen Hines",
        "email": "srhines@google.com",
        "time": "Wed Nov 09 18:02:20 2011 -0800"
      },
      "committer": {
        "name": "Stephen Hines",
        "email": "srhines@google.com",
        "time": "Thu Nov 10 15:44:25 2011 -0800"
      },
      "message": "Fix setTimeZone() and use it properly in RSTest/rstime.\n\nBUG\u003d5470134\n\nThe original implementation for rsi_ScriptSetTimeZone() never actually did\nanything with the bytes received. This change allows it to safely update the\ntimezone. RSTest is also updated to call setTimeZone(), so that users in\ndifferent timezones can accurately get test results.\n\nChange-Id: I6cb1b3a0c3a417749ba39e0fe09cc9c7ab65c2e7\n"
    },
    {
      "commit": "df4ee721cbb3d33879be1ca09017710abd20a9ed",
      "tree": "2f0122da5f54a9440618829e36f112922b1ec924",
      "parents": [
        "ff92dd69af5d95c00ef6ce9285c97d3e937cd704"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Nov 04 20:19:33 2011 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Nov 07 12:22:39 2011 -0800"
      },
      "message": "Fix possible leak in Parcel::writeDupFileDescriptor.\n\nAlso, check the result of dup() just in case we got EMFILE\nor something.\n\nChange-Id: I18e627bd84f4c7941813fe1c2bad2cdd9e5afa83\n"
    },
    {
      "commit": "bd79a9c9f39482b3a9560d03cb045ec4e3b87486",
      "tree": "90d3ebbe31b26daa57c670ab884bbadc46a6f062",
      "parents": [
        "2abb2abea05fddd9ec2a1d6c831f1e62c37c7fa3",
        "88061d6b38cfb4bf374039846b753a3b21ac61e1"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Nov 07 15:51:31 2011 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Nov 07 15:51:31 2011 +0000"
      },
      "message": "am 88061d6b: am 5462bc63: Fix a leak in Parcel::writeBlob.\n\n* commit \u002788061d6b38cfb4bf374039846b753a3b21ac61e1\u0027:\n  Fix a leak in Parcel::writeBlob.\n"
    },
    {
      "commit": "9039e43ab1edac9e81f1308a7f3380cff4e9fa27",
      "tree": "7982add0aed212e2c1f171a0d48ad3eb3a8e6a2e",
      "parents": [
        "08d153fb8e3c92716405d9303cc700095308a8af",
        "2ccc47b89868d4f39683e0e2bd057ce95d7d1217"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Sat Nov 05 19:33:49 2011 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sat Nov 05 19:33:49 2011 +0000"
      },
      "message": "am 2ccc47b8: Merge \"Memory optimizations for libhwui Bug #5566149\" into ics-mr1\n\n* commit \u00272ccc47b89868d4f39683e0e2bd057ce95d7d1217\u0027:\n  Memory optimizations for libhwui Bug #5566149\n"
    },
    {
      "commit": "06ab9875c19b36ed24a21310ca5dec3ada2a6b7b",
      "tree": "0619e097f204fa6c74e3d24facf5f40711283d5c",
      "parents": [
        "e2d58e95a09590a63f1c597bb808b925bcab9a69",
        "67406a46d13c8a5e6bab612ace022034c91416ea"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Nov 04 20:06:42 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Nov 04 20:06:42 2011 -0700"
      },
      "message": "Merge \"Slight change to the unwinder API.\""
    },
    {
      "commit": "88061d6b38cfb4bf374039846b753a3b21ac61e1",
      "tree": "0d4656659add969e8015e5019d85d2bf18d89940",
      "parents": [
        "2ccc47b89868d4f39683e0e2bd057ce95d7d1217",
        "5462bc6318b4b70e7a58c66994e2bd79f59d9739"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Sat Nov 05 02:35:57 2011 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sat Nov 05 02:35:57 2011 +0000"
      },
      "message": "am 5462bc63: Fix a leak in Parcel::writeBlob.\n\n* commit \u00275462bc6318b4b70e7a58c66994e2bd79f59d9739\u0027:\n  Fix a leak in Parcel::writeBlob.\n"
    },
    {
      "commit": "5462bc6318b4b70e7a58c66994e2bd79f59d9739",
      "tree": "4c5c4b7980974adb8c5fc11df32e1a523cd94306",
      "parents": [
        "348297abc0e03fb87a1d22465020b580d83fdd61"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Nov 04 19:01:44 2011 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Nov 04 19:26:03 2011 -0700"
      },
      "message": "Fix a leak in Parcel::writeBlob.\n\nWas mistakenly assuming that Parcel::writeFileDescriptor took\nownership of the fd that was passed in.  It does not!\nAdded some comments and a default parameter to allow the caller\nto specify whether it wishes the Parcel to take ownership.\n\nBug: 5563374\nChange-Id: I5a12f51d582bf246ce90133cce7690bb9bca93f6\n"
    },
    {
      "commit": "2ccc47b89868d4f39683e0e2bd057ce95d7d1217",
      "tree": "2dc571ea6a358e9a10f3e02053b2d3c0ed8ad494",
      "parents": [
        "fd900f05fb67046b97701f20626f7fd408fd8990",
        "eca0ca2424afc1e98912405906edfc32f7733e16"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Fri Nov 04 16:35:35 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Nov 04 16:35:35 2011 -0700"
      },
      "message": "Merge \"Memory optimizations for libhwui Bug #5566149\" into ics-mr1"
    },
    {
      "commit": "eca0ca2424afc1e98912405906edfc32f7733e16",
      "tree": "9f49527f35d77b0de3ee49f76e1b7bc99fac3ac6",
      "parents": [
        "650ee281ae9e007ce82ea79ff18bab9ef49503de"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Fri Nov 04 15:12:29 2011 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Fri Nov 04 16:23:47 2011 -0700"
      },
      "message": "Memory optimizations for libhwui\nBug #5566149\n\nLazily initialize font renderers\nKeep 60% of the texture cache when an app goes to the background\nDelete least used font renderer when going to the background\nDelete all font renderers on full memory trim\n\nChange-Id: I3c2454d46dc1107ec0f0f72a9ce69cbbcc8825e7\n"
    },
    {
      "commit": "67406a46d13c8a5e6bab612ace022034c91416ea",
      "tree": "b8fafa105dcfee81796182a62c91c7aa808f87b2",
      "parents": [
        "e40b7136bf2718286482d15c410e43827f4dac91"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Thu Nov 03 17:30:54 2011 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Thu Nov 03 17:30:54 2011 -0700"
      },
      "message": "Slight change to the unwinder API.\n\nChange-Id: I5424de76a21b74842e004e0281936b3f492d3c7a\n"
    },
    {
      "commit": "a0337b4082f5c3e727d7e17e233c3da4a4a24e4c",
      "tree": "98df5621466094030b2db34e73ad2dc85050c32a",
      "parents": [
        "94c10c4c8ba1c8e549324ad379a2f235897128ac",
        "c5ce130f658303299bf55091373951f7fd33ae36"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Thu Nov 03 18:57:21 2011 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Nov 03 18:57:21 2011 +0000"
      },
      "message": "am c5ce130f: Merge \"SurfaceTexture: various logging improvements\" into ics-mr1\n\n* commit \u0027c5ce130f658303299bf55091373951f7fd33ae36\u0027:\n  SurfaceTexture: various logging improvements\n"
    },
    {
      "commit": "94c10c4c8ba1c8e549324ad379a2f235897128ac",
      "tree": "867a7d5695cea739e5ca27b436c7732249864ed9",
      "parents": [
        "f55ce39224d1547cad33fed92382a1248760fd45",
        "236aea3579787961fdd41d87574760b63323c0c1"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Thu Nov 03 18:55:14 2011 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Nov 03 18:55:14 2011 +0000"
      },
      "message": "am 236aea35: Merge changes Ibc99cb1c,Ie1f4f6f8 into ics-mr1\n\n* commit \u0027236aea3579787961fdd41d87574760b63323c0c1\u0027:\n  BlobCache: implement cache serialization\n  BlobCache: remove the mutex locking\n"
    },
    {
      "commit": "c5ce130f658303299bf55091373951f7fd33ae36",
      "tree": "2041f14bdb7428adad751bfc5957c8e8d0f0198c",
      "parents": [
        "236aea3579787961fdd41d87574760b63323c0c1",
        "e4bd0f32a39898ca25bc45f93b01ea2cc4a235a4"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Thu Nov 03 11:51:38 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 03 11:51:38 2011 -0700"
      },
      "message": "Merge \"SurfaceTexture: various logging improvements\" into ics-mr1"
    },
    {
      "commit": "236aea3579787961fdd41d87574760b63323c0c1",
      "tree": "d5dfbcbe10eb5e2d7e0535973c675a795e435cc2",
      "parents": [
        "3f9ce4c22ae9b4f0f2208c29f8c93d6ad652a1dc",
        "9d9768dbd7d8fe7af55fbd570dff9cf79a4d1807"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Thu Nov 03 11:51:23 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 03 11:51:23 2011 -0700"
      },
      "message": "Merge changes Ibc99cb1c,Ie1f4f6f8 into ics-mr1\n\n* changes:\n  BlobCache: implement cache serialization\n  BlobCache: remove the mutex locking\n"
    },
    {
      "commit": "293b27e458d3c932193109578be50f478737b59b",
      "tree": "ca09196888efc5fa9bce03a17a6d781ef49f761f",
      "parents": [
        "3fb5048b02b01b6f5edc517ad5fb8aec79b67751",
        "af3a854b549409c4ad77c686e860f97ea86706a0"
      ],
      "author": {
        "name": "Stephen Hines",
        "email": "srhines@google.com",
        "time": "Wed Nov 02 17:29:30 2011 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Nov 02 17:29:30 2011 +0000"
      },
      "message": "am af3a854b: am af675222: Merge \"Fix potential segfault in RS watchdog.\" into ics-mr0\n\n* commit \u0027af3a854b549409c4ad77c686e860f97ea86706a0\u0027:\n  Fix potential segfault in RS watchdog.\n"
    },
    {
      "commit": "ef9bb3c3ea3aa08071ea0c32a505b379c322e5b5",
      "tree": "2c7e9eac12b3ac3ace044d9f1f0c8b11d59176ae",
      "parents": [
        "688ff9a7d6c42d4b26f1a72f963d09203f774c3f"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Mon Oct 17 11:06:46 2011 -0700"
      },
      "committer": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Tue Nov 01 17:16:08 2011 -0700"
      },
      "message": "Fix bug #5438102 Double Arabic harakat overlap instead of stack In TextView\n\nIMPORTANT: this change needs two patches for Harfbuzz:\n- one concerning hb_utf16_script_run_prev() which was not returning the correct \"previous\" script\n- one for the \"script_properties\" table that was missing Arabic code point ranges and declaring\nHB_Script_Inherited instead of HB_Script_Arabic\n\nThe current change is doing the following:\n- pass the correct typeface for Harbuzz shaping (depending on the script of the run)\n- offset correctly the glyphIDs returned by Harfbuzz\n\nWe need to offset the glyphsID as Harfbuzz will return local glyphIDs (meaning in the\nlocal range of the font used for shapping).\n\nWe then cannot use those glyphIDs when we are using a fallback Font (Arabic, Hebrews...)\nbecause the FontRenderer needs glyphIDs in the range of all the Fonts (including the fallbacks)\n\nChange-Id: I494897435bbc59293b02392ee2059cebcdf0e571\n"
    },
    {
      "commit": "e4bd0f32a39898ca25bc45f93b01ea2cc4a235a4",
      "tree": "042a4b1a1fb3fc11896ade1f86f5965193a4a335",
      "parents": [
        "62015f5d0d1104dfc682b3eb3b6c0be4f63b985a"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Wed Oct 19 13:36:31 2011 -0700"
      },
      "committer": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Tue Nov 01 15:48:42 2011 -0700"
      },
      "message": "SurfaceTexture: various logging improvements\n\nChange-Id: I1f7216276547a1e9f9343c88c6cc1c24efcdcdbc\n"
    },
    {
      "commit": "9d9768dbd7d8fe7af55fbd570dff9cf79a4d1807",
      "tree": "8de623b36e6c49a695fe17760f2011dd4e42bb5c",
      "parents": [
        "94c1f148bb655a3dd3c2a2167476239b41305ff0"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Thu May 12 17:39:03 2011 -0700"
      },
      "committer": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Mon Oct 31 18:49:32 2011 -0700"
      },
      "message": "BlobCache: implement cache serialization\n\nThis change adds serialization and deserialization functionality to\nBlobCache, conforming to the Flattenable interface.\n\nChange-Id: Ibc99cb1c3d015f363d57d0713eabccec07ff975e\n"
    },
    {
      "commit": "94c1f148bb655a3dd3c2a2167476239b41305ff0",
      "tree": "0a7bf345bb97a55b7cdcfa2c29d1493734027e92",
      "parents": [
        "62015f5d0d1104dfc682b3eb3b6c0be4f63b985a"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Sun Oct 30 18:10:41 2011 -0700"
      },
      "committer": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Mon Oct 31 18:48:31 2011 -0700"
      },
      "message": "BlobCache: remove the mutex locking\n\nThis change removes the mutex from the BlobCache class.  The caller must\nbe responsible for thread synchronization in order to properly implement\nthe Flattenable interface, which is coming soon.  Otherwise would be the\npotential for the cache contents to change between the call to the\ngetFlattenedSize and flatten methods.  Because the caller must do this\nsynchronization anyway there\u0027s no reason to also some synchronization\ninside BlobCache.\n\nChange-Id: Ie1f4f6f82b78744f46a41ce863cac0cad276a20e\n"
    },
    {
      "commit": "af3a854b549409c4ad77c686e860f97ea86706a0",
      "tree": "d42f4c9a28d401a87ed6291a5439d710df98850d",
      "parents": [
        "cd84197ac1226432de2e13c8fd678a4c88511e0f",
        "af675222f6340a8a9edbe9e8635014a18521e5e0"
      ],
      "author": {
        "name": "Stephen Hines",
        "email": "srhines@google.com",
        "time": "Tue Nov 01 00:16:56 2011 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Nov 01 00:16:56 2011 +0000"
      },
      "message": "am af675222: Merge \"Fix potential segfault in RS watchdog.\" into ics-mr0\n\n* commit \u0027af675222f6340a8a9edbe9e8635014a18521e5e0\u0027:\n  Fix potential segfault in RS watchdog.\n"
    },
    {
      "commit": "a049184274b88dd86a1f2e4e7d16a7553153dbb1",
      "tree": "46f5f6f23118230ba326afcd48788c67c6494084",
      "parents": [
        "aeb11b598877523fd3c530c7a086c38b4a13c7a1"
      ],
      "author": {
        "name": "Stephen Hines",
        "email": "srhines@google.com",
        "time": "Mon Oct 31 14:07:54 2011 -0700"
      },
      "committer": {
        "name": "Stephen Hines",
        "email": "srhines@google.com",
        "time": "Mon Oct 31 15:42:40 2011 -0700"
      },
      "message": "Fix potential segfault in RS watchdog.\n\nBUG\u003d5544671\n\nThis initializes the watchdog structure properly. Without this fix, it is\npossible to call LOGE with a garbage string value.\n\nChange-Id: Ie05eb65f83eca938f18ac962794407d58c3f277f\n"
    },
    {
      "commit": "5889ce79bc7cf25a7890d6f6d8212311cf3bafe2",
      "tree": "8cbae7358378fb8eae912e7add4967f8fefbd95a",
      "parents": [
        "69cde428909e09754fc44209f68da2aead9541c6",
        "66ce1fce59d2dc16f1905120e0fe3851ba1add90"
      ],
      "author": {
        "name": "Alex Sakhartchouk",
        "email": "alexst@google.com",
        "time": "Mon Oct 31 22:13:19 2011 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Oct 31 22:13:19 2011 +0000"
      },
      "message": "am 66ce1fce: Merge \"Removing changes not meant for MR1\" into ics-mr1\n\n* commit \u002766ce1fce59d2dc16f1905120e0fe3851ba1add90\u0027:\n  Removing changes not meant for MR1\n"
    },
    {
      "commit": "66ce1fce59d2dc16f1905120e0fe3851ba1add90",
      "tree": "6d4b6fa68f66ce2ff2ef2f4fbcd02fef4e84c6ac",
      "parents": [
        "b4529b0adca243644f601c9fe5d419c283bf57c1",
        "d97fd1d7c37e45c7f4c7ee89c3f70b961fa05428"
      ],
      "author": {
        "name": "Alex Sakhartchouk",
        "email": "alexst@google.com",
        "time": "Mon Oct 31 10:30:37 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Oct 31 10:30:37 2011 -0700"
      },
      "message": "Merge \"Removing changes not meant for MR1\" into ics-mr1"
    },
    {
      "commit": "bce45617083209583d61afbea50994f2cdcda459",
      "tree": "6383fcce42736e7aca6189370a555a97cad22780",
      "parents": [
        "94e08f40936b6a280f404e8b67cb5ef900747258",
        "2d280f754e32e556407df05d977cfabdfff1c070"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Sun Oct 30 14:24:02 2011 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Sun Oct 30 14:24:02 2011 -0700"
      },
      "message": "resolved conflicts for merge of 2d280f75 to ics-mr1\n\nChange-Id: I459e1cb0b60fb94dfb12862fedb9f8d949c226a7\n"
    },
    {
      "commit": "89101cd9d9b5c1a6ff1ed85eba0613ca4c4802e2",
      "tree": "f155cc2da9ab892b29262bc6b161c2bf51f34988",
      "parents": [
        "c43b9b6d97ed6dc40e181843aa79159c504e7004"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Thu Oct 27 21:24:54 2011 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Oct 28 14:58:39 2011 -0700"
      },
      "message": "Improve the slow query instrumentation.\n\nOn user-debug and eng builds, you can set the\n\"db.log.slow_query_threshold\" system property to queries that\ntake longer than the specified number of milliseconds.\nSet it to 0 to log all queries.\n\nThis property has been around for a while but it was implemented\npoorly.  In particular, it *changed* the behavior of the query\nby calling getCount() while holding the Db connection.\nIn normal operation, the query will not actually run until later.\n\nBy putting the timing logic into fillWindow() instead, we ensure\nthat we only measure queries that actually ran.  We also capture\ncases where the cursor window gets filled multiple times.\n\nBug: 5520301\nChange-Id: I174f5e1ea15831a1d22a36e9a804d7755f230b38\n"
    },
    {
      "commit": "e707859415f4c8e1c01228dfaa58fb0a690d442e",
      "tree": "880dfbda361e41286f0cda9789889a7b64c9a106",
      "parents": [
        "ee5954a8fe890a373f6e651c50ca5a2c53dac756"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Fri Oct 28 14:32:20 2011 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Fri Oct 28 14:32:20 2011 -0700"
      },
      "message": "Load identity matrix when calling Canvas.setMatrix(null)\nBug #5446826\n\nChange-Id: I3a7817f266b17e9abe948500816d629edd9a2822\n"
    },
    {
      "commit": "650de3dcfcbc7635da3c070410ef1dc4027ae464",
      "tree": "93cb485d70a4388a76397e6f65a80c1a059425fb",
      "parents": [
        "4257e3b18118200e29a3125a12044c4572c1baf5"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Thu Oct 27 14:52:28 2011 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Oct 28 01:46:18 2011 -0700"
      },
      "message": "Optimize fillWindow to improve reverse-seek performance.\nBug: 5520301\n\nWhen an application requests a row from a SQLiteCursor that\nis not in the window, instead of filling from the requested\nrow position onwards, fill from a little bit ahead of the\nrequested row position.\n\nThis fixes a problem with applications that seek backwards\nin large cursor windows.  Previously the application could\nend up refilling the window every time it moved back\none position.\n\nWe try to fill about 1/3 before the requested position and\n2/3 after which substantially improves scrolling responsiveness\nwhen the list is bound to a data set that does not fit\nentirely within one cursor window.\n\nChange-Id: I168ff1d3aed1a41ac96267be34a026c108590e52\n"
    },
    {
      "commit": "d97fd1d7c37e45c7f4c7ee89c3f70b961fa05428",
      "tree": "f976c512fa6822b8c5ff52313e5f9bd03f729626",
      "parents": [
        "6e03b22015bd834da1a5755e75d7468e5b3b13c5"
      ],
      "author": {
        "name": "Alex Sakhartchouk",
        "email": "alexst@google.com",
        "time": "Thu Oct 27 13:51:55 2011 -0700"
      },
      "committer": {
        "name": "Alex Sakhartchouk",
        "email": "alexst@google.com",
        "time": "Thu Oct 27 13:51:55 2011 -0700"
      },
      "message": "Removing changes not meant for MR1\n\nChange-Id: I75136be33f12a87c2b5f21b064c06065a4145d70\n"
    },
    {
      "commit": "0c01c81195bebb41d328d3964996db66cc9f5c12",
      "tree": "db77a958e5333cb3fa2c7b66f819f32502b8066e",
      "parents": [
        "a42ba3309e732c8096130bacba6611756309f06c",
        "27812a8f14ca22f0a709320e5a41d200ac59b63b"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "jsams@google.com",
        "time": "Thu Oct 27 02:35:09 2011 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 27 02:35:09 2011 +0000"
      },
      "message": "am 27812a8f: am 28e4f87f: Fix bug where CPU could be stuck spinning Required the wallpaper be animating and the system to have run slowly during the last frame when rendering stopped.\n\n* commit \u002727812a8f14ca22f0a709320e5a41d200ac59b63b\u0027:\n  Fix bug where CPU could be stuck spinning Required the wallpaper be animating and the system to have run slowly during the last frame when rendering stopped.\n"
    }
  ],
  "next": "27812a8f14ca22f0a709320e5a41d200ac59b63b"
}
