)]}'
{
  "log": [
    {
      "commit": "58006194f87c2278990091e7014a60f442a21baa",
      "tree": "b7283bc0bd03b7fc60705aad5b35371cd56f63a4",
      "parents": [
        "5f98310f9a9f5630628f93a2d1b0f8c73a36e43c",
        "f5f7d38930bef848fc39333acd6adb89bdc3a911"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Jun 04 19:17:16 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jun 04 19:17:16 2010 -0700"
      },
      "message": "am f5f7d389: am fae5cb2b: optimize Surface.readFromParcel()\n"
    },
    {
      "commit": "5f98310f9a9f5630628f93a2d1b0f8c73a36e43c",
      "tree": "729848e8f34bb7a6d0bb914dff30c405f2479022",
      "parents": [
        "18fa1de510782d844bfde37ae24e2c8ba04cd67f",
        "fd89b1c8c7474aa247c43d509fb84db9f3d36d9d"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Jun 04 19:17:12 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jun 04 19:17:12 2010 -0700"
      },
      "message": "am fd89b1c8: am 7623da43: split surface management from surface\\\u0027s buffers management\n"
    },
    {
      "commit": "18fa1de510782d844bfde37ae24e2c8ba04cd67f",
      "tree": "bc2a1dc0895e65a510505ed5358656d635276abd",
      "parents": [
        "81b65ebc52d7179467e3e1d1fcb6dd26ac994938",
        "cfa6de7017478afea66d0c9d0235b9cb4fedd85c"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Jun 04 19:17:08 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jun 04 19:17:08 2010 -0700"
      },
      "message": "am cfa6de70: am 593c05ce: clean-up client management.\n"
    },
    {
      "commit": "fae5cb2b356a1fef172b43066180a7ab4c32dbac",
      "tree": "55e73b81c3a666ab1165603238e7ca43495ff99c",
      "parents": [
        "7623da435e45c7c03ef6a00a43675deb6645f070"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Jun 04 18:26:32 2010 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Jun 04 18:57:41 2010 -0700"
      },
      "message": "optimize Surface.readFromParcel()\n\nthis is called for each relayout() and used to create a full Surface (cpp)\nwhich in turn did some heavy work (including an IPC with surfaceflinger),\nmost of the time to destroy it immediatelly when the returned surface\n(the one in the parcel) was the same.\n\nwe now more intelligentely read from the parcel and construct the new\nobject only if needed.\n\nChange-Id: Idfd40d9ac96ffc6d4ae5fd99bcc0773e131e2267\n"
    },
    {
      "commit": "7623da435e45c7c03ef6a00a43675deb6645f070",
      "tree": "b789cdc5e60ccc4474bd319b1dbb4e1a7e3f3858",
      "parents": [
        "593c05ce7bcf7b6d94bd8c50da2b818cf05116b1"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Jun 01 15:12:58 2010 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Jun 04 18:57:41 2010 -0700"
      },
      "message": "split surface management from surface\u0027s buffers management\n\nChange-Id: If3c5655d1231f8f0c49ba68f972b1b20c93b3f87\n"
    },
    {
      "commit": "593c05ce7bcf7b6d94bd8c50da2b818cf05116b1",
      "tree": "7dd70eab8cf6b3dc140e5eedbe01164349d987de",
      "parents": [
        "66236db38dbaae229a86005309b9f7c74eabc998"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Jun 02 23:28:45 2010 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Jun 04 18:57:40 2010 -0700"
      },
      "message": "clean-up client management.\n\nsimplified things a lot, the biggest change is that the concept\nof \"ClientID\" is now gone, instead we simply use references.\n\nChange-Id: Icbc57f80865884aa5f35ad0d0a0db26f19f9f7ce\n"
    },
    {
      "commit": "89ec91b64dda5e50fdc5f544beeb5610c7e89e9d",
      "tree": "67857442e37c7cc3615f86347a451850b6db4c81",
      "parents": [
        "e399f9d33f807fb975adeb682303a0bdf2defb5e",
        "422ce6b4dba085140fd116fdbce1ef0c8a44065d"
      ],
      "author": {
        "name": "Alex Sakhartchouk",
        "email": "alexst@google.com",
        "time": "Fri Jun 04 16:13:27 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 04 16:13:27 2010 -0700"
      },
      "message": "Merge \"Removing debug output.\""
    },
    {
      "commit": "422ce6b4dba085140fd116fdbce1ef0c8a44065d",
      "tree": "eb80311529761690c0fd948081a4b4be78e2f375",
      "parents": [
        "0829f0d51f73b529a018b9afd931d01711db2f89"
      ],
      "author": {
        "name": "Alex Sakhartchouk",
        "email": "alexst@google.com",
        "time": "Fri Jun 04 16:10:12 2010 -0700"
      },
      "committer": {
        "name": "Alex Sakhartchouk",
        "email": "alexst@google.com",
        "time": "Fri Jun 04 16:10:12 2010 -0700"
      },
      "message": "Removing debug output.\n\nChange-Id: I05bd821607e3312180ed910313c88722a7c13f22\n"
    },
    {
      "commit": "ddcafcbd62c4efdc70bc626ab210a3c41dd1333c",
      "tree": "35a98423fc0c2b030e421bdca85bc5f6ffd346fa",
      "parents": [
        "1bba846ed1997f907e8583de3670b032b32f9259"
      ],
      "author": {
        "name": "Konstantin Lopyrev",
        "email": "klopyrev@google.com",
        "time": "Fri Jun 04 14:36:49 2010 -0700"
      },
      "committer": {
        "name": "Konstantin Lopyrev",
        "email": "klopyrev@google.com",
        "time": "Fri Jun 04 14:37:37 2010 -0700"
      },
      "message": "Fix 1684100: Making sure that empty package, type and resource ids are not accepted.\n\nChange-Id: I4c94877e4312e9a5b4d22c8625069ca056c62e40\n"
    },
    {
      "commit": "0829f0d51f73b529a018b9afd931d01711db2f89",
      "tree": "05b9677a884c74e3c1cb9cbc4050f59310aabd5e",
      "parents": [
        "4a575c682bae734338e1b8fd64886b0f29b960e4",
        "aae74ad6144470c66e72b075ac3afeddb186fa98"
      ],
      "author": {
        "name": "Alex Sakhartchouk",
        "email": "alexst@google.com",
        "time": "Fri Jun 04 10:10:24 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 04 10:10:24 2010 -0700"
      },
      "message": "Merge \"Creating the jni and java layer to integrate a3d\""
    },
    {
      "commit": "aae74ad6144470c66e72b075ac3afeddb186fa98",
      "tree": "b8dbb72f6fd23eef520f4330288e9113f0d2036e",
      "parents": [
        "e407a608b0e2c7aad5cd6321426ec85d35f3bafa"
      ],
      "author": {
        "name": "Alex Sakhartchouk",
        "email": "alexst@google.com",
        "time": "Fri Jun 04 10:06:50 2010 -0700"
      },
      "committer": {
        "name": "Alex Sakhartchouk",
        "email": "alexst@google.com",
        "time": "Fri Jun 04 10:06:50 2010 -0700"
      },
      "message": "Creating the jni and java layer to integrate a3d\n\nChange-Id: I438359633bae59bf9188cd2c4664a92ca16c5f37\n"
    },
    {
      "commit": "baff93de27b71b690eb9bdcb39a1bb044d9eade2",
      "tree": "07ea956b70eb5c99f6e9bf4b50a27faad4106021",
      "parents": [
        "4b18200b9cc97d22ac4b77634195ec5f48004568",
        "ab5e67c60d21a3cbf206c22cd039d732656d7093"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Fri Jun 04 03:41:44 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jun 04 03:41:44 2010 -0700"
      },
      "message": "am ab5e67c6: am cefb01ab: Merge \"Add KEY_SUPPORTED_METERING_MODES and fix some typos.\" into kraken\n"
    },
    {
      "commit": "cefb01abbfdb175e0c4b298126bcb4a98bf6371f",
      "tree": "fdf01eb997e5a8053bd8527ba7ad6994b8e8776a",
      "parents": [
        "2ea200c5a7c13e6a7e8bfdb04e96066a38b19240",
        "8aba232dbce3d7a1e3efd5fa41c37810de79d0ea"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Fri Jun 04 03:38:25 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 04 03:38:25 2010 -0700"
      },
      "message": "Merge \"Add KEY_SUPPORTED_METERING_MODES and fix some typos.\" into kraken"
    },
    {
      "commit": "8aba232dbce3d7a1e3efd5fa41c37810de79d0ea",
      "tree": "895d4ec947f9974da6bd1152ea393893863e9239",
      "parents": [
        "5f5df382e5b87f02399f21c916e0ebb6c48c759d"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Fri Jun 04 14:18:32 2010 +0800"
      },
      "committer": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Fri Jun 04 17:18:17 2010 +0800"
      },
      "message": "Add KEY_SUPPORTED_METERING_MODES and fix some typos.\n\nbug:2737111\nChange-Id: I108ae7057786921bf99385ad66dbc1f02d6a1448\n"
    },
    {
      "commit": "4b18200b9cc97d22ac4b77634195ec5f48004568",
      "tree": "a7aff5ca9f0c6a651a483f7a9f44614cda67c43e",
      "parents": [
        "77205ace4efeac3be306fff6299263cdb7bdd3ae",
        "030a15531c200247e81d36f13f81d6ee443ea81b"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jun 04 00:18:07 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jun 04 00:18:07 2010 -0700"
      },
      "message": "am 030a1553: am 2ea200c5: Merge \"Issue 2667801: [Audio Effect Framework] AudioFlinger, AudioMixer AudioTrack modifications.\" into kraken\n"
    },
    {
      "commit": "2ea200c5a7c13e6a7e8bfdb04e96066a38b19240",
      "tree": "4cce0e6e3096c7cf4c22fe668687b49e6bfc3c50",
      "parents": [
        "5f5df382e5b87f02399f21c916e0ebb6c48c759d",
        "65b65459e6ac59f8a257009df8014467ae0838ee"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jun 04 00:14:46 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 04 00:14:46 2010 -0700"
      },
      "message": "Merge \"Issue 2667801: [Audio Effect Framework] AudioFlinger, AudioMixer AudioTrack modifications.\" into kraken"
    },
    {
      "commit": "3c358eb7bd20af41d921c67fc461dbf9f85db118",
      "tree": "d764f98605ac20c9047e24a29558113af67d9840",
      "parents": [
        "7ba85e4f425c79788ed6d8f7986943d6e8cdeff3",
        "2f98f99cd11ea0b971a86903271bbbc4c4c60da0"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Thu Jun 03 22:35:40 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jun 03 22:35:40 2010 -0700"
      },
      "message": "am 2f98f99c: am 5f5df382: Merge \"Add camera metering mode API.\" into kraken\n"
    },
    {
      "commit": "5f5df382e5b87f02399f21c916e0ebb6c48c759d",
      "tree": "17291c68df4f7836674bf9a0f53753261795a83f",
      "parents": [
        "266b74e8759e76fedec60ec1ffa88cfbd86cc91d",
        "f7f6333831e7b991d92abeddfbd46c2884afa405"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Thu Jun 03 22:32:05 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 03 22:32:05 2010 -0700"
      },
      "message": "Merge \"Add camera metering mode API.\" into kraken"
    },
    {
      "commit": "65b65459e6ac59f8a257009df8014467ae0838ee",
      "tree": "5f9ba01afd1e0ffe85f4b700c1a16f9b998c807d",
      "parents": [
        "501b2b400a15a43849ff84c5da4e68d23ed726cf"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jun 01 23:49:17 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jun 03 03:21:53 2010 -0700"
      },
      "message": "Issue 2667801: [Audio Effect Framework] AudioFlinger, AudioMixer AudioTrack modifications.\n\nFirst drop of audio framework modifications for audio effects support.\n\n- AudioTrack/AudioRecord:\nAdded support for auxiliary effects in AudioTrack\nAdded support for audio sessions\nFixed left right channel inversion in setVolume()\n\n- IAudioFlinger:\nAdded interface methods for effect enumeraiton and instantiation\nAdded support for audio sessions.\n\n- IAudioTrack:\nAdded method to attach auxiliary effect.\n\n- AudioFlinger\nCreated new classes to control effect engines in effect library and manage effect connections to tracks or\noutput mix:\n  EffectModule: wrapper object controlling the effect engine implementation in the effect library. There\n\tis one EffectModule per instance of an effect in a given audio session\n  EffectChain: group of effects associated to one audio session. There is one EffectChain per audio session.\n\tEffectChain for session 0 is for output mix effects, other chains are attached to audio tracks\n\twith same session ID. Each chain contains a variable number of EffectModules\n  EffectHandle: implements the IEffect interface. There is one EffectHandle object for each application\n\tcontrolling (or using) an effect module. THe EffectModule maintians a list of EffectHandles.\n\nAdded support for effect modules and effect chains creation in PlaybackThread.\nmodified mixer thread loop to allow track volume control by effect modules and call effect processing.\n\n-AudioMixer\nEach track now specifies its output buffer used by mixer for accumulation\nModified mixer process functions to process tracks by groups of tracks with same buffer\nModified track process functions to support accumulation to auxiliary channel\n\nChange-Id: I26d5f7c9e070a89bdd383e1a659f8b7ca150379c\n"
    },
    {
      "commit": "f7f6333831e7b991d92abeddfbd46c2884afa405",
      "tree": "bbe6fb84932164301709ddde62af18ad95ad405e",
      "parents": [
        "00e21f8eb57a7ae2c19516aa0290ab4fb5f251c2"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Thu Jun 03 16:34:18 2010 +0800"
      },
      "committer": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Thu Jun 03 16:34:18 2010 +0800"
      },
      "message": "Add camera metering mode API.\n\nbug:2737111\nChange-Id: Ie986fee56ebeaaed2d2efb757701dfe3ffdec8d8\n"
    },
    {
      "commit": "b8b1e1fcfaf4a85cdca547d02b72e3e4bc8c1f75",
      "tree": "2416cff9faaf8491cc05e40b9bb4db9a845c8a29",
      "parents": [
        "812ccbeb3ce55c50463fda1d161b2eeed8b19cd2",
        "ab67fb9a80057453e90e29ef72d558d130287053"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Wed Jun 02 12:41:05 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 02 12:41:05 2010 -0700"
      },
      "message": "Merge \"Disabble vertex logging. bug 2734616\""
    },
    {
      "commit": "ab67fb9a80057453e90e29ef72d558d130287053",
      "tree": "a178960dc5cfab62901306b658fee4eba328841c",
      "parents": [
        "8cb39de03aef6097a90033600d11a60ae000a6e4"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Wed Jun 02 12:40:19 2010 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Wed Jun 02 12:40:19 2010 -0700"
      },
      "message": "Disabble vertex logging.\nbug 2734616\n\n\nChange-Id: Ibad63dfbf0f2ea3c7e475c7cf0689fd487d12be4\n"
    },
    {
      "commit": "be5cd38a845593ba6749601788e24b348c0d95e0",
      "tree": "1b4d36c15a7c26c777497a2c46582795aa1cf4ae",
      "parents": [
        "9e83c02917439bdedaeb06d904f25125a74cef14",
        "8cb39de03aef6097a90033600d11a60ae000a6e4"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Tue Jun 01 16:58:25 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 01 16:58:25 2010 -0700"
      },
      "message": "Merge \"Remove RS_KIND from vertex arrays types. Legacy vertex programs now bind by name just like the user programs. This removes the need for two different ways of declairing the same information.\""
    },
    {
      "commit": "9e83c02917439bdedaeb06d904f25125a74cef14",
      "tree": "847a9bf479f6f0897ba1fb2b6ac292e514cf8aaa",
      "parents": [
        "491271d3f5c19873fdb955accbdb0414b2f65b3a",
        "c9d0a87d504b3f0322b43f971f9cb4838ee521fb"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Tue Jun 01 16:58:15 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 01 16:58:15 2010 -0700"
      },
      "message": "Merge \"types update.\""
    },
    {
      "commit": "491271d3f5c19873fdb955accbdb0414b2f65b3a",
      "tree": "470bb4020a2cc89fd8812e4c7ee5bc21f9172d8e",
      "parents": [
        "2e477f02ddd2aee2fb32b1a2cfa3bdc28537dd57",
        "7258fd92d0b631a70244fbb759dfb4d1699994ab"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Jun 01 16:11:31 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jun 01 16:11:31 2010 -0700"
      },
      "message": "am 7258fd92: am 5be7de5f: Merge \"fix a bug where fading in/out of opaque 32-bits windows wasn\\\u0027t working\" into kraken\n"
    },
    {
      "commit": "bd69e1b8518ccae73719c1a185a4312a910a6206",
      "tree": "d4943df391acbf19dc7704c617ac0f4d84f78f9b",
      "parents": [
        "6c2faea435d2f001cec0eaeeeccf7e6273d4f245",
        "5220af87c77e835ccb57580b23915bca9ab7e4ff"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Jun 01 16:08:48 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jun 01 16:08:48 2010 -0700"
      },
      "message": "am 5220af87: am 770492cb: more clean-up in preparation of bigger changes\n"
    },
    {
      "commit": "a0612e41dd5e6e9ec0a89e8e7437a3dafec0ee10",
      "tree": "f3ec2ef02455cab9e515b5fe0d8dbec32e7efa87",
      "parents": [
        "1e1e292edcb75fdef93fe63b12355bfef642e5bc"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Apr 12 15:34:55 2010 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Jun 01 15:57:44 2010 -0700"
      },
      "message": "fix a bug where fading in/out of opaque 32-bits windows wasn\u0027t working\n\nopaque 32-bits windows are now allocated as RGBX_8888 buffers and\nSurfaceFlinger always uses GL_MODULATE instead of trying to\noptimize to GL_REPLACE when possible (makes no sense on\nh/w accelerated GL).\n\nwe still have a small hack for devices that don\u0027t support\nRGBX_8888 in their gralloc implementation where we revert to\nRGBA_8888.\n"
    },
    {
      "commit": "8cb39de03aef6097a90033600d11a60ae000a6e4",
      "tree": "cc9eb5fa87de5e14713684e7e177368d10550384",
      "parents": [
        "c9d0a87d504b3f0322b43f971f9cb4838ee521fb"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Tue Jun 01 15:47:01 2010 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Tue Jun 01 15:47:01 2010 -0700"
      },
      "message": "Remove RS_KIND from vertex arrays types.\nLegacy vertex programs now bind by name just like the user programs.\nThis removes the need for two different ways of declairing the same\ninformation.\n\nChange-Id: I0178c0962842a1bbffb6726984ae1b8f5bb7529c\n"
    },
    {
      "commit": "c9d0a87d504b3f0322b43f971f9cb4838ee521fb",
      "tree": "8056c172df00a20b2645853157e61a9cc0c860f1",
      "parents": [
        "3678f1989e6ced6d97afaa5bb28743b1955d39a3"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Fri May 28 18:08:16 2010 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Fri May 28 19:13:20 2010 -0700"
      },
      "message": "types update.\n\nChange-Id: I3bd43e163c919be4c3a38e0dd228cee220c62b76\n"
    },
    {
      "commit": "3678f1989e6ced6d97afaa5bb28743b1955d39a3",
      "tree": "c103cf5a88b054c77095f2d341823fcb9ba147b7",
      "parents": [
        "12fc0af972684990fb22cdecae95688f2465e26f",
        "f17bccc9050498f51a32a2ee78f5d5a306008e3d"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Fri May 28 18:24:49 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 28 18:24:49 2010 -0700"
      },
      "message": "Merge \"Rough implemetation of ForEach. Remove launchID from root graphics script.\""
    },
    {
      "commit": "f17bccc9050498f51a32a2ee78f5d5a306008e3d",
      "tree": "d77d5bdaf502bdd34af96732258ed73acd506f2a",
      "parents": [
        "3255823de062e981f7bfc7994919207988697e45"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Fri May 28 18:23:22 2010 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Fri May 28 18:23:22 2010 -0700"
      },
      "message": "Rough implemetation of ForEach.\nRemove launchID from root graphics script.\n\nChange-Id: I9f80c0d4df1264f2ee1624a6d7216b9dfdf8502e\n"
    },
    {
      "commit": "12fc0af972684990fb22cdecae95688f2465e26f",
      "tree": "52f5a7a008eb5be350e98e99e0f2f9d956db4f7e",
      "parents": [
        "40ac2e6d571045441453888f5940679737b78e75",
        "96d3749e4ed3a780e1d6f505edea3a67b8a8c7d2"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Fri May 28 18:16:16 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 28 18:16:16 2010 -0700"
      },
      "message": "Merge \"Fountain update.  Update field names to match legacy expectations. Cleanup java code.\""
    },
    {
      "commit": "96d3749e4ed3a780e1d6f505edea3a67b8a8c7d2",
      "tree": "1a07619a375ba63fa1d48504a607cba6c4444967",
      "parents": [
        "3255823de062e981f7bfc7994919207988697e45"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Fri May 28 18:14:41 2010 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Fri May 28 18:14:41 2010 -0700"
      },
      "message": "Fountain update.  Update field names to match legacy expectations.\nCleanup java code.\n\nChange-Id: I1ad9ae462e46166a7b6ff2b399417dbfe50a5542\n"
    },
    {
      "commit": "770492cb2b19f6a36ad748cd05fbedfbb9a67dfa",
      "tree": "3c87a789492e52b3c26b1de9608f42690b86c2cd",
      "parents": [
        "cdfd5fe2c89a30a31f9de5a5481e8997f014a89b"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri May 28 14:22:23 2010 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri May 28 17:19:16 2010 -0700"
      },
      "message": "more clean-up in preparation of bigger changes\n\nthe most important change here is the renaming of\nISurfaceFlingerClient to ISurfaceComposerClient\n\nChange-Id: I94e18b0417f50e06f21377446639c61f65f959b3\n"
    },
    {
      "commit": "8eb25c28c01beed326f1612b0381f421f75516fc",
      "tree": "3a6c56dfd37dd71dd40ff8f8c8b492edce3f7bce",
      "parents": [
        "922283288288399363ebaebb25e13ddc08fa3b8d",
        "2807df89af680e46cb35ee0035bb10b42d3136a2"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Fri May 28 10:24:28 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 28 10:24:29 2010 -0700"
      },
      "message": "Merge \"Move CursorWindow class from core/jni to libbinder\""
    },
    {
      "commit": "922283288288399363ebaebb25e13ddc08fa3b8d",
      "tree": "aa9b282fb52af72a5067c3baa8398f1a58af9b41",
      "parents": [
        "cf789214369c1d5d029c14fd5938a39808a166d1",
        "3ed1da358091875f9889227485672d1734a290a3"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Fri May 28 09:35:20 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri May 28 09:35:20 2010 -0700"
      },
      "message": "am 3ed1da35: am 198975bb: Merge \"Add video frame parameter.\" into kraken\n"
    },
    {
      "commit": "cf789214369c1d5d029c14fd5938a39808a166d1",
      "tree": "a01f3dcd53a9d72bd813de23f274ce57624fba15",
      "parents": [
        "8e98e35e8f264f28dc19a603f039e7e9ca154ad7",
        "6a9d88ff64b5ed6627e8f04d08663f2c01173ea0"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri May 28 09:35:08 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri May 28 09:35:08 2010 -0700"
      },
      "message": "am 6a9d88ff: am 64ff6ab4: Merge \"more clean-up of Surfaceflinger\\\u0027s client management\" into kraken\n"
    },
    {
      "commit": "2807df89af680e46cb35ee0035bb10b42d3136a2",
      "tree": "7f78fa82946171e60dc9c13fd4d0b05df860777e",
      "parents": [
        "afd52a0b40e7986d0993217b3fe0cf44fea21274"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu May 27 17:04:23 2010 -0400"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Fri May 28 10:08:21 2010 -0400"
      },
      "message": "Move CursorWindow class from core/jni to libbinder\n\nTo allow use of the native CursorWindow class outside of the core framework jni\n\nChange-Id: I72e8dcb91a2c691130c33cdfd9a25d343da1c592\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "198975bb010531e6e21f35582fb7040960364473",
      "tree": "ce4cb91c18415d9d5fec44f88828c138c2d3160e",
      "parents": [
        "64ff6ab4df0fa7660584b2a2bfe9a003ca481ac5",
        "d2c2929c94bec68741b85f4174e11307fb65157f"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Fri May 28 04:34:13 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 28 04:34:13 2010 -0700"
      },
      "message": "Merge \"Add video frame parameter.\" into kraken"
    },
    {
      "commit": "d2c2929c94bec68741b85f4174e11307fb65157f",
      "tree": "510d29a3a37649ae4ff7111450404b6c041ee5f1",
      "parents": [
        "df0364de6f7be68e003729c262fe2731b82ae10e"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Fri May 28 17:32:41 2010 +0800"
      },
      "committer": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Fri May 28 17:32:41 2010 +0800"
      },
      "message": "Add video frame parameter.\n\nThe image format of preview frames and video frames may be different.\nWe need another parameter for video frame format.\n\nbug:2720893\nChange-Id: I966a31b0ce8cab25cdde65db65a18c8cbe9c7bd6\n"
    },
    {
      "commit": "c7b388c2b3a9558c85e3730a7c6b261392ce493e",
      "tree": "38725561e04c5e754c0c3b2a240a507ea98f6cf4",
      "parents": [
        "df0364de6f7be68e003729c262fe2731b82ae10e"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu May 27 19:41:15 2010 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu May 27 19:55:43 2010 -0700"
      },
      "message": "more clean-up of Surfaceflinger\u0027s client management\n\nSurfaceComposerClient now only exist on the WindowManager side,\nthe client side uses the new SurfaceClient class, which only\nexposes what a client needs.\n\nalso instead of keeping mappings from IBinder to SurfaceComposerClients\nwe have a SurfaceClient per Surface (referring to the same IBinder), this\nis made possible by the fact that SurfaceClient is very light.\n\nChange-Id: I6a1f7015424f07871632a25ed6a502c55abfcfa6\n"
    },
    {
      "commit": "9855b591dc912caaa20fa2cd56e2d5e723f05393",
      "tree": "7a7ccf82b17222c8fd789f1f05864d888f538332",
      "parents": [
        "c82f4519e047c702fd0c6f40514ed3834f3fafa3",
        "ec272924c4a7891fa648f41f04f200c8dde567c0"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed May 26 22:52:06 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed May 26 22:52:06 2010 -0700"
      },
      "message": "am ec272924: am df0364de: Merge \"minor clean-up GLclampx -\u003e GLclampf\" into kraken\n"
    },
    {
      "commit": "0d3c0063aa998bc32e7f22114e38a0f8df61ad65",
      "tree": "81c52a94a3a163d92468078e58d06fbcb134faca",
      "parents": [
        "7d1508b854dff2b9b3469b5eef7e2123eada1cd7"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed May 26 22:26:12 2010 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed May 26 22:26:12 2010 -0700"
      },
      "message": "minor clean-up GLclampx -\u003e GLclampf"
    },
    {
      "commit": "4e49bb98905ad74daddc023831213d8e47fdf2f1",
      "tree": "0544f2d5b683a93e759186a5450405e70fcd38a9",
      "parents": [
        "2342fbdccbcd9de76d74682ad0ddb6cd31251015",
        "ed34e9506f54a3b6266a875e8cec15930e66c534"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed May 26 22:23:40 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed May 26 22:23:40 2010 -0700"
      },
      "message": "am ed34e950: am d908822d: Merge \"clean-up dead-code\" into kraken\n"
    },
    {
      "commit": "7d1508b854dff2b9b3469b5eef7e2123eada1cd7",
      "tree": "7929ad907515ffa138023614a2163d219e1f4dcc",
      "parents": [
        "923770333574fd71674781a9a62f40e8acaf5ef1"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed May 26 22:19:19 2010 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed May 26 22:19:19 2010 -0700"
      },
      "message": "clean-up dead-code"
    },
    {
      "commit": "2342fbdccbcd9de76d74682ad0ddb6cd31251015",
      "tree": "ad61d3f32ce571415013d116452a7d043ae741cf",
      "parents": [
        "2d8b3e94cfa2325a224868b13623cf206b584970",
        "521b8d5c7103e24819c5aab2026b6279c3358437"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed May 26 22:14:43 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed May 26 22:14:43 2010 -0700"
      },
      "message": "am 521b8d5c: am a950aa84: Merge \"Make sure to use filtering while in fixed-size mode\" into kraken\n"
    },
    {
      "commit": "923770333574fd71674781a9a62f40e8acaf5ef1",
      "tree": "f7ac29b5c4b207305d9c3972d763009a20f8cb3f",
      "parents": [
        "663baddda9de01d0a7eccffaeb7ce39899e95146"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed May 26 22:08:52 2010 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed May 26 22:10:04 2010 -0700"
      },
      "message": "Make sure to use filtering while in fixed-size mode"
    },
    {
      "commit": "801f90bd80d76db56171956aeba152d45062b139",
      "tree": "6af2ee588117df82ff4c53b57a81b988d890d934",
      "parents": [
        "463838d804147b00a4bbf11c36d8d47163a8f540",
        "2a0f01ea0781d9d951735fc4689070dd84e9df3e"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed May 26 21:38:42 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed May 26 21:38:42 2010 -0700"
      },
      "message": "am 2a0f01ea: am 7ca7eedb: Merge \"oopsie. forgot to displatch SET_BUFFERS_GEOMETRY\" into kraken\n"
    },
    {
      "commit": "663baddda9de01d0a7eccffaeb7ce39899e95146",
      "tree": "31f08ccadbdb385ab1920e0ced067f21d49f5d78",
      "parents": [
        "64f7549b0e0e2b77e698ae88389465342d3f28d7"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed May 26 21:31:09 2010 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed May 26 21:31:09 2010 -0700"
      },
      "message": "oopsie. forgot to displatch SET_BUFFERS_GEOMETRY\n"
    },
    {
      "commit": "b3ece2d595811c0dba2cada7d7d4f511001ae5ec",
      "tree": "e732fe1b346aafb25855655e3a5d642dab925c74",
      "parents": [
        "cbc8270c7e20a9d1b898200dcd72a2a5af2c74b2",
        "eaac2761600493ab4ce0bdc386b4436d87345258"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed May 26 11:42:51 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed May 26 11:42:51 2010 -0700"
      },
      "message": "am eaac2761: am 64f7549b: Merge \"fix [2712278] The preview buffer left some black borders in left and bottom edges\" into kraken\n"
    },
    {
      "commit": "2ce19af45bf4c5e311a73df474ffe88d96d118c5",
      "tree": "3df75d3e86308a618a3ddc47d301731af30769a8",
      "parents": [
        "d6ddcb7f00a7af95b452233d965b922632f78f21"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue May 25 17:51:34 2010 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue May 25 17:51:34 2010 -0700"
      },
      "message": "fix [2712278] The preview buffer left some black borders in left and bottom edges\n\nwe were incorrectly flagging push_buffer surfaces as invalid\n\nChange-Id: I4dfd4ffbbe8a71f7e23e835db8d71966416c29bb\n"
    },
    {
      "commit": "cc9c4242e3f77c20a943bdbc5fde5fe28cc2def6",
      "tree": "b264e41d5fe8a1e8244be0293917b7a4db54a043",
      "parents": [
        "2ce0a831d66238e21523f0020c1284bfc3f891ed"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue May 25 09:31:59 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue May 25 09:31:59 2010 -0700"
      },
      "message": "Fix issue 2641884: Bluetooth volume is dependent on in call volume.\n\nThe problem is that the code in AudioPolicyManagerBase::checkAndSetVolume() that forces\nvoice volume to max when setting bluetooth SCO volume is not called if the bluetooth stream\nvolume did not actually change. So even if we re apply volumes when switching to bluetooth\ndevice, the volume voice volume is not changed and remains what it was when routed to earpiece\nWhat makes things worse on Passion is that stream volumes are limited when connected to bluetooth\nand their actual value does not change as soon as they exceed the limit threshold.\n\nChange-Id: I18265e5e6686db0a1f30fc37a31e2ecde4f3fbc6\n"
    },
    {
      "commit": "b00d12beaec607c0a72b3917990f0a9c6cbe3417",
      "tree": "89646607c3a8fd54b31acc38f64c02a0320d83e3",
      "parents": [
        "7cce3d3dcd3c050fefb81ec18b36bddb8dc0255c",
        "61a5870871cbc191414669568039321428722236"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon May 24 18:33:35 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon May 24 18:33:35 2010 -0700"
      },
      "message": "am 61a58708: am 2e948ca1: Merge \"added the notion of fixed-size buffers\" into kraken\n"
    },
    {
      "commit": "7cce3d3dcd3c050fefb81ec18b36bddb8dc0255c",
      "tree": "41a9d7b1baf507354415ed5d60429b2d2c0b70de",
      "parents": [
        "3255823de062e981f7bfc7994919207988697e45",
        "27d2f0caef5aae33aed4675e28cfdd8374b23e3f"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon May 24 18:33:31 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon May 24 18:33:31 2010 -0700"
      },
      "message": "am 27d2f0ca: am acdc44bb: Merge \"fix a bug when reallocating a window\\\u0027s buffers is needed\" into kraken\n"
    },
    {
      "commit": "2be352adab7f11646fda7c0240e496bbb37f7bd1",
      "tree": "e7a168546a256cd4f7c57261690796cf527ae8a2",
      "parents": [
        "57d89899c9fb978a1c097f298aa94c5db1f61bb6"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri May 21 17:24:35 2010 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon May 24 18:26:01 2010 -0700"
      },
      "message": "added the notion of fixed-size buffers\n\nthe new native_window_set_buffers_geometry allows\nto specify a size and format for all buffers to be\ndequeued. the buffer will be scalled to the window\u0027s\nsize.\n\nChange-Id: I2c378b85c88d29cdd827a5f319d5c704d79ba381\n"
    },
    {
      "commit": "57d89899c9fb978a1c097f298aa94c5db1f61bb6",
      "tree": "85e1c021f67a2fdb5ed33547872a769b7d55fba6",
      "parents": [
        "884372842bac11f854aa42a9c4de05a3a22cb11f"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri May 21 14:51:33 2010 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon May 24 13:47:24 2010 -0700"
      },
      "message": "fix a bug when reallocating a window\u0027s buffers is needed\n\nwe need to mark the buffers that need to be reallocated,\nNOT the buffer\u0027s indices.\n\nChange-Id: I809e2e1b03b56c4d2ab983c25523dae99aa1da74\n"
    },
    {
      "commit": "f7b4150a890c0446319da0018147320645e0c30f",
      "tree": "f0ba126c41aa530b56152c1a50992cb0bf249c7e",
      "parents": [
        "aa7d2884cb563f87294003981e03e37a1abeb961",
        "6099e141df3df2a5b76f3c59a26653b9f48621d6"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri May 21 14:38:44 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri May 21 14:38:44 2010 -0700"
      },
      "message": "am 6099e141: am 25f0bdae: added native_window_set_buffer_count()\n"
    },
    {
      "commit": "25f0bdaea6d1a34aae3faf6688cad4fbebcca969",
      "tree": "8600372f2cb6f54254d2c7e0f7018c039e07c4b6",
      "parents": [
        "4f5f2786b2c850ad0d772c7707ddbe55c3b7adf6"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri May 21 14:19:50 2010 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri May 21 14:34:32 2010 -0700"
      },
      "message": "added native_window_set_buffer_count()\n\nthis method can be used to change the number of buffers\nassociated to a native window. the default is two.\n\nChange-Id: I608b959e6b29d77f95edb23c31dc9b099a758f2f\n"
    },
    {
      "commit": "aa7d2884cb563f87294003981e03e37a1abeb961",
      "tree": "85e27332bc586e3eae0ea334e624920de27687cd",
      "parents": [
        "dd56b39ec000b3ddd206d242b0fe24b4b955c8ee"
      ],
      "author": {
        "name": "Alex Sakhartchouk",
        "email": "alexst@google.com",
        "time": "Fri May 21 12:53:13 2010 -0700"
      },
      "committer": {
        "name": "Alex Sakhartchouk",
        "email": "alexst@google.com",
        "time": "Fri May 21 14:00:10 2010 -0700"
      },
      "message": "Removed unnecessary change based on comments.\nNow using android utils lib.\ncollada_to_a3d seems to work with android util libs.\nIntegrating old changelist\nChanging assert to rsAssrt in VertexArray\nmaking context compile.\nChange-Id: I33890defa777f09253bfab630d97782359ec49d7\n\nAdded serialization code to rsLib\nIntegrated old changelist\nChange-Id: Ie4746113f6d1817fbb3264f97fdddde25b779311\n\nAdded serialization code to rsLib\n\nChange-Id: Ie4746113f6d1817fbb3264f97fdddde25b779311\n"
    },
    {
      "commit": "dd56b39ec000b3ddd206d242b0fe24b4b955c8ee",
      "tree": "8d764ad288274aea4f01c0802db797d0cc92640d",
      "parents": [
        "11ec99c0005f4479d096511357d6122bb7edb393",
        "9840fe2567ea317caa5eddbe1fe9818dc6ca0289"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri May 21 13:56:48 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri May 21 13:56:48 2010 -0700"
      },
      "message": "am 9840fe25: am 4f5f2786: Merge \"fix the threading issue for setBuffercount()\" into kraken\n"
    },
    {
      "commit": "898c4c91be8e11b6d5388c623ae80f12ac25fd27",
      "tree": "8f59a103707c25a05bcf4fa074e944e766c15503",
      "parents": [
        "66c46a6bd15422fe898d533d1350d6df748dd95b"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue May 18 17:06:55 2010 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu May 20 18:00:42 2010 -0700"
      },
      "message": "fix the threading issue for setBuffercount()\n\nthis change introduces R/W locks in the right places.\non the server-side, it guarantees that setBufferCount()\nis synchronized with \"retire\" and \"resize\".\non the client-side, it guarantees that setBufferCount()\nis synchronized with \"dequeue\", \"lockbuffer\" and \"queue\"\n"
    },
    {
      "commit": "1001a5b97bf910c164dce45c174c4660d678d818",
      "tree": "abb68ebd1670710508f63dbc093e8ee43fa41481",
      "parents": [
        "62697e57eddc89d76fdfb6cdacaf83d058d9744a"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Thu May 20 17:56:05 2010 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Thu May 20 17:56:05 2010 -0700"
      },
      "message": "Remove noise functions and update images processing to use new rs namespace names.\n\nChange-Id: I2dc9b5ec7877acd630bea1a011ecc4a6d43a31eb\n"
    },
    {
      "commit": "d79b2e9f8b0fa43f6734aaa5e9d0d389d5da5109",
      "tree": "e2eb06363ce3d83f447bac87e385835a4314d7ac",
      "parents": [
        "d52498a64ff0bef28cd48ed28acd84a680a1d9b5"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Wed May 19 17:22:57 2010 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Wed May 19 17:23:08 2010 -0700"
      },
      "message": "Begin naming cleanup for renderscript runtime.\nPrefix functions with \"rs\" or \"rsg\".\n\nChange-Id: I4435b486831bfab1ea473ccfad435b404e68f1c9\n"
    },
    {
      "commit": "d52498a64ff0bef28cd48ed28acd84a680a1d9b5",
      "tree": "aec5e9657b291992a21bfe0f95b5ec399eb68497",
      "parents": [
        "8e5819662f5ab8f38400d8df5042ba184ec04031",
        "814326b3b945d61ea48d05e32899fb5a036cc2d3"
      ],
      "author": {
        "name": "Alex Sakhartchouk",
        "email": "alexst@google.com",
        "time": "Wed May 19 16:44:26 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed May 19 16:44:26 2010 -0700"
      },
      "message": "Merge \"Added benchmark mode. Added some image processing operations.\""
    },
    {
      "commit": "814326b3b945d61ea48d05e32899fb5a036cc2d3",
      "tree": "ad9c395d13d4aad145d1470d7fffbaa8e742b912",
      "parents": [
        "468202dd71e375a1f7f2038e094baffe204c4972"
      ],
      "author": {
        "name": "Alex Sakhartchouk",
        "email": "alexst@google.com",
        "time": "Wed May 19 16:28:27 2010 -0700"
      },
      "committer": {
        "name": "Alex Sakhartchouk",
        "email": "alexst@google.com",
        "time": "Wed May 19 16:28:27 2010 -0700"
      },
      "message": "Added benchmark mode.\nAdded some image processing operations.\n\nChange-Id: Ic7ba45fbf57eff6fc7d20377c148d0ba7ac862f7\n"
    },
    {
      "commit": "db3be83ac6932eae7d77ead7a80c1fc8a6493fd6",
      "tree": "001630004448dafa94c0c9558d537bc1fd042e96",
      "parents": [
        "ddaac246c28cee57b1a7dbc015d9c939b139c074",
        "536923df75eb53a2c27e889526b200e170e45492"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Tue May 18 16:04:21 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue May 18 16:04:21 2010 -0700"
      },
      "message": "Merge \"Split ScriptC Lib into CL, GL, and basic.\""
    },
    {
      "commit": "536923df75eb53a2c27e889526b200e170e45492",
      "tree": "663afb55a41a2c8a5c9284f10b7ba0075ab7793a",
      "parents": [
        "c378dab087bc2fa6de339fd443194f8409b5df46"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Tue May 18 13:35:45 2010 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Tue May 18 13:35:45 2010 -0700"
      },
      "message": "Split ScriptC Lib into CL, GL, and basic.\n\nChange-Id: Iadab35f2a967a1afd7a2fd13216d0a7acf4b6a50\n"
    },
    {
      "commit": "e0e9cb54346c182cd89314a07677b361227ce699",
      "tree": "6e7ee33cb1f6c7d8df1c5c1865b8a1b2d859e23d",
      "parents": [
        "d073c8a9ac1cbcee7c2a7e4955e68eda9140c8b2",
        "f98b752a20e19da92b6e406c96ddb48e38cf6777"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon May 17 20:14:19 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon May 17 20:14:19 2010 -0700"
      },
      "message": "am f98b752a: am d633215b: Merge \"add a few tests to SharedBufferStackTest\" into kraken\n"
    },
    {
      "commit": "35b1a93d1925fbae83c654e627647b66539b8d90",
      "tree": "a6f277c93bbb186bc1cf797d62d72c3f56551172",
      "parents": [
        "662be102ee3a89645ca60650a6094003f35894e0"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon May 17 20:08:22 2010 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon May 17 20:08:22 2010 -0700"
      },
      "message": "add a few tests to SharedBufferStackTest\n\nChange-Id: I1c46c07aa1483aee4d4ebd8745638a2c462cc1b3\n"
    },
    {
      "commit": "d073c8a9ac1cbcee7c2a7e4955e68eda9140c8b2",
      "tree": "c535b299674fe2b3ed5cd284f40a789f7423e6f9",
      "parents": [
        "c93ae7519c3c43aa2c9cd1b2638cf14c64af3cba",
        "fdc1f4a745a196a9d580ab9c13ff63e5041fc35b"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon May 17 19:02:05 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon May 17 19:02:05 2010 -0700"
      },
      "message": "am fdc1f4a7: am f75d738d: Merge \"improve SharedBufferStack test\" into kraken\n"
    },
    {
      "commit": "c93ae7519c3c43aa2c9cd1b2638cf14c64af3cba",
      "tree": "e81f31f870b278805e36031f5deecb20d6c019f8",
      "parents": [
        "6773b5fc49bcf971991d85aa5d9f425aeca3c886",
        "1e381015134843d57660cbc78a254e4b3bf93fb4"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon May 17 18:59:40 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon May 17 18:59:40 2010 -0700"
      },
      "message": "am 1e381015: am 88bcc1c6: Merge \"fix a bug where queueBuffer() would fail after the SharedbufferStack is resized\" into kraken\n"
    },
    {
      "commit": "662be102ee3a89645ca60650a6094003f35894e0",
      "tree": "1476092bbc6c60e1e588ad767b85e15e4b48bfc2",
      "parents": [
        "be6c8fc4d5f8144cbfc715da0d2ef3c704db279d"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon May 17 18:56:10 2010 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon May 17 18:56:10 2010 -0700"
      },
      "message": "improve SharedBufferStack test\n\nChange-Id: I32683bfe0916918757280db89113595867acd5a7\n"
    },
    {
      "commit": "be6c8fc4d5f8144cbfc715da0d2ef3c704db279d",
      "tree": "94899c9146765d814bf7bb81e1e7a2954ad24499",
      "parents": [
        "cd30f4f849bb215509bd2645726048271b5db01e"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon May 17 18:54:19 2010 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon May 17 18:54:19 2010 -0700"
      },
      "message": "fix a bug where queueBuffer() would fail after the SharedbufferStack is resized\n\nChange-Id: I12bf13a62018ce1349bab7be0b0cad7fad13fee8\n"
    },
    {
      "commit": "5e9987560f8385f5ea8e02e767505607fa99f687",
      "tree": "eabf3caeb1dfddbdcfb63f7ec789287017ebde70",
      "parents": [
        "005cb4b7ed5b010f89017815915c7f62676ceb54",
        "d4a5ea29c1067990df60c9fc198f370e8c374c84"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon May 17 17:35:21 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon May 17 17:35:21 2010 -0700"
      },
      "message": "am d4a5ea29: am 2b2529f2: Merge \"fix some bugs in SharedBufferStack::resize\" into kraken\n"
    },
    {
      "commit": "c378dab087bc2fa6de339fd443194f8409b5df46",
      "tree": "1e56a1e856e01955abb8a993ce226cbae4191675",
      "parents": [
        "1de0b87168837cfcd9318bec5c97d2e7d78d3293"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Mon May 17 17:28:12 2010 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Mon May 17 17:28:12 2010 -0700"
      },
      "message": "Remove excess logging.\n\nChange-Id: Ib4af6428c5fd87c3891f41eca6ca43d84f0edc97\n"
    },
    {
      "commit": "cd30f4f849bb215509bd2645726048271b5db01e",
      "tree": "6182174b30879d9bbee5532faa2b098b9c81715c",
      "parents": [
        "c5859388bd6c666a83017869bf8a9935defe0bd0"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon May 17 17:27:26 2010 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon May 17 17:27:26 2010 -0700"
      },
      "message": "fix some bugs in SharedBufferStack::resize\n\nadded buffers should now be labeled properly.\n\nChange-Id: I28aa753fbe89ab89134e7753575319478934c7fa\n"
    },
    {
      "commit": "1de0b87168837cfcd9318bec5c97d2e7d78d3293",
      "tree": "6b6cd8ea2a55597e3fd3573072cb85af892be731",
      "parents": [
        "38a9544825c6f3482237f9e29cddee58ebc093c3"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Mon May 17 14:55:34 2010 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Mon May 17 14:55:34 2010 -0700"
      },
      "message": "Remove more pieces of setRoot.  Add pointer to allocation lookup for scripts.\n\nChange-Id: I2c3075d2056f02bb834bfad403dc72da991f3156\n"
    },
    {
      "commit": "38a9544825c6f3482237f9e29cddee58ebc093c3",
      "tree": "a363ec804ba783a89fc3c8415e0adcdd6f40e2c6",
      "parents": [
        "c324d3365a5df0519798c20709830d7965059375",
        "f62b6ff9da05e8f9f6f2d39d2187b39cd16d934b"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon May 17 09:22:01 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon May 17 09:22:01 2010 -0700"
      },
      "message": "am f62b6ff9: am eb8f850d: Fix issue 2553359: Pandora does not work well with Passion deskdock / Cardock.\n"
    },
    {
      "commit": "e1d07bded7c443f70e3adab15cd3d10ffc0a4000",
      "tree": "f6f48bb837885a0e96231447c5a9296fca5fd8eb",
      "parents": [
        "c3848824f85e774b582758b39df2f739007423ad",
        "8dc80423b62186b80e2c48db147d203cff6f17eb"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Mon May 17 09:21:13 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon May 17 09:21:13 2010 -0700"
      },
      "message": "am 8dc80423: am ae7ca4c3: Fix build error.\n"
    },
    {
      "commit": "c3848824f85e774b582758b39df2f739007423ad",
      "tree": "4726844e97304e8f340e9bbd9e360e295e8e0a84",
      "parents": [
        "ebaa64a7ad66436a56f7a6df2357456e7ec57ddc",
        "a3b5ff075fd055213bde7f4e62dee6e5c88437ba"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Mon May 17 09:21:03 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon May 17 09:21:03 2010 -0700"
      },
      "message": "am a3b5ff07: am e339c5ed: Add camera focus distances API.\n"
    },
    {
      "commit": "2a466809dffb33314dcb8d791108c8de23104e46",
      "tree": "5320aed249cb93e0af9429494260003d98dfeba2",
      "parents": [
        "9eff99e9d54aa8238a803f4410b5883e47334fd5",
        "2ff19fa9e5920e610074f3fb17d7fc1460fde0a2"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon May 17 09:20:49 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon May 17 09:20:49 2010 -0700"
      },
      "message": "am 2ff19fa9: am 4606d5dd: Merge \"fix uninitialized variable in DisplayHardware\" into kraken\n"
    },
    {
      "commit": "eb8f850d0b7e53956e917fd9645f808c1a09bc88",
      "tree": "07b5194b348dcd40b46fbf049066e45320099fdb",
      "parents": [
        "533844d9688f7c9269372f97db17c9bc4d19c04b"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri May 14 03:26:45 2010 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon May 17 02:23:47 2010 -0700"
      },
      "message": "Fix issue 2553359: Pandora does not work well with Passion deskdock / Cardock.\n\nThe problem is due to a too big difference between the buffer size used at the hardware interface and at the A2DP interface.\nWhen no resampling occurs we don\u0027t notice problems but the timing is very tight. As soon as resampling is activated, the AudioTrack underruns.\nThis is because the AudioTrack buffers are not resized when moving the AudioTrack from hardware to A2DP output.\nThe AudioTrack buffers are calculated based on a hardware output buffer size of 3072 bytes. Which is much less than the A2DP output buffer size (10240).\n\nThe solution consists in creating new tracks with new buffers in AudioFlinger when the A2DP output is opened\ninstead of just transfering active tracks from hardware output mixer thread to the new A2DP output mixer thread.\nTo avoid synchronization issues between mixer threads and client processes, this is done by invalidating tracks\nby setting a flag in their control block and having AudioTrack release the handle on this track (IAudioTrack)\nand create a new IAudioTrack when this flag is detected next time obtainBuffer() or start() is executed.\n\nAudioFlinger modifications:\n- invalidate the tracks when setStreamOutput() is called\n- make sure that notifications of output opening/closing and change of stream type to output mapping are sent synchronously to client process.\nThis is necessary so that AudioSystem has the new stream to output mapping when the AudioTrack detects the invalidate flag in the client process.\nPreviously their were sent when the corresponding thread loop was executed.\n\nAudioTrack modifications:\n- move frame count calculation and verification from set() to createTrack() so that is is updated every time a new IAudioTrack is created.\n- detect track invalidate flag in obtainBuffer() and start() and create a new IAudioTrack.\n\nAudioTrackShared modifications\n- group all flags (out, flowControlFlag, forceReady...) into a single bit filed to save space.\n\nChange-Id: I9ac26b6192230627d35084e1449640caaf7d56ee\n"
    },
    {
      "commit": "ae7ca4c32cb37ea82e77ad1462fbfcd4d6dfabd3",
      "tree": "e76e4f72db70f1d1291f6fa0ae334545906617c5",
      "parents": [
        "e339c5edbebedf446581f18ad70214007309bf4b"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Sat May 15 13:05:04 2010 +0800"
      },
      "committer": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Sat May 15 13:06:19 2010 +0800"
      },
      "message": "Fix build error.\n\nOriginal name INFINITY conflicts with the macro in math.h.\n\nChange-Id: I9845ed84fca17813dd971239a902cc1e0bad1e3e\n"
    },
    {
      "commit": "e339c5edbebedf446581f18ad70214007309bf4b",
      "tree": "7d03e881cb3e1300aef948eafb85396a58d38e1c",
      "parents": [
        "aef87aa90cf3a6cf9098477683b07994697c45fe"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Thu May 13 19:31:02 2010 +0800"
      },
      "committer": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Sat May 15 12:40:54 2010 +0800"
      },
      "message": "Add camera focus distances API.\n\nApplications can use this API to estimate the distance\nbetween the subject and the camera.\n\nbug:1955650\nChange-Id: Ie6c8ea4971759cab6c9bcdda2c5ceb5925791c27\n"
    },
    {
      "commit": "4606d5dd95b3dcf3a874f54e6d3d8d1ee95fcdca",
      "tree": "842125fd1c897093f236329f2407381fc657091b",
      "parents": [
        "5d75a181884ad8dbcdf238af422e5c38467b4410",
        "51c66aa4ce2797e21e880824e08de3b1228b3b0a"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri May 14 18:35:34 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 14 18:35:34 2010 -0700"
      },
      "message": "Merge \"fix uninitialized variable in DisplayHardware\" into kraken"
    },
    {
      "commit": "51c66aa4ce2797e21e880824e08de3b1228b3b0a",
      "tree": "aa072b9a1cee264d661fc1e6c75fbe1f0f2ed624",
      "parents": [
        "d95266c6a8f059770b1799958530156a2f537468"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri May 14 18:33:30 2010 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri May 14 18:33:30 2010 -0700"
      },
      "message": "fix uninitialized variable in DisplayHardware\n\nthis fixes the issue where the display is all messed-up sometimes.\n\nChange-Id: I20be91b5166bfff0c6d353a777351842c9df8e95\n"
    },
    {
      "commit": "a250f20b02c85fd50dd0d7fb1290e7a95ea2893f",
      "tree": "0499d1c824d4f3e21f1b8c35687048c5f66aca21",
      "parents": [
        "14d8db969bb01e51b67c4c38ae2bb44baf25fe49",
        "ec67275e5f7edb2fe4e6f76ab8b4e01e8990bc92"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Fri May 14 16:53:05 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 14 16:53:05 2010 -0700"
      },
      "message": "Merge \"Delete legacy setDefine API.\""
    },
    {
      "commit": "ec67275e5f7edb2fe4e6f76ab8b4e01e8990bc92",
      "tree": "64f9f7040afae6890e966387cef6f848d18f7349",
      "parents": [
        "b42315d37ab22e64ef88d3aed38ed75fd7071eed"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Fri May 14 16:51:22 2010 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Fri May 14 16:51:22 2010 -0700"
      },
      "message": "Delete legacy setDefine API.\n\nChange-Id: I1bae13533ab9efea3d3b0ebb6a3711343e922f8a\n"
    },
    {
      "commit": "c3ae11271dfe253de141608985ea49ee2cf830f4",
      "tree": "944a07c0e7ebaff1f41e2b8e7972f8d429880251",
      "parents": [
        "71491ab2456182072589997e6ccd309c9b4acb5f",
        "b42315d37ab22e64ef88d3aed38ed75fd7071eed"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Fri May 14 16:30:50 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 14 16:30:50 2010 -0700"
      },
      "message": "Merge \"Delete old createFromClass methods. It no longer makes sense to create type info from Java since this cannot be exported to scripts.  The new flow is in the opposite direction.\""
    },
    {
      "commit": "b42315d37ab22e64ef88d3aed38ed75fd7071eed",
      "tree": "83bf21d63651d54b4c30bfa6badbd854d000460e",
      "parents": [
        "f603d212552485c634e25f3556f847dc2b022bd5"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Fri May 14 16:29:20 2010 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Fri May 14 16:29:20 2010 -0700"
      },
      "message": "Delete old createFromClass methods.\nIt no longer makes sense to create type info from Java since this\ncannot be exported to scripts.  The new flow is in the opposite direction.\n\nChange-Id: I9b46e3f57abf84c01326bd9b9b834f3ff0f7c504\n"
    },
    {
      "commit": "71491ab2456182072589997e6ccd309c9b4acb5f",
      "tree": "5f318217c3bb78c6dfeae7688a124bdcadb673a0",
      "parents": [
        "ca4d143146a225a73ef402ea32f82edafc6ce2b7",
        "963b0cdbaf206050fb537c21641c0ee26a48611e"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Fri May 14 16:11:43 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 14 16:11:43 2010 -0700"
      },
      "message": "Merge \"resolved conflicts for merge of cbf26fd3 to master\""
    },
    {
      "commit": "ca4d143146a225a73ef402ea32f82edafc6ce2b7",
      "tree": "22f44d17bd364fb7c11c1cfc70912c309e7de729",
      "parents": [
        "a6418d8bc98c941633fae14afe0140a40b9ce711",
        "f603d212552485c634e25f3556f847dc2b022bd5"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Fri May 14 16:00:04 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 14 16:00:04 2010 -0700"
      },
      "message": "Merge \"Change RS to use the passed surface size rather than EGL size. Its possible that during a resize the EGL information could be stale so caching this is bad.  The surface size should always be correct.\""
    },
    {
      "commit": "963b0cdbaf206050fb537c21641c0ee26a48611e",
      "tree": "60260bc8d86a9dd32b09c341d6b99622610d32b7",
      "parents": [
        "aa8da3dc405dca80c6aff71a7c17f883edea2814",
        "cbf26fd3bc2dc0d6377daf65b498ca11b96e601c"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Fri May 14 15:49:42 2010 -0700"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Fri May 14 15:49:42 2010 -0700"
      },
      "message": "resolved conflicts for merge of cbf26fd3 to master\n\nChange-Id: I1feb7266c1d5cdebbfb8b8fa0d87d986953a20b6\n"
    },
    {
      "commit": "f603d212552485c634e25f3556f847dc2b022bd5",
      "tree": "a2112e01bd2f7d72465717a153216a6d8b6e63f4",
      "parents": [
        "54db59c3594e887a412a24713fc3daa1c2404593"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Fri May 14 15:30:29 2010 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Fri May 14 15:30:29 2010 -0700"
      },
      "message": "Change RS to use the passed surface size rather than EGL size.\nIts possible that during a resize the EGL information could be stale so\ncaching this is bad.  The surface size should always be correct.\n\nChange-Id: Ifd479e1ea70b1cada1a8690c7c82e91aa391b685\n\nConflicts:\n\n\tlibs/rs/rsProgramStore.cpp\n\tlibs/rs/rsProgramStore.h\n"
    },
    {
      "commit": "bfb776acf20652801b88a53f362cb4e0ac517515",
      "tree": "f48b9d737940bbef0a0419ff8d32ae94e3fa80eb",
      "parents": [
        "7450c02a35d7c1f8580f906d6f1c1a11bc5c4fd0",
        "ce2cbe4c9605bfc4843968ff6e9746d23643f031"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Fri May 14 15:28:09 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 14 15:28:09 2010 -0700"
      },
      "message": "Merge \"Get rid of warnings when compiled with -Wformat-security\" into kraken"
    },
    {
      "commit": "aa8da3dc405dca80c6aff71a7c17f883edea2814",
      "tree": "6756be0a6d844ab2fd8afb3c8427012165f41896",
      "parents": [
        "3e4fd9ea19c16050ef78ea55138a114798033f65",
        "a8e0f75b7fe99dd6672bfc958734f4558905c3aa"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Fri May 14 15:15:36 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri May 14 15:15:36 2010 -0700"
      },
      "message": "am a8e0f75b: am 7450c02a: am 900b6157: merge from open-source master\n"
    },
    {
      "commit": "7450c02a35d7c1f8580f906d6f1c1a11bc5c4fd0",
      "tree": "220d07ff6bd81691db9f8089e2f44c520845d9b5",
      "parents": [
        "b42bc06675174d58dabc5efc032cfc43dac10393",
        "900b6157f5dee2ed7b2c73cf320b2baf293230ff"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Fri May 14 15:12:17 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri May 14 15:12:17 2010 -0700"
      },
      "message": "am 900b6157: merge from open-source master\n\nMerge commit \u0027900b6157f5dee2ed7b2c73cf320b2baf293230ff\u0027 into kraken\n\n* commit \u0027900b6157f5dee2ed7b2c73cf320b2baf293230ff\u0027:\n  Only hold a weak pointer on SurfaceComposerClients\n"
    },
    {
      "commit": "900b6157f5dee2ed7b2c73cf320b2baf293230ff",
      "tree": "15fabaeae78d67b8ee40afa76c5fabff20582d2b",
      "parents": [
        "fb580943133d3e9ad3e342b8038726b04686f283",
        "5b9fb5ab7ee81fc9b22f9aaea478db65e9b56c43"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Fri May 14 15:04:52 2010 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Fri May 14 15:04:52 2010 -0700"
      },
      "message": "merge from open-source master\n\nChange-Id: I0249c6d796b35af9ba08cbccd463a1f5cf779ecd\n"
    },
    {
      "commit": "84498a7ab57dd0ffc80bae600ff2b2f1c563c68d",
      "tree": "496205be0b7dc40ecf018a0047d19b70b5d9285c",
      "parents": [
        "060341fa2d36bfcdf5b17890569afebd442aa244",
        "9c192e44c2b6ac00d9798ab35ba30a477535b3a5"
      ],
      "author": {
        "name": "Chih-Chung Chang",
        "email": "chihchung@google.com",
        "time": "Fri May 14 12:08:24 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri May 14 12:08:24 2010 -0700"
      },
      "message": "am 9c192e44: am 29f5d9b6: Merge \"Fix deadlock if the last reference of ICameraClient is removed in ICamera::connect()\" into kraken\n"
    },
    {
      "commit": "29f5d9b61da0f496fc243edfc838f09a9b5c6eaf",
      "tree": "f6e4bbf707f7a79ad77cda3f471336a6babe4f78",
      "parents": [
        "6c034325a856f4cfb1e8b5bc97adbc7f9dffd0a2",
        "553447b8ff949618f299bba38ef04c2b6740f1d3"
      ],
      "author": {
        "name": "Chih-Chung Chang",
        "email": "chihchung@google.com",
        "time": "Fri May 14 12:05:06 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 14 12:05:06 2010 -0700"
      },
      "message": "Merge \"Fix deadlock if the last reference of ICameraClient is removed in ICamera::connect()\" into kraken"
    }
  ],
  "next": "03bb2b9651c466c2cc7143bfeda4f2344e33697d"
}
