)]}'
{
  "log": [
    {
      "commit": "fddfb9ae03a2730ac5ce27fa4c47b7d3a0285d0f",
      "tree": "3ec21d76715c79bd5faa79dcc1de9e540c8b274d",
      "parents": [
        "1aa9f3cac31a7c2b50fcb3c9259cead8d638ae54",
        "059b4be2a5a5b3fd410f8263e5f5928689c97af7"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 12 22:53:28 2009 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 12 22:53:28 2009 -0800"
      },
      "message": "Merge change Iad79689a into eclair\n\n* changes:\n  Improvements for issue 2197683:\tEnglish IME key-press latency is noticeably higher on passion than sholes\n"
    },
    {
      "commit": "5f8f1487be78064e8d653dd2d105d8dd444d6a35",
      "tree": "7387c11d6ad7a3457582bd184e7b38d6143b83fa",
      "parents": [
        "11fea858b2f2d3f9c40a4da848d7bcee47edde04",
        "a0a40883d0f4bdc0694b236353ad66a4b4ca92fa"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 12 21:29:13 2009 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 12 21:29:13 2009 -0800"
      },
      "message": "Merge change Ia0a40883 into eclair\n\n* changes:\n  Modify the binder to request 1M - 2 pages instead of 1M.  The backing store in the kernel requires a guard page, so 1M allocations fragment memory very badly.  Subtracting a couple of pages so that they fit in a power of two allows the kernel to make more efficient use of its virtual address space.\n"
    },
    {
      "commit": "a0a40883d0f4bdc0694b236353ad66a4b4ca92fa",
      "tree": "826c961cc86ada8cb745258031b137be2f871600",
      "parents": [
        "b602c328c24f82d61038ac1222bd40a3cc7bc900"
      ],
      "author": {
        "name": "Rebecca Schultz Zavin",
        "email": "rebecca@android.com",
        "time": "Fri Oct 30 18:39:55 2009 -0700"
      },
      "committer": {
        "name": "Rebecca Schultz Zavin",
        "email": "rebecca@android.com",
        "time": "Thu Nov 12 16:31:12 2009 -0800"
      },
      "message": "Modify the binder to request 1M - 2 pages instead of 1M.  The backing store\nin the kernel requires a guard page, so 1M allocations fragment memory very\nbadly.  Subtracting a couple of pages so that they fit in a power of\ntwo allows the kernel to make more efficient use of its virtual address space.\n\nSigned-off-by: Rebecca Schultz Zavin \u003crebecca@android.com\u003e\n"
    },
    {
      "commit": "eb4b031804f42d52645d0d74f8ebc806f85a043b",
      "tree": "03b23878f972d71ddb329d80387f42a29df4966d",
      "parents": [
        "59175ac269df2a584241e9786dc70ac35cb973e3"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Thu Nov 12 16:09:45 2009 -0800"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Thu Nov 12 16:09:45 2009 -0800"
      },
      "message": "Make default vertex program correctly track surface size.\n"
    },
    {
      "commit": "3bc47d438171dce294e816366d53bc9eca772c5b",
      "tree": "58c41bf03b538359d7dd70fcd8362195a5405445",
      "parents": [
        "b602c328c24f82d61038ac1222bd40a3cc7bc900"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Thu Nov 12 15:10:25 2009 -0800"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Thu Nov 12 15:10:47 2009 -0800"
      },
      "message": "Defer EGL init until the surface changed call comes in.  Pass w,h along with surface for verification of driver state.\n"
    },
    {
      "commit": "b602c328c24f82d61038ac1222bd40a3cc7bc900",
      "tree": "4b7d06d4c8d46c146e0b3c1e55a5b8a96152c7af",
      "parents": [
        "dffa96f7349a44a5d587656fce5c55386d44b150",
        "85e677572b21e1ae47df9bb31d352effa51b4a46"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 12 13:37:30 2009 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 12 13:37:30 2009 -0800"
      },
      "message": "Merge change I31c52bef into eclair\n\n* changes:\n  Revert change incorrectly submitted as part of change #32153.\n"
    },
    {
      "commit": "90daccf3fd17553209b8951e4e80144f32ab7238",
      "tree": "76a2f42dbc6c2926fcee58a9a35be4904b2a0330",
      "parents": [
        "3e584fc944e3d694b4233450f386bd2a930420bf"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu Nov 05 23:08:00 2009 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Nov 11 16:44:43 2009 -0800"
      },
      "message": "fix [2143798] Need to figure out how to do video on Passion w/ GPU\n\nThis builds on the EGLImage solution. We simply use copybit to convert from the\nYUV frame into an EGLImage created for that purpose and proceed with the\nregular EGLImage code.\nWe need to do this because \"regular\" GL doesn\u0027t support YUV textures.\n\nWe could improve upon this by detecting exacly what the GL supports and bypass\nthis extra step if not required, but we\u0027ll do this later if needed.\n"
    },
    {
      "commit": "baed7274814e09498761ca60c065903e055a3f30",
      "tree": "5f0d1fa68677ceb9df57cf4c06e518df56331258",
      "parents": [
        "b9c40a65c7fb2121d3076a522248574162bf5f8c"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Wed Nov 11 15:36:06 2009 -0800"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Wed Nov 11 15:36:06 2009 -0800"
      },
      "message": "Don\u0027t feed the timezone to RenderScript time functions, let the library figure it out.\n\nBug #2211070.\n\nChange-Id: I5975651fd12399fb8dfe283dfdfaa17569738c7b\n"
    },
    {
      "commit": "059b4be2a5a5b3fd410f8263e5f5928689c97af7",
      "tree": "6363048e00350303104d48e0c5f0bad36c13ad90",
      "parents": [
        "b9c40a65c7fb2121d3076a522248574162bf5f8c"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Nov 09 23:32:22 2009 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Nov 11 12:13:27 2009 -0800"
      },
      "message": "Improvements for issue 2197683:\tEnglish IME key-press latency is noticeably higher on passion than sholes\n\nThis change goes with a kernel driver change that reduces the audio buffer size from 4800 bytes (~27ms) to 3072 bytes (~17ms).\n- The AudioFlinger modifcations in change 0bca68cfff161abbc992fec82dc7c88079dd1a36 have been removed: the short sleep period was counter productive when the AudioTrack is using the call back thread as it causes to many preemptions.\n- AudioFlinger mixer thread now detects long standby exit time and in this case anticipates start by writing 0s as soon as a track is enabled even if not ready for mixing.\n- AudioTrack::start() is modified to start call back thread before starting the IAudioTrack so that thread startup time is masked by IAudioTrack start and mixer thread wakeup time.\n"
    },
    {
      "commit": "73b603546de3dfee89b9dc9dc725d5c9e12ce40a",
      "tree": "a11eac769038fd2d0b6c84a1843ea66808847749",
      "parents": [
        "93572eef41f94f023037482f194db0ab07d0c33a"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Nov 09 04:45:39 2009 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Nov 09 04:45:39 2009 -0800"
      },
      "message": "AudioFlinger: delete Track object when createTrack() fails due to lack of tracks in AudioMixer.\n\nThis problem was encountered as a side effect of issue 2245298.\n"
    },
    {
      "commit": "93572eef41f94f023037482f194db0ab07d0c33a",
      "tree": "8362ca4d04d144c27a9141f774655d88e22f3f68",
      "parents": [
        "644693f4caf2364a0e811dca13304788e2c8fee8",
        "3fdb1267c1623773b4eb5e1b06d5859019275e40"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Nov 08 22:58:34 2009 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Nov 08 22:58:34 2009 -0800"
      },
      "message": "Merge change Ifb9d6df3 into eclair\n\n* changes:\n  More log for issue 2242381.\n"
    },
    {
      "commit": "1dacdd482894bee9fbc1993cbb525fb800750222",
      "tree": "1d60f5999e6217165b7d72d01a24b00584c9af43",
      "parents": [
        "3f857b78fc68e5d700139bdc6078c5333b62a9bc"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@android.com",
        "time": "Sun Nov 08 14:29:02 2009 -0800"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@android.com",
        "time": "Sun Nov 08 14:29:02 2009 -0800"
      },
      "message": "Reset binder service threads\u0027 cgroup/priority after command completion\n\nTo prevent buggy command implementations from poisoning binder threads\u0027\nscheduling class \u0026 priority for future command execution, we now reset the\ncgroup and thread priority to foreground/normal when a binder service thread\nfinishes executing the designated command.\n\nChange-Id: Ibc0ab2485751453f6dc96fdb4eb877fd02796e3f\n"
    },
    {
      "commit": "3fdb1267c1623773b4eb5e1b06d5859019275e40",
      "tree": "131abbc4c398b9008f42a9ba09163c478375c166",
      "parents": [
        "638d86535264b24b54698fca7e18e68571fe0bad"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sat Nov 07 00:01:32 2009 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sat Nov 07 01:18:20 2009 -0800"
      },
      "message": "More log for issue 2242381.\n\nAdded more log in system dump for AudioFlinger and AudioPolicyService to help debug issue 2242381 and other issues where the audio driver hangs.\n"
    },
    {
      "commit": "97b30e2f6239a3ca2b9489ce09320aaf317f9fc8",
      "tree": "db3a8d2c8720cfc9dc303048afb2064e297bda2d",
      "parents": [
        "9eaff61adf15b4e6cced7da3d7c239e2fc41f8ed"
      ],
      "author": {
        "name": "Evan Millar",
        "email": "emillar@google.com",
        "time": "Fri Nov 06 11:25:23 2009 -0800"
      },
      "committer": {
        "name": "Evan Millar",
        "email": "emillar@google.com",
        "time": "Fri Nov 06 11:25:23 2009 -0800"
      },
      "message": "Revert jparks code from IPCThreadState.\n"
    },
    {
      "commit": "85e677572b21e1ae47df9bb31d352effa51b4a46",
      "tree": "9a9adf72cf7906721aba892ae58a228d09afbe19",
      "parents": [
        "f20e9a88a36ced533e96b8873a3321b4d51585ca"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Thu Nov 05 15:49:22 2009 -0800"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Thu Nov 05 15:49:22 2009 -0800"
      },
      "message": "Revert change incorrectly submitted as part of change #32153.\n\nChange-Id: I31c52beff03c0d038a257fc151eff3b8da60eddc\n"
    },
    {
      "commit": "f20e9a88a36ced533e96b8873a3321b4d51585ca",
      "tree": "881f372a7632ac5d2a4a014cbbc49a5de93e4303",
      "parents": [
        "bfa68abc955ed1fe6cf6d98e42f344a8d623fab7",
        "ae8dd29c035fffa6e302bd485d0552f97db39127"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 05 18:42:14 2009 -0500"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 05 18:42:14 2009 -0500"
      },
      "message": "Merge change Idf40f3b0 into eclair\n\n* changes:\n  Prevent crash in Home when using widgets whose ids collide with Home\u0027s resources.\n"
    },
    {
      "commit": "ae8dd29c035fffa6e302bd485d0552f97db39127",
      "tree": "d9a191e0fd8a775d8fbf25081da3563c5c1e0f9d",
      "parents": [
        "4ab2c7770c8e55072ee7a083fa84e318e07c8c3e"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Thu Nov 05 13:36:15 2009 -0800"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Thu Nov 05 15:40:35 2009 -0800"
      },
      "message": "Prevent crash in Home when using widgets whose ids collide with Home\u0027s\nresources.\n\nBug #2228943.\n\nApproved by mcleron, triaged by ryanpc.\n\nChange-Id: Idf40f3b09502ae5d0d3b9a6a72c265a2de2ffca2\n"
    },
    {
      "commit": "0e27b5cadbc9cff87258f14ac40d9c4b365849b3",
      "tree": "228b6d6dd83cd2b4739960dac00ee1dc864aecc2",
      "parents": [
        "f476c480cdf41be9989c3cfbc3b92038d11e7569"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Thu Nov 05 12:44:58 2009 -0800"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Thu Nov 05 12:44:58 2009 -0800"
      },
      "message": "Fix texture upload bug for narrow texture of less than 32bpp.\n"
    },
    {
      "commit": "2867746d7b59579ecf7b2de41e42fc1ca88d04d9",
      "tree": "3060ea65ae476e8a2d866ce276efee571d725410",
      "parents": [
        "7ed0ceeba54712f76e9a4f2dd4c9197d76813488"
      ],
      "author": {
        "name": "Jason Parks",
        "email": "jparks@google.com",
        "time": "Wed Nov 04 14:25:26 2009 -0800"
      },
      "committer": {
        "name": "Jason Parks",
        "email": "jparks@google.com",
        "time": "Wed Nov 04 14:25:26 2009 -0800"
      },
      "message": "When a thread is about to be put back onto the thread pool ensure that it is in the foreground cgroup.\n"
    },
    {
      "commit": "efd9b6fb2e0f31b50db089352118e5daeb268879",
      "tree": "9b1099e2c01a1d1843093dbd2db74171e39028e9",
      "parents": [
        "83665194abceeb7681cb7ac49a4b71aa6e96b1b1"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Tue Nov 03 13:58:36 2009 -0800"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Tue Nov 03 14:15:28 2009 -0800"
      },
      "message": "Support applications changing the surface attached to the RS.\n"
    },
    {
      "commit": "83665194abceeb7681cb7ac49a4b71aa6e96b1b1",
      "tree": "faae45c0dbbf457142b6286a3022d96565b4c1bd",
      "parents": [
        "c6e88afb3eda9da97f65b2a2f32e6a12c18301ba",
        "9d5e03db9929271f56ac4a0078d9474d7011efcd"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 03 16:56:31 2009 -0500"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 03 16:56:31 2009 -0500"
      },
      "message": "Merge change I9d5e03db into eclair\n\n* changes:\n  Fix RS bugs.  We were holding a pointer to the script text from the java vm. Move freeing of objects to before context teardown to allow allocations to clean up their data.\n"
    },
    {
      "commit": "c6e88afb3eda9da97f65b2a2f32e6a12c18301ba",
      "tree": "e83c3e99f889787430da9da39b4df737550936a4",
      "parents": [
        "b96a9d9296925fef6a1c0e5ad4d847d96bf9acb5",
        "dabcf4151adeb1376ce3b6c9f4b060f9b7fd8a16"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 03 16:29:22 2009 -0500"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 03 16:29:22 2009 -0500"
      },
      "message": "Merge change If2fdad3b into eclair\n\n* changes:\n  Add a warning when we leave threads in the binder thread pool in the background scheduling group.\n"
    },
    {
      "commit": "dabcf4151adeb1376ce3b6c9f4b060f9b7fd8a16",
      "tree": "1fcf1df262a9bc4b707c33e5ab7139c5a23b6f9a",
      "parents": [
        "d2c68794364120d0531667e797f078416ebef3f5"
      ],
      "author": {
        "name": "Jason Parks",
        "email": "jparks@google.com",
        "time": "Tue Nov 03 12:14:38 2009 -0800"
      },
      "committer": {
        "name": "Jason Parks",
        "email": "jparks@google.com",
        "time": "Tue Nov 03 13:10:15 2009 -0800"
      },
      "message": "Add a warning when we leave threads in the binder thread pool in the background scheduling group.\n"
    },
    {
      "commit": "9d5e03db9929271f56ac4a0078d9474d7011efcd",
      "tree": "8052ee61aa0c6b7a1fc1ebdfcee1ea8f32a3dd5b",
      "parents": [
        "c4918c30147d72c44e9a2a9fe7b9cbe88948677a"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Tue Nov 03 11:25:42 2009 -0800"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Tue Nov 03 11:25:42 2009 -0800"
      },
      "message": "Fix RS bugs.  We were holding a pointer to the script text from the java vm. Move freeing of objects to before context teardown to allow allocations to clean up their data.\n"
    },
    {
      "commit": "f4ee40e26ec43e17359ff5788565349a9aa71908",
      "tree": "dca4b87fd01acc9c0897e3d5553e3cbcd11cc585",
      "parents": [
        "8637759a1d34a4adda292579d5f8790587659235"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Nov 02 10:29:02 2009 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Nov 03 09:33:35 2009 -0800"
      },
      "message": "Log for issue 2203561.\n\nImplemented AudioPolicyService dump().\nAdded detailed dump for AudioPolicyManageriGeneric when AudioPolicyService is dumped.\n"
    },
    {
      "commit": "8637759a1d34a4adda292579d5f8790587659235",
      "tree": "5146d928142d0c3f246d9cb968db8f5302767bab",
      "parents": [
        "483d29c0ddc9f4c110a8a8788ccd978010d55aa4",
        "36d0184e089831b74de6005f01da9e7b26679bb9"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 02 21:26:54 2009 -0500"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 02 21:26:54 2009 -0500"
      },
      "message": "Merge change I36d0184e into eclair\n\n* changes:\n  fix[2228133] pixelflinger ignores the \"vertical stride\" leading to artifacts when playing back video\n"
    },
    {
      "commit": "36d0184e089831b74de6005f01da9e7b26679bb9",
      "tree": "8a6cb7b2f9e5c53db29bc818a403b26add0c66fe",
      "parents": [
        "989b76aadd92538c7ab4ca00c34508b42fda8cef"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Nov 02 17:48:33 2009 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Nov 02 17:48:33 2009 -0800"
      },
      "message": "fix[2228133] pixelflinger ignores the \"vertical stride\" leading to artifacts when playing back video\n\nwe lost the concept of vertical stride when moving video playback to EGLImage.\nHere we bring it back in a somewhat hacky-way that will work only for the\nsoftgl/mdp backend.\n"
    },
    {
      "commit": "dfc7244aa874ae31cc13758e1e2cf6112f7a66b4",
      "tree": "1df29e6222cdebda7880d145104f62a92346281d",
      "parents": [
        "a229cedadd6c3b8ab7f2d8b7b45638753e834992"
      ],
      "author": {
        "name": "Dima Zavin",
        "email": "dima@android.com",
        "time": "Mon Nov 02 16:02:43 2009 -0800"
      },
      "committer": {
        "name": "Dima Zavin",
        "email": "dima@android.com",
        "time": "Mon Nov 02 16:36:45 2009 -0800"
      },
      "message": "libbinder: MemoryHeapPmem: honor the NO_CACHING flag when creating a client heap\n\nChange-Id: Ia7beb800f5a24beaa4b7f3032b486d4ed1991b23\nSigned-off-by: Dima Zavin \u003cdima@android.com\u003e\n"
    },
    {
      "commit": "03e778b913adfb450889c51adf042388ada7c5f8",
      "tree": "265288f146f049a7619ee55e8b1c5a39d05ccac2",
      "parents": [
        "d4649b2f8ea8285a4eb3c47e87520c7835e6c672",
        "c4918c30147d72c44e9a2a9fe7b9cbe88948677a"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 02 18:05:55 2009 -0500"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 02 18:05:55 2009 -0500"
      },
      "message": "Merge change Ic4918c30 into eclair\n\n* changes:\n  Fix a build break.  Too many branches to keep track of.\n"
    },
    {
      "commit": "c4918c30147d72c44e9a2a9fe7b9cbe88948677a",
      "tree": "7cfd2562d264ec28b68dda8102c90ea7e4022e06",
      "parents": [
        "b7a6c4340a35b7cc4ceeeccf6cc01ed82c99a8ba"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Mon Nov 02 15:05:04 2009 -0800"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Mon Nov 02 15:05:04 2009 -0800"
      },
      "message": "Fix a build break.  Too many branches to keep track of.\n"
    },
    {
      "commit": "d4649b2f8ea8285a4eb3c47e87520c7835e6c672",
      "tree": "989351c280eca4db14de2ddc069bd03c230b0d5b",
      "parents": [
        "1d9246e8bb8de624e14c55dce57e93da18cfd7a8",
        "baef6141a3239c7dd9bad0e2cd8a9ece5eef5a7e"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 02 17:55:43 2009 -0500"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 02 17:55:43 2009 -0500"
      },
      "message": "Merge change Ibaef6141 into eclair\n\n* changes:\n  libbinder: add a NO_CACHING flag to MemoryHeapBase\n"
    },
    {
      "commit": "b7a6c4340a35b7cc4ceeeccf6cc01ed82c99a8ba",
      "tree": "1c359a6e0e15c5843c7835b48c2ac6513aa4f1c4",
      "parents": [
        "ee98c24020c1634b02cde6d333968f04a0de941f"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Mon Nov 02 14:25:10 2009 -0800"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Mon Nov 02 14:25:10 2009 -0800"
      },
      "message": "Fix some leaks.  This fixes the major malloc memory leak in allApps.  Still tracking some much more minor issues.\n"
    },
    {
      "commit": "0bca68cfff161abbc992fec82dc7c88079dd1a36",
      "tree": "cd25d6d4e1e1b1b0471849b2f47c744358955c38",
      "parents": [
        "9efd523c4611c0cf10e712453a699c083a01064c"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Oct 30 11:09:39 2009 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Nov 02 00:13:56 2009 -0800"
      },
      "message": "Fix issue 197683: English IME key-press latency is noticeably higher on passion than sholes. Part 2.\n\nReduce sleep time in AudioFlinger mixer thread when no data has been written to output to speed up startup time when  exiting standby.\n\nThe rest of the modifications for this issues is in kernel driver:\n commit 0dbb0ee136ed8de757df1ae26d84556c1751deae for buffer size modification from 8192 to 4800 bytes.\nAnother kernel improvement that is not submitted yes will reduce delay when audio output is exiting standby.\n"
    },
    {
      "commit": "baef6141a3239c7dd9bad0e2cd8a9ece5eef5a7e",
      "tree": "50df32f2a31006f4ea4572cffdf390012541027b",
      "parents": [
        "05cb5610fdfb7b69cf90a9230853e59b4ae5e219"
      ],
      "author": {
        "name": "Iliyan Malchev",
        "email": "malchev@google.com",
        "time": "Thu Oct 29 22:55:00 2009 -0700"
      },
      "committer": {
        "name": "Iliyan Malchev",
        "email": "malchev@google.com",
        "time": "Fri Oct 30 18:35:47 2009 -0700"
      },
      "message": "libbinder: add a NO_CACHING flag to MemoryHeapBase\n\nThe NO_CACHING flag translates to opening a memory region with O_SYNC.\n\nSigned-off-by: Iliyan Malchev \u003cmalchev@google.com\u003e\n"
    },
    {
      "commit": "9baef73c9b2ea17a4eba997c45e944ac6b9af835",
      "tree": "8952ecb7c0fe6b116a751082387637f12241629f",
      "parents": [
        "d01767f8b7038108f9125cd2122b117db9919824",
        "d8b28e4fcddcacdbd2b69584a4e3aa12f52e8229"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Oct 30 17:54:16 2009 -0400"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Oct 30 17:54:16 2009 -0400"
      },
      "message": "Merge change Id8b28e4f into eclair\n\n* changes:\n  fix [2225964] Android runtime restarted in surfaceflinger/BlurFilter.cpp\n"
    },
    {
      "commit": "d01767f8b7038108f9125cd2122b117db9919824",
      "tree": "ec6353d79a856b6227eeeb474fd9c653cc142d95",
      "parents": [
        "f989c1140bbc84480498df38abec0fafff04e6ee",
        "0b0722f980f40e1ac0929a7f1a6e2df7af983478"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Oct 30 17:54:10 2009 -0400"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Oct 30 17:54:10 2009 -0400"
      },
      "message": "Merge change I56779290 into eclair\n\n* changes:\n  fix[2222341] Soft reset while going back from camcorder settings\n"
    },
    {
      "commit": "f989c1140bbc84480498df38abec0fafff04e6ee",
      "tree": "88fa9b4256d04c5971c6652e04d8bdf9eeea26a9",
      "parents": [
        "1864d01f2be0e82da7d8844fa91bee8880282041",
        "f007a2faa1d765e9b53553a8214179b253e3cbbd"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Oct 30 17:54:03 2009 -0400"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Oct 30 17:54:03 2009 -0400"
      },
      "message": "Merge change If007a2fa into eclair\n\n* changes:\n  return proper error code from eglCreateImageKHR\n"
    },
    {
      "commit": "0b0722f980f40e1ac0929a7f1a6e2df7af983478",
      "tree": "f420562ab6642a7a4fa82e7db0443d10280ef4f2",
      "parents": [
        "f007a2faa1d765e9b53553a8214179b253e3cbbd"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu Oct 29 18:29:30 2009 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Oct 30 14:48:50 2009 -0700"
      },
      "message": "fix[2222341] Soft reset while going back from camcorder settings\n\nadd a way to convert a mapped \"pushbuffer\" buffer to a gralloc handle\nwhich then can be safely used by surfaceflinger, without including\ngralloc_priv.h\n"
    },
    {
      "commit": "08c19beee4c8a2fce3f9d2baa78c9d436bedf65d",
      "tree": "11dc0de528135805a14cd6e63ec4c574160eb101",
      "parents": [
        "824838d74eb0316f6987a1d98d2d9e9fa8d4e15b"
      ],
      "author": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Thu Oct 29 10:19:34 2009 -0700"
      },
      "committer": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Fri Oct 30 10:24:06 2009 -0700"
      },
      "message": "DO NOT MERGE: Another gcc 4.0.3 workaround.\n\nTemporarily make a function public that doesn\u0027t need to be.  When\nhost gcc-4.0.3 is gone from the build servers we can undo this.\n\n(Cherry-picked from eclair-mr2.)\n"
    },
    {
      "commit": "d8b28e4fcddcacdbd2b69584a4e3aa12f52e8229",
      "tree": "2be58bf1eca9c94caeb66a388ef1747d52b94005",
      "parents": [
        "ec1f1e3df1ca5e73e262df479bf91a92f3ccafde"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu Oct 29 20:24:44 2009 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu Oct 29 20:24:44 2009 -0700"
      },
      "message": "fix [2225964] Android runtime restarted in surfaceflinger/BlurFilter.cpp\n\ncrash was due to an unintialized variable, which caused the wrong bluring\nformat to be used and caused a memory overrrun.\n"
    },
    {
      "commit": "f007a2faa1d765e9b53553a8214179b253e3cbbd",
      "tree": "7928e89551e22c634ab697673072128e2a2444ff",
      "parents": [
        "ec1f1e3df1ca5e73e262df479bf91a92f3ccafde"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Oct 28 21:00:29 2009 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu Oct 29 16:45:41 2009 -0700"
      },
      "message": "return proper error code from eglCreateImageKHR\n"
    },
    {
      "commit": "911458a081e098b7b289ed7135e1719733d7e12d",
      "tree": "041c812e679f09c011fa1933efbdc9b00d317b95",
      "parents": [
        "fb872d1af3c775114ac7d241eb1924a9aafbb9df"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Oct 28 15:10:56 2009 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Oct 28 15:10:56 2009 -0700"
      },
      "message": "Fix x offset for boxed textures\n"
    },
    {
      "commit": "73e17015d3cd67c93ccad5d63d31c439ff6fa694",
      "tree": "fa9da336128184f055b012c6e94f4bd13917623a",
      "parents": [
        "8321bdf4dd85b81224d84b0d7a2f53218bf1a250",
        "9042b4564de5477b18e680c7dce13b587a681dd9"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Oct 28 02:42:12 2009 -0400"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Oct 28 02:42:12 2009 -0400"
      },
      "message": "Merge change I8d2de438 into eclair\n\n* changes:\n      fix [2143798] Need to figure out how to do video\n"
    },
    {
      "commit": "7136220b54e68e0c7faac30577ed20b7482481fd",
      "tree": "fb54db17d9c13daa8c2910309465be13470eb8cf",
      "parents": [
        "3333fa4f3d2e1bd3842fe7d41d19557ff9a98372"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Tue Oct 27 14:44:31 2009 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Tue Oct 27 14:44:31 2009 -0700"
      },
      "message": "Fix egl cleanup code on context teardown.\n"
    },
    {
      "commit": "9042b4564de5477b18e680c7dce13b587a681dd9",
      "tree": "04872061371527ef76dbfff6ee0d6c8fdadb99bc",
      "parents": [
        "678cdbe55e0de71436f8aad5f139eafc2ab6f937"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Oct 26 20:12:37 2009 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Oct 27 13:13:29 2009 -0700"
      },
      "message": "    fix [2143798] Need to figure out how to do video\n\n    Use EGLImageKHR instead of copybit directly.\n    We now have the basis to use streaming YUV textures (well, in fact\n    we already are). When/if we use the GPU instead of the MDP we\u0027ll\n    need to make sure it supports the appropriate YUV format.\n\n    Also make sure we compile if EGL_ANDROID_image_native_buffer is not supported\n"
    },
    {
      "commit": "bf96aaadd46fb5b0884070177faa16ec4f22e2ba",
      "tree": "35f0e70d629afe3f56a8e3bd452bcb23b7c9899d",
      "parents": [
        "78a50aa1db6572ba7d9f9d91c6eb16f993c09f40",
        "415f3e2875b8b0b860d0dd6a69ff6868571c36bb"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Oct 24 04:32:28 2009 -0400"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Oct 24 04:32:28 2009 -0400"
      },
      "message": "Merge change Icf10db28 into eclair\n\n* changes:\n  Fix issue 2192181: AudioFlinger must provide separated methods to set VOICE_CALL stream volume and down link audio volume.\n"
    },
    {
      "commit": "382e17d46fc54396a303593f2db3abe1fb911411",
      "tree": "718e2186139053ae9b3cf5dc07c7cbffb6b7cb5d",
      "parents": [
        "dd28d56368441537ec5eb42150516416fdbf10ad"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Oct 21 16:27:21 2009 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Oct 23 15:37:28 2009 -0700"
      },
      "message": "fix [2211532] improves sholes graphics performance\n\nInstead of using glTex{Sub}Image2D() to refresh the textures, we\u0027re using an EGLImageKHR object\nbacked up by a gralloc buffer. The data is updated using memcpy(). This is faster than\nglTex{Sub}Image2D() because the texture is not swizzled. It also uses less memory because\nEGLImageKHW is not limited to power-of-two dimensions.\n"
    },
    {
      "commit": "415f3e2875b8b0b860d0dd6a69ff6868571c36bb",
      "tree": "9ce2631d183fa93c398c4691bbb8dd9a220cb2af",
      "parents": [
        "6270d52c0dded8658733a392f3ef1f521bc5dbee"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Oct 21 08:14:22 2009 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Oct 21 12:29:37 2009 -0700"
      },
      "message": "Fix issue 2192181: AudioFlinger must provide separated methods to set VOICE_CALL stream volume and down link audio volume.\n\nAdded setVoiceVolume() method to AudioSystem, AudioFlinger, IAudioFlinger, AudioPolicyService.\nRemoved call to AudioHardwareInterface::setVoiceVolume() from AudioFlinger::setStreamVolume().\n"
    },
    {
      "commit": "7bb7e99216956d917af1786a3e02a92cac46fc84",
      "tree": "a18f9ff4056dad827b45b774b27d4a5f5d9c5027",
      "parents": [
        "7f66dbcec37bdb154db0e7c95c73ecd257bc38c9",
        "a8ac904d97a008b346390c87e74d44df39b0f320"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Oct 16 17:26:15 2009 -0400"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Oct 16 17:26:15 2009 -0400"
      },
      "message": "Merge change Ia8ac904d into eclair\n\n* changes:\n  fix [2182249] [MR1] valgrind error in surface flinger\n"
    },
    {
      "commit": "741a6100a0de3cbbbb44c4e6ecc8be770e684a1e",
      "tree": "128171563c94ed0925c0ade0936cacdc77317781",
      "parents": [
        "41c19db90e250e2b7cb438904f0e96a0ef455d6d"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Thu Oct 15 18:45:45 2009 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Thu Oct 15 18:45:45 2009 -0700"
      },
      "message": "Fix bug where dirty messages for allocations attached to programVertex objects could be lost.\n"
    },
    {
      "commit": "a8ac904d97a008b346390c87e74d44df39b0f320",
      "tree": "542fe7fccb07a5d9f380c9d169680d38a4f5f445",
      "parents": [
        "53f33d84776a0bad668e361365a7049b16f8a929"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu Oct 15 18:08:15 2009 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu Oct 15 18:08:15 2009 -0700"
      },
      "message": "fix [2182249] [MR1] valgrind error in surface flinger\n"
    },
    {
      "commit": "41c19db90e250e2b7cb438904f0e96a0ef455d6d",
      "tree": "08549838621bf28fcb048d395b3255b7605dda56",
      "parents": [
        "c7412b3b08d62c298dc7c3e5f369f406a3c0eac2"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Thu Oct 15 16:47:31 2009 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Thu Oct 15 16:47:31 2009 -0700"
      },
      "message": "Remove hack in RS that called exit to WAR now fixed driver bugs.  Make gloabal init safe by locking around the critical code.\n"
    },
    {
      "commit": "c7412b3b08d62c298dc7c3e5f369f406a3c0eac2",
      "tree": "4ff8ec640c4a6c05643fb9aeb0ac9bc533ec50ab",
      "parents": [
        "6a17e163a0dca28c1b2f957561e909172b7259c8"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Wed Oct 14 15:43:53 2009 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Thu Oct 15 16:06:42 2009 -0700"
      },
      "message": "Minor bug fixes and add glError check.\n"
    },
    {
      "commit": "6a17e163a0dca28c1b2f957561e909172b7259c8",
      "tree": "7f2687cab01a9b45ad81f86af1e72623320ecd75",
      "parents": [
        "2a39758ecb315a77f05800cc04f7ca65954c9026"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Thu Oct 08 12:55:06 2009 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Thu Oct 15 16:06:42 2009 -0700"
      },
      "message": "Add egl init start message to help debug driver init hangs.\n"
    },
    {
      "commit": "d7fa122dfed376cd9c60eac516e2730acf23f3dd",
      "tree": "6648be549b3a01bfaa8dfccb3ae4344ab1b21f65",
      "parents": [
        "98e0b146b80670b52805b4b210ef5582dad6bb68"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Fri Oct 09 16:05:25 2009 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Fri Oct 09 16:05:25 2009 -0700"
      },
      "message": "Add new RenderScript sample: ImageProcessing.\n\nChange-Id: I5e482bbc34911c940a3a74258f8f8549b1939bc4\n"
    },
    {
      "commit": "80a6a229b33b0868944fe011af2d778e23c83322",
      "tree": "b14ae7e641c595cd2e34e5e4daa63ed6d324f300",
      "parents": [
        "bd324c9bd32a3c86634c1cc1ab8525f46a56b694"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Oct 08 10:58:19 2009 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Oct 08 12:03:51 2009 -0700"
      },
      "message": "Fix issue 2174002: After rejecting Call when device ringtone is mute and playing music, audio is not transfered to BT device.\n\nAdded a workarouond to request the A2DP output standby directly to audio hardware when the sink is suspended as it seems that the suspend request often fails.\n\nAlso take into account resume requests received while a suspend request is pending.\n"
    },
    {
      "commit": "7c12540f09659dec0a4222831ed7e5ab8d7b0cdf",
      "tree": "d955da1b7f0eca66ab4ee27fa8578496e3804bd1",
      "parents": [
        "9af53ea6ef9a986bc65bcd11deb7994f1f4ba8ec",
        "bd2197fb0038acd2dc4b17ad3ed3c69cc29dcce2"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Oct 07 21:18:01 2009 -0400"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Oct 07 21:18:01 2009 -0400"
      },
      "message": "Merge change Ibd2197fb into eclair\n\n* changes:\n  Add script to script call support.  Add exception to catch out of bound index data when added to TriangleMeshBuilder.\n"
    },
    {
      "commit": "bd2197fb0038acd2dc4b17ad3ed3c69cc29dcce2",
      "tree": "af713f6ca8ae06bf5724932461ce98b0721c35af",
      "parents": [
        "dc2ccb82f96b6a7be7a7b262b81d3aa1422f46fa"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Wed Oct 07 18:14:01 2009 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Wed Oct 07 18:14:01 2009 -0700"
      },
      "message": "Add script to script call support.  Add exception to catch out of bound index data when added to TriangleMeshBuilder.\n"
    },
    {
      "commit": "4ff6d01d42fce2dc52b2dec8f59b625b18770bb0",
      "tree": "33c9e5c9c66fd8c2c749eb85a269eaa2ff9da998",
      "parents": [
        "c71413032e1ad1f166861a980d8547d4106f7fa0",
        "46b2df153fccf7f918ee5d7d747c208bdd2d55f4"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Oct 07 21:09:49 2009 -0400"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Oct 07 21:09:49 2009 -0400"
      },
      "message": "Merge change I46b2df15 into eclair\n\n* changes:\n  fix [2164183] sometimes device just wants to stay asleep\n"
    },
    {
      "commit": "0da41a3635180398ae6cbf1ff75575f5dcb6e40b",
      "tree": "b8b806bfc7a287e95ab1d99e60c389d704f89720",
      "parents": [
        "a2de8e31c2693d009db1f9386406758874dd1d40"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Oct 06 15:58:44 2009 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Oct 07 18:03:35 2009 -0700"
      },
      "message": "fix [2170283] SurfaceFlinger crashes on OOM.\n\nwhen running out of memory, a null handle is returned but the error code may not be set.\nIn that case we need to return NO_MEMORY instead of NO_ERROR, so that the calling code\nwon\u0027t try to dereference the null pointer.\n"
    },
    {
      "commit": "46b2df153fccf7f918ee5d7d747c208bdd2d55f4",
      "tree": "1e3121c3916f0a23d15adf8bd10445db629b6ee4",
      "parents": [
        "a2de8e31c2693d009db1f9386406758874dd1d40"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Oct 07 17:58:29 2009 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Oct 07 17:58:29 2009 -0700"
      },
      "message": "fix [2164183] sometimes device just wants to stay asleep\n\nWhen switching rapidily orientation back and forth, surfaces end-up\nacquiring the freeze-lock when the first orientation change happens,\nbut never release it because by the time the 2nd orientation change\ncomes in, the surface size is back to its original size and\ndoesn\u0027t appear to have resized.\n\nwe now always release the freeze-lock when we receive a buffer of the\nexpected size.\n"
    },
    {
      "commit": "e05f07dffa196d6403733b26317faa9f267d518f",
      "tree": "24b7b263644927adbf8203da019f606d86a267c5",
      "parents": [
        "64dd5be583bab8218e54068bbf70edc5fc6087c8"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Oct 07 16:44:10 2009 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Oct 07 16:44:10 2009 -0700"
      },
      "message": "fix [2170319] gmail bulk operation checkbox latency on passion\n\nThis also fixes [2152536] ANR in browser\n\nWhen SF is enqueuing buffers faster than SF dequeues them.\nThe update flag in SF is not counted and under some situations SF will only\ndequeue the first buffer. The state at this point is not technically\ncorrupted, it\u0027s valid, but just delayed by one buffer.\n\nIn the case of the Browser ANR, because the last enqueued buffer was delayed\nthe resizing of the current buffer couldn\u0027t happen.\n\nThe system would always fall back onto its feet if anything -else- in\ntried to draw, because the \"late\" buffer would be picked up then.\n"
    },
    {
      "commit": "460b60c9b064ef02e9eaf56ecf2f266fd7c4089c",
      "tree": "be7f73c6d0b1d0f22cfb171bff02c153ad5a14cd",
      "parents": [
        "773fd13130948397cac5178e16d17975a06a738b"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Oct 06 22:23:23 2009 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Oct 06 22:23:23 2009 -0700"
      },
      "message": "Revert \"temporarily disable the use of glTexImage2D for sw buffers on sholes.\"\n\nThis reverts commit c131c5671965b69b0dee3e4afa3b3dd5e3c0c405.\n\nApproved by Hiroshi\n"
    },
    {
      "commit": "26fe45dcb3df12eda94d93f1473cd6a2f5f345c7",
      "tree": "90e3487050e9ae74e3d5e8922cfd21c70d2f7082",
      "parents": [
        "62443f5f4517ba17d911975e695f1ab75bfdbf77",
        "4961c959aebac31991fd7653853d47dfd79d3472"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 06 22:10:17 2009 -0400"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 06 22:10:17 2009 -0400"
      },
      "message": "Merge change I4961c959 into eclair\n\n* changes:\n  fix [2152536] ANR in browser\n"
    },
    {
      "commit": "4961c959aebac31991fd7653853d47dfd79d3472",
      "tree": "5d2837183bf21c756e84fd28a231a8e0674b76c5",
      "parents": [
        "9d6a685ba939f413a8d3e1e97627593aa1cdf6cb"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Oct 06 19:00:57 2009 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Oct 06 19:00:57 2009 -0700"
      },
      "message": "fix [2152536] ANR in browser\n\nA window is created and the browser is about to render into it the\nvery first time, at that point it does an IPC to SF to request a new\nbuffer. Meanwhile, the window manager removes that window from the\nlist and the shared memory block it uses is marked as invalid.\nHowever, at that point, another window is created and is given the\nsame index (that just go freed), but a different identity and resets\nthe \"invalid\" bit in the shared block. When we go back to the buffer\nallocation code, we\u0027re stuck because the surface we\u0027re allocating for\nis gone and we don\u0027t detect it\u0027s invalid because the invalid bit has\nbeen reset.\n\nIt is not sufficient to check for the invalid bit, I should\nalso check that identities match.\n"
    },
    {
      "commit": "62443f5f4517ba17d911975e695f1ab75bfdbf77",
      "tree": "449644bbac50efbe048b25eea7275b5ea74aab2e",
      "parents": [
        "c404ed2be5d29c8932a3d69b53fea4653c9b868b"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Oct 05 20:29:18 2009 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Oct 06 18:59:35 2009 -0700"
      },
      "message": "Fix issue 2139634: DTMF tones on Sholes popping, hissing (audio latency too high).\n\nThis change is a complement to the main fix in kernel driver for the same issue (partner change #1250).\nIt removes clicks sometimes heard after the end of the tones while audio flinger is sending 0s to the audio output stream.\nThe problem was that the sleep time between two writes was more than the duration of one audio output stream buffer which could cause some underrun.\n\nAlso fixed a recent regression in ToneGenerator that made that the end of previous tone was repeated at the beginning of current one under certain timing circumstances when the maximum tone duration was specified.\n"
    },
    {
      "commit": "c131c5671965b69b0dee3e4afa3b3dd5e3c0c405",
      "tree": "dc600befbe6c77a53b7be2337f6e7d85b4cf1a47",
      "parents": [
        "9d6a685ba939f413a8d3e1e97627593aa1cdf6cb"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Oct 06 17:59:43 2009 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Oct 06 17:59:43 2009 -0700"
      },
      "message": "temporarily disable the use of glTexImage2D for sw buffers on sholes.\n\nwe\u0027re going to first cut a build without this change.\n\nApproved by Dr. Hiroshi.\n"
    },
    {
      "commit": "9d6a685ba939f413a8d3e1e97627593aa1cdf6cb",
      "tree": "cec0f6e25b6e30ac8d4345875ce281a3f0f705ad",
      "parents": [
        "fe7c2a50148ac9f0d6fbe0030fc53f457c10870a",
        "351a7073fb60eb3534ec8c69ab263f057a124500"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 06 20:46:37 2009 -0400"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 06 20:46:37 2009 -0400"
      },
      "message": "Merge changes I430cf57b,I51f02f67,I464f13f3 into eclair\n\n* changes:\n  fix [2168528] enable glTexImage2D code path in SF for software-only buffers\n  fix [2168531] have software-only gralloc buffer side-step the HAL\n  fix [2167050] glTexImage2D code path buggy in SurfaceFlinger\n"
    },
    {
      "commit": "351a7073fb60eb3534ec8c69ab263f057a124500",
      "tree": "a054ba17c87524486ec48c6ac70854a5a5f64240",
      "parents": [
        "6f5f5a095a5a4d42fc656cf8c1e6d0f67594f88d"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Oct 05 18:20:39 2009 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Oct 06 17:24:26 2009 -0700"
      },
      "message": "fix [2168528] enable glTexImage2D code path in SF for software-only buffers\n"
    },
    {
      "commit": "fe7c2a50148ac9f0d6fbe0030fc53f457c10870a",
      "tree": "8ea52285d16acb944b13334937614009a1cfdf1b",
      "parents": [
        "521f4f3af94e3a093a37af887d3e317a526b61a1",
        "996db8dace63c452e5828586415b0dc57cccb3db"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 06 20:18:40 2009 -0400"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 06 20:18:40 2009 -0400"
      },
      "message": "Merge change I996db8da into eclair\n\n* changes:\n  Fix tls crash on startup if more than one RS contexts are created in one process.\n"
    },
    {
      "commit": "996db8dace63c452e5828586415b0dc57cccb3db",
      "tree": "830c10b819407f8539298b40da17ca0557443811",
      "parents": [
        "516c31911578db8ce53529483c3ded918ac7dc6b"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Tue Oct 06 17:16:55 2009 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Tue Oct 06 17:16:55 2009 -0700"
      },
      "message": "Fix tls crash on startup if more than one RS contexts are created in one process.\n"
    },
    {
      "commit": "6f5f5a095a5a4d42fc656cf8c1e6d0f67594f88d",
      "tree": "3e4391ac9de9fe573abe63c88aee3d234b75be32",
      "parents": [
        "6950e428feaccc8164b989ef64e771a99948797a"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Oct 05 18:19:57 2009 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Oct 06 17:00:25 2009 -0700"
      },
      "message": "fix [2168531] have software-only gralloc buffer side-step the HAL\n"
    },
    {
      "commit": "6950e428feaccc8164b989ef64e771a99948797a",
      "tree": "f6520613c5355eef110f3820469d7dc477598629",
      "parents": [
        "521f4f3af94e3a093a37af887d3e317a526b61a1"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Oct 05 17:07:12 2009 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Oct 06 17:00:25 2009 -0700"
      },
      "message": "fix [2167050] glTexImage2D code path buggy in SurfaceFlinger\n\nWhen EGLImage extension is not available, SurfaceFlinger will fallback to using\nglTexImage2D and glTexSubImage2D instead, which requires 50% more memory and an\nextra copy. However this code path has never been exercised and had some bugs\nwhich this patch fix.\n\nMainly the scale factor wasn\u0027t computed right when falling back on glDrawElements.\nWe also fallback to this mode of operation if a buffer doesn\u0027t have the adequate\nusage bits for EGLImage usage.\n\nThis changes only code that is currently not executed. Some refactoring was needed to\nkeep the change clean. This doesn\u0027t change anything functionaly.\n"
    },
    {
      "commit": "968a9571a391a2dbb0512c4fb99d04ab50861753",
      "tree": "bae90c91d0b474c6b71694f6c379311929d81292",
      "parents": [
        "962f253665e0c5cc8a29de9e59ce3992dad02440",
        "516c31911578db8ce53529483c3ded918ac7dc6b"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 06 17:32:13 2009 -0400"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 06 17:32:13 2009 -0400"
      },
      "message": "Merge change I516c3191 into eclair\n\n* changes:\n  Implement data push from scripts.  Fixes the problem where apps would have to poll to monitor a scripts state. Fix bug in StoreState where state could be overridden by the default unless the script used more than one state.\n"
    },
    {
      "commit": "516c31911578db8ce53529483c3ded918ac7dc6b",
      "tree": "eee49f301e720ddfa249375abf611d550a0fba5d",
      "parents": [
        "f7ae77cd67f1a3993b8e56c1af4720a7adf4e69d"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Tue Oct 06 13:58:47 2009 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Tue Oct 06 13:58:47 2009 -0700"
      },
      "message": "Implement data push from scripts.  Fixes the problem where apps would have to poll to monitor a scripts state.\nFix bug in StoreState where state could be overridden by the default unless the script used more than one state.\n\nChange only impacts renderscript and renderscript apps.\n"
    },
    {
      "commit": "36f68b8f24df906c969581b0b8e1a47f95dc03cb",
      "tree": "b1c8987ccd5b30c5527fc9abcfe275f163d8d8c5",
      "parents": [
        "5bba632d877c2878384ff21566c8eb6a1a22f37b"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Mon Sep 28 16:14:58 2009 -0700"
      },
      "committer": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Tue Oct 06 13:25:10 2009 -0700"
      },
      "message": "Add zoom functions and sendCommand.\n\nb2060030\n"
    },
    {
      "commit": "f8e4bc9f7789b98b54fe04df56555ca8c630df70",
      "tree": "21ffd2455c4ce35e916cb9361b767db13aac7903",
      "parents": [
        "8df16d63d4e1c70cf75a9acc4f24e4e1abca5abc",
        "0c4cec7e4df87181486d280c98fba9c0f4774c37"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Oct 02 23:35:12 2009 -0400"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Oct 02 23:35:12 2009 -0400"
      },
      "message": "Merge change I0c4cec7e into eclair\n\n* changes:\n  Attempt to fix [2152536] ANR in browser\n"
    },
    {
      "commit": "7f047786d9e2027a15001a653675dae5a80f9390",
      "tree": "b05e3b88c0b2b134402d6bb51487c3eec8dbc283",
      "parents": [
        "7b16834adc1003f492cd2be4b1bcc3fb73a78c23"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Fri Oct 02 18:18:35 2009 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Fri Oct 02 18:18:35 2009 -0700"
      },
      "message": "Update the SimpleMesh API to support new attribute types.  Also spilt add/set commands to avoid permutation explosion.\n"
    },
    {
      "commit": "0c4cec7e4df87181486d280c98fba9c0f4774c37",
      "tree": "4d3aa4fe0101104a1816af9208d367d588bb4f4d",
      "parents": [
        "7b16834adc1003f492cd2be4b1bcc3fb73a78c23"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Oct 02 18:12:30 2009 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Oct 02 18:12:30 2009 -0700"
      },
      "message": "Attempt to fix [2152536] ANR in browser\n\nThe ANR is caused by SurfaceFlinger waiting for buffers of a removed surface to become availlable.\nWhen it is removed from the current list, a Surface is marked as NO_INIT, which causes SF to return\nimmediately in the above case. For some reason, the surface here wasn\u0027t marked as NO_INIT.\n\nThis change makes the code more robust by always (irregadless or errors) setting the NO_INIT status\nin all code paths where a surface is removed from the list.\n\nAdditionaly added more information in the logs, should this happen again.\n"
    },
    {
      "commit": "9e384dddb8800c9f84f36bf26ec8df298b1d38bd",
      "tree": "675c9652b2c2cecc8dab748baa70d8cf664b11d6",
      "parents": [
        "9b150b74573ce506abd00c692fb42f46980441a3"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Thu Oct 01 16:48:44 2009 -0700"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Thu Oct 01 16:48:44 2009 -0700"
      },
      "message": "Add a test pattern as rollo\u0027s icon\n"
    },
    {
      "commit": "e9ad9a719dc66437ddf021d13e6ca736a23b5413",
      "tree": "eaf8a1b1da324af59924a0d49eb6db36cae5b27c",
      "parents": [
        "5eb7c9d3e880032972c0d03dd34d9432fa7c719d"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Wed Sep 30 17:36:20 2009 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Wed Sep 30 17:40:06 2009 -0700"
      },
      "message": "Implement screen aligned bitmap drawing support.\n"
    },
    {
      "commit": "436344ae12c819f58306ceb94241a266141e1218",
      "tree": "32688c8fbc1d40fe88ef86d034052f9608176d14",
      "parents": [
        "7e1af37c3148112d9c801272bfa6359a005baf6d"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@android.com",
        "time": "Wed Sep 30 16:17:37 2009 -0700"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@android.com",
        "time": "Wed Sep 30 17:07:37 2009 -0700"
      },
      "message": "Turn off most of the backup-related debug logging\n\nThe core logging in BackupManagerService and in the Google backup transport are\nstill enabled at this point.\n\nChange-Id: I10abfa565bbd1097dd3631051b6aca163e4af33a\n"
    },
    {
      "commit": "7e1af37c3148112d9c801272bfa6359a005baf6d",
      "tree": "77c0ecc44f3f069aa5d824c17dab995500a5c76a",
      "parents": [
        "10be7542327e1d4483b33730164e5404ed48d73e",
        "b7d94602e740e2fc9f98b573b5a3547189250599"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 30 19:19:36 2009 -0400"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 30 19:19:36 2009 -0400"
      },
      "message": "Merge change Ibe2085be into eclair\n\n* changes:\n  Fix issue 2153835: AudioFlinger: setParameters() can remain stuck if output thread is terminated.\n"
    },
    {
      "commit": "98a9c56acf1857adaf1773bd91c88a8364fd3fa8",
      "tree": "567d8e955821f2c32bb280408195bb778be89fc0",
      "parents": [
        "a33e3f79259b56b03c7912af35944f34ad190e3c"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Sep 30 14:42:13 2009 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Sep 30 15:15:07 2009 -0700"
      },
      "message": "attempt to work around [2155085, 2150246] stuck in closeTransaction()\n"
    },
    {
      "commit": "b7d94602e740e2fc9f98b573b5a3547189250599",
      "tree": "54aafea60d3f21fbf30b5507d75be9a15c51f327",
      "parents": [
        "486733c1fd564acd6d1b72e38147eb5e6d3a3d71"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Sep 29 11:12:57 2009 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Sep 30 14:48:20 2009 -0700"
      },
      "message": "Fix issue 2153835: AudioFlinger: setParameters() can remain stuck if output thread is terminated.\n\nWait for the parameter set completed condition with a time out in ThreadBase::setParameters().\nAlso lock AudioFlinger mutex before accessing thread list in AudioFlinger::setParameters() and keep a strong reference\non the thread being used in case it is exited while processing the request.\n"
    },
    {
      "commit": "e4d51bb2a9706a08c3160eb39e076a89c225257c",
      "tree": "5f1eb51681c7313f57b5c340b4b3ef1ac2a3c46b",
      "parents": [
        "0100fae14ff12c36eeff07b94cdea5f8756837aa",
        "bd23e30de410761af8c68afd8c4b27990e7a099a"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 30 17:27:18 2009 -0400"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 30 17:27:18 2009 -0400"
      },
      "message": "Merge changes I8851617a,Ie1b6f244,I70cab912,Ibd23e30d into eclair\n\n* changes:\n  fix [2152247] Windows sometimes drawn scaled up.\n  invalidate the surface when the physical changes\n  introduce the notion of the requested size in the Layer state\n  remove unused code\n"
    },
    {
      "commit": "a015c9be1b623749320717ad05352eeb76cc6f11",
      "tree": "8b071558600fdcbec4a14feb49222c2ee3a62d2f",
      "parents": [
        "15f0699504e64c1e290ef8955b1306d2a4a08201",
        "45094a34f014fa79e78eea8ee2091021bf1de209"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 30 17:12:01 2009 -0400"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 30 17:12:01 2009 -0400"
      },
      "message": "Merge change I45094a34 into eclair\n\n* changes:\n  remove dead code\n"
    },
    {
      "commit": "bd23e30de410761af8c68afd8c4b27990e7a099a",
      "tree": "e895c2ed7e53b1a8dd636212f1aeb8128aff7f9f",
      "parents": [
        "70cab91229c3c2ca4bb75ab63b552ac7d1a6a8bb"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Sep 30 14:07:22 2009 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Sep 30 14:07:22 2009 -0700"
      },
      "message": "fix [2152247] Windows sometimes drawn scaled up.\n"
    },
    {
      "commit": "70cab91229c3c2ca4bb75ab63b552ac7d1a6a8bb",
      "tree": "09cfd67a7edd7be37754e5ce5fe6d01b3ffd9f5d",
      "parents": [
        "e1b6f24423d61b7892e4a59f5a65b04231526712"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Sep 30 12:48:47 2009 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Sep 30 12:48:47 2009 -0700"
      },
      "message": "invalidate the surface when the physical changes"
    },
    {
      "commit": "d0ac8c0879a8ba96d7ac393a2776d168009eccf7",
      "tree": "e60075f11d2aec915173627dce3a743dee7e588b",
      "parents": [
        "2a35c8d7017e4a9408a3c3b8ef1145df082d6782"
      ],
      "author": {
        "name": "Dave Sparks",
        "email": "davidsparks@android.com",
        "time": "Wed Sep 30 03:09:03 2009 -0700"
      },
      "committer": {
        "name": "Dave Sparks",
        "email": "davidsparks@android.com",
        "time": "Wed Sep 30 03:09:03 2009 -0700"
      },
      "message": "Reduce the log spew from AudioFlinger due to a certain device that can\u0027t meet latency timing. Bug 2142215.\n"
    },
    {
      "commit": "e1b6f24423d61b7892e4a59f5a65b04231526712",
      "tree": "13ee13a164bea9004a05a76a0d751cbc66b226e7",
      "parents": [
        "8851617aea7d2cd61fd8a8585bd4414a14d71653"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Sep 29 22:39:22 2009 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Sep 29 22:44:28 2009 -0700"
      },
      "message": "introduce the notion of the requested size in the Layer state\n"
    },
    {
      "commit": "8851617aea7d2cd61fd8a8585bd4414a14d71653",
      "tree": "e8bdb24d6c02169891ff6001646acb5a3314b7a2",
      "parents": [
        "45094a34f014fa79e78eea8ee2091021bf1de209"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Sep 29 22:32:36 2009 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Sep 29 22:32:36 2009 -0700"
      },
      "message": "remove unused code"
    },
    {
      "commit": "45094a34f014fa79e78eea8ee2091021bf1de209",
      "tree": "bf30d341e493fcdd5a5f3b1ecd7169be7616bb06",
      "parents": [
        "a39f9188d6c1cdcacef2ab468fd78376171a3447"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Sep 29 15:26:42 2009 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Sep 29 15:26:42 2009 -0700"
      },
      "message": "remove dead code\n"
    },
    {
      "commit": "bd5b57227954e27ca05932721a6917c6edde17b3",
      "tree": "abbe81e222b1cf0186d7e712f7ae7ea410541b8b",
      "parents": [
        "7957eaa69f069781d8067f8806062330572ff82c"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Tue Sep 29 13:17:27 2009 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Tue Sep 29 13:17:27 2009 -0700"
      },
      "message": "absf() -\u003e fabsf() instead of fabs()\n\nChange-Id: I5571a635757295aa1514aeaff72e80cc3dd8752c\n"
    },
    {
      "commit": "ff966d5f6c88a9fba033f1bb5ec087464376534d",
      "tree": "519c001fc1c13d175096b01778f38e9fd8f6638d",
      "parents": [
        "0368334db91e923021df36ae9afb81ed8256abfd",
        "5235cf3f41cfcfe39c7072fddf1ead52db31292d"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Sep 28 21:34:37 2009 -0400"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Sep 28 21:34:37 2009 -0400"
      },
      "message": "Merge change I5235cf3f into eclair\n\n* changes:\n  Fix but processing raster state pragma. rename stateFragmentStore to stateStore\n"
    },
    {
      "commit": "5235cf3f41cfcfe39c7072fddf1ead52db31292d",
      "tree": "e75e82bd4062b49b3c895e81410e97e7a0647830",
      "parents": [
        "3c0dfbab807a459622aeade4940daddf482dec66"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Mon Sep 28 18:12:56 2009 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Mon Sep 28 18:12:56 2009 -0700"
      },
      "message": "Fix but processing raster state pragma.\nrename stateFragmentStore to stateStore\n"
    },
    {
      "commit": "fe1a86df8b1c23e3290f96dce69984bf979a462b",
      "tree": "26a6b2a07b27553efe5d6d905eb3226a50eb5071",
      "parents": [
        "279ba943553ec2368d14e1b3c8a88c36bf17785d"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Mon Sep 28 13:51:12 2009 -0700"
      },
      "committer": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Mon Sep 28 13:51:59 2009 -0700"
      },
      "message": "Change FLASH_MODE_VIDEO_LIGHT to FLASH_MODE_TORCH.\n"
    },
    {
      "commit": "81384bf927c47a4efa653b14273084a13e67e3ac",
      "tree": "8b79fb1636fff36530d7db782e738f47ab301945",
      "parents": [
        "1a3c8950394b98f6f354456830208d70e87b8bb6"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Sun Sep 27 22:47:27 2009 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Sun Sep 27 22:47:32 2009 -0700"
      },
      "message": "don\u0027t emit GL commands when sf is in freeze mode\n\nWe were emitting GL commands, calling composition complete and releasing clients\nwithout ever calling eglSwapBuffers(), which is completely wrong on non-direct\nrenders. This could cause transient drawing artifacts when unfreezing the\nscreen (upon orientaion change for instance) and could also block the clients\nfor ever as they are waiting for their previous buffer to be rendered.\n"
    },
    {
      "commit": "960972d465d6890d51c73fc08dda7fb17825ce7f",
      "tree": "f7ce3c58e036ede073dc4c8f82bf06268cbd7ba4",
      "parents": [
        "41c64ba73cf4dbc14beeaaa618afdd908da8b0cb",
        "c4646e654a18543be4e2f7d98f63bc4e603128e1"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Sep 27 21:47:29 2009 -0400"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Sep 27 21:47:29 2009 -0400"
      },
      "message": "Merge change 27375 into eclair\n\n* changes:\n  Allways dump the list of allocated buffers when an allocation fails.\n"
    },
    {
      "commit": "c4646e654a18543be4e2f7d98f63bc4e603128e1",
      "tree": "334ee9d38c238da62365b10ef6e8a9f83f4a8244",
      "parents": [
        "954e98e023568b354aeec0a54668155ad9083398"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Sun Sep 27 18:44:09 2009 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Sun Sep 27 18:44:09 2009 -0700"
      },
      "message": "Allways dump the list of allocated buffers when an allocation fails.\n\nHopefully this will help us understand cases of failures such as [2148405]\n"
    }
  ],
  "next": "41c64ba73cf4dbc14beeaaa618afdd908da8b0cb"
}
