)]}'
{
  "log": [
    {
      "commit": "892768fb3efa6bde3f24ffa09a013fa76cab855e",
      "tree": "9b2ad60da260d1235386a4ae6fc47407a3c33250",
      "parents": [
        "df23f37105747918921099e7618b4071358fac92",
        "0b8045425ff58f992046ff2be35bc91001dabf7b"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Wed Aug 19 00:54:00 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Aug 19 00:54:00 2015 +0000"
      },
      "message": "am 0b804542: Merge \"Constrain drawBitmap matrix-to-rect optimization\" into mnc-dev\n\n* commit \u00270b8045425ff58f992046ff2be35bc91001dabf7b\u0027:\n  Constrain drawBitmap matrix-to-rect optimization\n"
    },
    {
      "commit": "e688bf720334f58e0003b4c75b53cc7618adf43f",
      "tree": "b0f0966e938947efa69e5669ca2e7614b5eed107",
      "parents": [
        "f2cb6f7e3ea143ba4acace0821c9d49e363da7eb"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue Aug 18 14:52:52 2015 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue Aug 18 14:53:47 2015 -0700"
      },
      "message": "Constrain drawBitmap matrix-to-rect optimization\n\nbug:22962165\n\nOptimization is not valid if matrix would flip image.\n\nChange-Id: Ieee42390517bd3466b7d94596f0fbbe192ab757e\n"
    },
    {
      "commit": "a975a84498014526d665f3bf7d0a5387f6e8a96b",
      "tree": "985ff02fdaa8fd2890427f750171339bdd2a2839",
      "parents": [
        "36fc79e2f8f4b4e186dd7de4c646639c434f3e8b",
        "70e5db9413f82bf1f000bd99b3d2dbecf6e4ab04"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue Aug 04 19:48:30 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Aug 04 19:48:30 2015 +0000"
      },
      "message": "am 70e5db94: Merge \"Fix crash in kModeProcessNoContext\" into mnc-dev\n\n* commit \u002770e5db9413f82bf1f000bd99b3d2dbecf6e4ab04\u0027:\n  Fix crash in kModeProcessNoContext\n"
    },
    {
      "commit": "95cd24bb9d000eb541bc7ec7e6b53d1c7e313076",
      "tree": "fa74c9a2cb03bfadc84109fbf086189340e9bef7",
      "parents": [
        "fad3c6638168ad65b4f4677a777b8f2dc7e5c9c9"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue Aug 04 11:17:39 2015 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue Aug 04 18:19:11 2015 +0000"
      },
      "message": "Fix crash in kModeProcessNoContext\n\nBug: 22931143\nChange-Id: I9897a28b1edd006aee67ae2343874ad92bbd15a0\n"
    },
    {
      "commit": "2e529712e67b94aefec81d0e081f9c34c4fef3f7",
      "tree": "0c29df6dbd644aa9b859a09034d8da57aae83e99",
      "parents": [
        "ba6cdbfdbbbb6f83052e895a698fcc0d71793b25",
        "c03ab87ac9f721ff22bfe5e9c0cd0e5be64f261e"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue Aug 04 01:00:24 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Aug 04 01:00:24 2015 +0000"
      },
      "message": "am c03ab87a: Merge \"Disable skipping frames on empty damage\" into mnc-dev\n\n* commit \u0027c03ab87ac9f721ff22bfe5e9c0cd0e5be64f261e\u0027:\n  Disable skipping frames on empty damage\n"
    },
    {
      "commit": "6d4d0db312fa8a9fce629dd92aa133c6f8249cf8",
      "tree": "dd6fe51ff86aaf5e281d57cd36011c1f3873e35c",
      "parents": [
        "0faca96f939b8530e5387a30e317d852f39f689f"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Aug 03 15:34:52 2015 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Aug 03 22:47:49 2015 +0000"
      },
      "message": "Disable skipping frames on empty damage\n\nBug: 22592975\n\nOptimization added in MNC is not quite correct, occasionally\nit will fail to repaint when it was supposed to leading\nto buffer corruption. Disable the optimization for now.\n\nChange-Id: I34dfdfb357eda298198043ded7335d4588a003fd\n"
    },
    {
      "commit": "7dfb1d9931fb67ae598be091425b03ded1e16eaa",
      "tree": "1b0208657fbd46b4fe37da68150a8492f422d4f4",
      "parents": [
        "f9dee58395fa72dc3764292aef4937dfcca0a14a",
        "730c0f6591b1c99699e9d0ecf36d696f7d87629f"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Thu Jul 30 19:37:15 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jul 30 19:37:15 2015 +0000"
      },
      "message": "am 730c0f65: Merge \"Fix stencil mask usage in HWUI\" into mnc-dev\n\n* commit \u0027730c0f6591b1c99699e9d0ecf36d696f7d87629f\u0027:\n  Fix stencil mask usage in HWUI\n"
    },
    {
      "commit": "730c0f6591b1c99699e9d0ecf36d696f7d87629f",
      "tree": "060a00f111b35e7c07cecc156e932f7c3d3df04b",
      "parents": [
        "8d1d8fdaa40cc2149604c9947a7ccf1a6a494e36",
        "fa51a0e1ceb496e57f6c234800a3f5e9a2d89142"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Thu Jul 30 19:30:58 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 30 19:30:58 2015 +0000"
      },
      "message": "Merge \"Fix stencil mask usage in HWUI\" into mnc-dev"
    },
    {
      "commit": "fa51a0e1ceb496e57f6c234800a3f5e9a2d89142",
      "tree": "bf40c052cfa1baa141d5a8a6b9c6c30a248e2dfc",
      "parents": [
        "b83b5fa641847ee1d533253ba5e1a3e13913b9d9"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Thu Jul 30 11:05:16 2015 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Thu Jul 30 11:06:53 2015 -0700"
      },
      "message": "Fix stencil mask usage in HWUI\n\nbug:21588246\n\nEnsure we always set the mask before clearing, and removes\nsome unneeded optimizations around mask usage in\ndebug (overdraw) mode.\n\nChange-Id: I71ed06c16f8d9f158953d5aa160098514f0f7f00\n"
    },
    {
      "commit": "e1e94c7d58a176c3250438d4fdd35ef552cfe92a",
      "tree": "50d014a6eb583e0f072c0690cc56075c24c4d6de",
      "parents": [
        "3bb0bb3afc46f88e4372f6912bd4c18547de5a78",
        "fd44b56d599bc6c6e7397dcdfaa6d613805a88cb"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Tue Jul 28 00:16:38 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jul 28 00:16:38 2015 +0000"
      },
      "message": "am fd44b56d: Merge \"AAPT: Fix printing of resource configurations\" into mnc-dev\n\n* commit \u0027fd44b56d599bc6c6e7397dcdfaa6d613805a88cb\u0027:\n  AAPT: Fix printing of resource configurations\n"
    },
    {
      "commit": "5b0f1be0a23011416697efaa7e9c050e466c44f5",
      "tree": "118c1a6aaa6b061299a48f6f62dc245be69b1463",
      "parents": [
        "71bfb27013f983bc4a54f1924af61c07732f994e"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Mon Jul 27 16:53:14 2015 -0700"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Mon Jul 27 17:04:43 2015 -0700"
      },
      "message": "AAPT: Fix printing of resource configurations\n\nPrint out proper, copied configuration. We add fields to ResTable_config\nand if we don\u0027t copy and fill in defaults when reading old configurations,\nwe end up with garbage values. This can potentially cause a crash as well.\n\nBug:22773426\nChange-Id: I64f5ebe73ee72453bcdad3a19e48f8e7ad58e9c2\n"
    },
    {
      "commit": "c5d3dde6c70e7d7e83cad85cfd6720f4017a7498",
      "tree": "bf85989f3cb91ddff580ddb8f66ff1fb84364ace",
      "parents": [
        "0e0d4ec99f8ee9248f5eee3f4596ecbfc80f10c2",
        "8b1154c487c25388107dc024376435f3b0ae2385"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Fri Jul 24 00:02:23 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jul 24 00:02:23 2015 +0000"
      },
      "message": "am 8b1154c4: Merge \"Move updateMatrix() call to animateCommon\" into mnc-dev\n\n* commit \u00278b1154c487c25388107dc024376435f3b0ae2385\u0027:\n  Move updateMatrix() call to animateCommon\n"
    },
    {
      "commit": "49dec430e8a38943c5e934c1e31b724bf53c47c4",
      "tree": "d75a3266a20b4810f179ffa4fd14c7d939182e6d",
      "parents": [
        "a2bf7616044051769df86cf5f0bb4b21dedd5269"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu Jul 23 15:33:12 2015 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu Jul 23 22:37:21 2015 +0000"
      },
      "message": "Move updateMatrix() call to animateCommon\n\nBug: 22667315\n\nHWUI internally always assumes that RenderNode-\u003eproperties()\nhas a fully-baked matrix. However, RenderThread animations violate\nthis and will perform an update of that matrix after they run. This\nwas missing in the fallback scenario where an animation was\nrunning on a View that is detached from the tree.\n\nIf a RenderThread animation is started on an attached view, it becomes\ndetached, and is then re-attached it will crash in the staging\nproperties push. The fix for this is to move the call to updateMatrix\nfrom animate() to animateCommon() so that the animateNoDamage()\npath will similarly perform the necessary matrix update.\n\nChange-Id: I4c899a6f68659342a6515f1d7f20d3c4af65caf0\n"
    },
    {
      "commit": "e5783e58db79f342ae0e264dc9c902cca92fc7bb",
      "tree": "be3b5dc6e36919222473d4d955e0ca783ac592d6",
      "parents": [
        "5a18b4bfe2cf30df2e18047c155fecc6433ed52c",
        "2abf0f24af60b8644d5b61eed9666793083546ee"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu Jul 23 19:20:47 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jul 23 19:20:47 2015 +0000"
      },
      "message": "am 2abf0f24: Fix a race condition that could cause lockup\n\n* commit \u00272abf0f24af60b8644d5b61eed9666793083546ee\u0027:\n  Fix a race condition that could cause lockup\n"
    },
    {
      "commit": "2abf0f24af60b8644d5b61eed9666793083546ee",
      "tree": "7df9cac21e2e15614c366d1a738870846c16ad2b",
      "parents": [
        "b3e407609f567884f9322e7b34461baa14e3f3ae"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu Jul 23 10:27:30 2015 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu Jul 23 17:34:14 2015 +0000"
      },
      "message": "Fix a race condition that could cause lockup\n\nBug: 22676664\n\nIf a task is queued on a worker thread that is busy\nprocessing a task AND a trim memory signal comes along\nprior to the initial task being completed then the\ntasks that were queued prior to the exit request will\nnever be processed.\n\nThis is bad, as when those futures are used later on, such\nas in trying to delete them from the cache, they will block\nwaiting for the orphaned task to be finished.\n\nSimple fix is to just never stop the worker threads. Increase\nRAM usage slightly as we won\u0027t reclaim that stack space, but\nthis cost is fairly small\n\nChange-Id: I818b011f9bc6ba06942fdad81c27656bd97b42d4\n"
    },
    {
      "commit": "9317d0b9904573bdb0d815ec563dd263447f11db",
      "tree": "ebc8fe43d6981e62b16e6640343b5ed74022c26c",
      "parents": [
        "cf6500b9bae461107d5c0c58de511df907d19fb3",
        "1fddd3efa9ac10e794d7bdf457b7b52c7e4614f7"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue Jul 21 21:04:45 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jul 21 21:04:45 2015 +0000"
      },
      "message": "am 1fddd3ef: Merge \"Mark isInUse per-window\" into mnc-dev\n\n* commit \u00271fddd3efa9ac10e794d7bdf457b7b52c7e4614f7\u0027:\n  Mark isInUse per-window\n"
    },
    {
      "commit": "00e79c9947b741194ff6c0d08ede9b3befbf9c9d",
      "tree": "26098cf607eaef09a94855aec4ccdd9d8789fd55",
      "parents": [
        "29cf9aea5490c42b85aaaa98b6784daff82629f8"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue Jul 21 10:23:59 2015 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue Jul 21 10:46:54 2015 -0700"
      },
      "message": "Mark isInUse per-window\n\nBug: 22509159\nChange-Id: I0ae0f1fa582ee38dcb9f24ca20f0b4d0c57ccb32\n"
    },
    {
      "commit": "b6e41a08826d01dba3ad30c14e72e3531d22d0ad",
      "tree": "f68a4c9ae332b6491f94f3d5cfcc390b223713d5",
      "parents": [
        "1f72739a0b546d8a26ec0f704fcfeaf9d051fd37",
        "0bb5c26bcea4b171583e57134b9717c77fbdcb14"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Sat Jul 18 00:07:13 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sat Jul 18 00:07:13 2015 +0000"
      },
      "message": "am 0bb5c26b: Merge \"Fix AssetAtlas usage in BitmapShaders\" into mnc-dev\n\n* commit \u00270bb5c26bcea4b171583e57134b9717c77fbdcb14\u0027:\n  Fix AssetAtlas usage in BitmapShaders\n"
    },
    {
      "commit": "0bb5c26bcea4b171583e57134b9717c77fbdcb14",
      "tree": "f30bfaaa722b76dff1434d4e82416f375cfb1f1e",
      "parents": [
        "57ee4b87fee76d9f85d28a09e370a92b5839a8dd",
        "6ad690e16f8e139bfd29a035b52ab616d813a74b"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Fri Jul 17 23:59:14 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 17 23:59:17 2015 +0000"
      },
      "message": "Merge \"Fix AssetAtlas usage in BitmapShaders\" into mnc-dev"
    },
    {
      "commit": "6ad690e16f8e139bfd29a035b52ab616d813a74b",
      "tree": "8d4493016f1530ce19d30c98d2692b67f2de28e1",
      "parents": [
        "db8fa48ed0864125a07f2bbe078fd60abd875ac7"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Fri Jul 17 15:51:36 2015 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Fri Jul 17 15:53:24 2015 -0700"
      },
      "message": "Fix AssetAtlas usage in BitmapShaders\n\nbug:22521999\n\nChange-Id: I60859748ceee19ebc89ec98845e550ea26e36ecd\n"
    },
    {
      "commit": "7b0fa466b59002342d14030aafb7e2f9473ca14d",
      "tree": "5b4cd0a2750d61718de3d51baad2595ebc672c45",
      "parents": [
        "9236af43d8418459b939049d4e7a092d2b58bff8",
        "0f724601d78d8f36a297333227d9c460e10b3203"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Thu Jul 16 22:23:34 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jul 16 22:23:34 2015 +0000"
      },
      "message": "am 0f724601: Merge \"Fix clip area behavior for REPLACE op\" into mnc-dev\n\n* commit \u00270f724601d78d8f36a297333227d9c460e10b3203\u0027:\n  Fix clip area behavior for REPLACE op\n"
    },
    {
      "commit": "8ce8f3f4d68a7750bc02b5254ebbd8658281e675",
      "tree": "d3a5bcc9fa72f5ccd59a52e3b032c604f4ba1c96",
      "parents": [
        "db8fa48ed0864125a07f2bbe078fd60abd875ac7"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Thu Jul 16 13:07:45 2015 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Thu Jul 16 13:31:41 2015 -0700"
      },
      "message": "Fix clip area behavior for REPLACE op\n\nbug:22291400\n\nWork around clippath-clipped-to-view-bounds behavior by\nimplementing REPLACE op fast path, avoiding the transition to\nSkRegion/SkPath.\n\nChange-Id: I63c1cf961db2d6e3759d83914de1036c9ac7497a\n"
    },
    {
      "commit": "d5612d06c46e0a3e2d1b55cc4288ea6759b96a94",
      "tree": "8c1cb2e2040d7afae06ccdace0b4e87693b9cdcd",
      "parents": [
        "245466b5734546264b0492455fd2f6dc135daf39",
        "ba4f0757779d6e91e52ebee0fd4c847b673a69e2"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu Jul 16 17:01:22 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jul 16 17:01:22 2015 +0000"
      },
      "message": "am ba4f0757: Merge \"Don\\\u0027t crash on makeCurrent fail\" into mnc-dev\n\n* commit \u0027ba4f0757779d6e91e52ebee0fd4c847b673a69e2\u0027:\n  Don\u0027t crash on makeCurrent fail\n"
    },
    {
      "commit": "f2dcc2aecb94e726096256c47b913ed0a57ae7e2",
      "tree": "927778287d0b2d9610ad1efe74fe37e83d6d4032",
      "parents": [
        "30c8245afc8d9558b76e5c86f917c22e02f6e820"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu Jul 16 09:17:59 2015 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu Jul 16 09:17:59 2015 -0700"
      },
      "message": "Don\u0027t crash on makeCurrent fail\n\nBug: 22444755\n\nWindowManager may decide to yank the surface at any point, so\nattempt to kinda handle this\n\nChange-Id: Id2f665d2f0f93bccd4ec977fbf52dca4dc1ec891\n"
    },
    {
      "commit": "e2a5c184e396b748e390672996ebeca25c2b9b83",
      "tree": "b607f28804f135e46e8cd04fd80d743d41531830",
      "parents": [
        "5eaf24126d4496f9a157280007b8bb89500a3ea1",
        "941bcedb4c03832cd54225217697c7b8cba6e07c"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue Jul 14 17:35:50 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jul 14 17:35:50 2015 +0000"
      },
      "message": "am 941bcedb: Merge \"Fix unsafety in SkiaShader storage, and texture unit accounting\" into mnc-dev\n\n* commit \u0027941bcedb4c03832cd54225217697c7b8cba6e07c\u0027:\n  Fix unsafety in SkiaShader storage, and texture unit accounting\n"
    },
    {
      "commit": "e310f83d591dc3fb7bd5c684239481a586f00662",
      "tree": "01ab6dae5ea6d1a2f407f291980f931741a58126",
      "parents": [
        "208934ff010cc2aff7d8fee9237d6cee0e5bb563"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Mon Jul 13 13:34:07 2015 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Mon Jul 13 13:34:07 2015 -0700"
      },
      "message": "Fix unsafety in SkiaShader storage, and texture unit accounting\n\nbug:22390304\n\nFixes two issues:\n\n1) The max texture unit wasn\u0027t large enough to handle the most complex\nComposeShader case (1 for draw primitive, 2 for gradient shader, 1 for\nbitmap shader).\n\n2) If a shader isn\u0027t supported by SkiaShader::store, the shader data\nneeds to be explicitly disabled, so we won\u0027t read uninitilized data\nfrom it when trying to read shader information out.\n\nChange-Id: I29ee7b7c1e07f67db88c1707bdc857daa305e713\n"
    },
    {
      "commit": "8ac76504feb4837ea524b2e62a0bd04c1e266d9a",
      "tree": "0b6fed86cd0b62d6c1dc61c7ffa1518317480f82",
      "parents": [
        "aa70c3328b7683bf6a0fea206124508a32cacf63",
        "9613e9b76410b15b7f2700080a17476bf9f3461c"
      ],
      "author": {
        "name": "Tom Hudson",
        "email": "tomhudson@google.com",
        "time": "Fri Jul 10 12:46:24 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jul 10 12:46:24 2015 +0000"
      },
      "message": "am 9613e9b7: Merge \"New setLocalMatrix() operation for HWUI\" into mnc-dev\n\n* commit \u00279613e9b76410b15b7f2700080a17476bf9f3461c\u0027:\n  New setLocalMatrix() operation for HWUI\n"
    },
    {
      "commit": "9613e9b76410b15b7f2700080a17476bf9f3461c",
      "tree": "35f0b8e04e59ffe2b2463d41f5b9f8d1146a91f6",
      "parents": [
        "0236e6b2d614abd11678de4cec4ed67b582541ff",
        "ac7b6d33d23cb0baaf61c723346198d41f012035"
      ],
      "author": {
        "name": "Tom Hudson",
        "email": "tomhudson@google.com",
        "time": "Fri Jul 10 12:35:10 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 10 12:35:12 2015 +0000"
      },
      "message": "Merge \"New setLocalMatrix() operation for HWUI\" into mnc-dev"
    },
    {
      "commit": "ac7b6d33d23cb0baaf61c723346198d41f012035",
      "tree": "9302223ad4dd2337f6e6b4524fe83032532c20a4",
      "parents": [
        "937edac8e8583023019b625dd426ebf65169e30d"
      ],
      "author": {
        "name": "Tom Hudson",
        "email": "tomhudson@google.com",
        "time": "Tue Jun 30 11:26:13 2015 -0400"
      },
      "committer": {
        "name": "Tom Hudson",
        "email": "tomhudson@google.com",
        "time": "Thu Jul 09 16:15:31 2015 -0400"
      },
      "message": "New setLocalMatrix() operation for HWUI\n\nConcats any matrix passed through from DisplayListCanvas with the\ninitialTransform of the containing RenderNode.\n\nBUG:22189925\n\nChange-Id: I5ea54a6e2a29520c79a8860bde7682694e8595d2\n"
    },
    {
      "commit": "dcf8837d4902ea50f2421eecde64fe55e3d98b28",
      "tree": "7837fb34c2789feb24237de2f123439d31d0a5ee",
      "parents": [
        "4c0c6739d6b22ac84f24d53250e239f5e97b5470",
        "c452654a4571ef010a00cef79f82b6b2179704f6"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed Jul 08 15:40:42 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 08 15:40:44 2015 +0000"
      },
      "message": "Merge \"Restrict number of hwuiTask threads\" into mnc-dr-dev"
    },
    {
      "commit": "127b478ac61eed99894998b38bca82b79b8e56b1",
      "tree": "9c8d52d07e2692ba3bb6ab1fb814ec66cbb3fcff",
      "parents": [
        "5544cb421c38d2f0a966a69d112ca7685aa716f7",
        "e6a15ee3d0c78eb3f2551d73a7d238c3d8d2f075"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Wed Jul 08 01:53:56 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 08 01:53:57 2015 +0000"
      },
      "message": "Merge \"Remove all usage of fmin and fmax\" into mnc-dev"
    },
    {
      "commit": "e6a15ee3d0c78eb3f2551d73a7d238c3d8d2f075",
      "tree": "fb4aa5c04487f1f2c13221937933288e2a3fff44",
      "parents": [
        "61d7acae0cafc265e94a35ad3ba1677f60346de9"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue Jul 07 18:42:17 2015 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue Jul 07 18:42:42 2015 -0700"
      },
      "message": "Remove all usage of fmin and fmax\n\nbug:22208220\n\nRemoves needless call, and upconversion to doubles in multiple places.\n\nChange-Id: I1b949fa5f206446ac34de800154c0147d6bd8034\n"
    },
    {
      "commit": "c452654a4571ef010a00cef79f82b6b2179704f6",
      "tree": "2f6c65842178e128a29aa19dbb03d5c50d1f9a38",
      "parents": [
        "00c713fd379edca0f3b472f55bd5d315bad671fb"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue Jul 07 12:17:50 2015 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue Jul 07 16:19:57 2015 -0700"
      },
      "message": "Restrict number of hwuiTask threads\n\nBug: 22324907\nChange-Id: I0013557ede15949a5bd6f3f75bc5dd023a9f945b\n"
    },
    {
      "commit": "54d1f0439eb0fef47e9e9c7ac3d6ec5b283c4793",
      "tree": "104075b0fe5dd03570fa8290a833db0eccdada4b",
      "parents": [
        "024bce82292786f9b71da488f06a0bb35d029bbf",
        "d2bfcc74fcea6d5ee199da514e075efeeb1165fd"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue Jul 07 19:09:41 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 07 19:09:43 2015 +0000"
      },
      "message": "Merge \"Simplify matrix copy constructor/load\" into mnc-dev"
    },
    {
      "commit": "d2bfcc74fcea6d5ee199da514e075efeeb1165fd",
      "tree": "215cabbc08e089564d9199d518581b0fb15d4c19",
      "parents": [
        "61d7acae0cafc265e94a35ad3ba1677f60346de9"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue Jul 07 09:59:23 2015 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue Jul 07 10:09:35 2015 -0700"
      },
      "message": "Simplify matrix copy constructor/load\n\nbug:22208220\n\nChange-Id: Id096eb8de8da0dd1687d6af9456b16ce2a1a589b\n"
    },
    {
      "commit": "be3fba05e823f740f65b2679929347dc3dd282ad",
      "tree": "8dfd52f0e6297d009dd7e671ac8187a7dfac6996",
      "parents": [
        "a559590043e32f670813e062f042f9e642297edf"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Jul 06 13:49:58 2015 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Jul 06 16:12:46 2015 -0700"
      },
      "message": "Adjust for pipeline stalls\n\nBug: 20853441\n\nCalculating duration that crosses the UI-RT\nsync point will now subtract out the time spent waiting\nin queue under the assumption that this time will be\naccounted for in the previous frame\u0027s metrics\n\nChange-Id: Ia8213f4410638840613f5ae439e98dfb77532a6a\n"
    },
    {
      "commit": "f70a5a78bb98893b87a39d9d187b2cd6200bf229",
      "tree": "d25bc28bedeea1dcf31ceea1a82532c30635a23e",
      "parents": [
        "f3be3ddfd86c362f21948b8253bf8a88a710ed82",
        "5600d579b9b59bb9fab75f20d89ab0e447e85f00"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed Jul 01 23:52:17 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 01 23:52:20 2015 +0000"
      },
      "message": "Merge \"Set go-faster arguments\" into mnc-dev"
    },
    {
      "commit": "d758033368595a65182367ca74d46f42472cb078",
      "tree": "37c77c99bde043ac88443a8d50265014324f8128",
      "parents": [
        "e4ed47087f7efde64bc5764f21d007d0ce98da48",
        "1e4209e3871493ccfb09e43634d4082f49c227be"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed Jul 01 20:54:45 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 01 20:55:23 2015 +0000"
      },
      "message": "Merge \"Use std::sort instead of quickSortX\" into mnc-dev"
    },
    {
      "commit": "5600d579b9b59bb9fab75f20d89ab0e447e85f00",
      "tree": "c55b6c44e1ed86726fda597c20a69e2560dbfdce",
      "parents": [
        "e3fc5415ed65ee7ad451069022b5405361aeb2e7"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed Jul 01 13:51:44 2015 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed Jul 01 13:51:44 2015 -0700"
      },
      "message": "Set go-faster arguments\n\nBug: 22208220\n\nIncreases performance of shadows by yet another\n15% by using more aggressive math optimizations\n\nChange-Id: Ie3fabeae3647632a19ff573bf6b2d7f7a7cef555\n"
    },
    {
      "commit": "d3ecb3e6f04a0f76c886238af6bef1d10b987a42",
      "tree": "301913580215be04d3393b47d12339dcdd1db32e",
      "parents": [
        "a10277e3e4c01e08f53b98eac3c98bf94482b106",
        "df72b63928cc1492b72ba9a4e99d5e714f93ccc6"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Wed Jul 01 18:10:30 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 01 18:10:33 2015 +0000"
      },
      "message": "Merge \"Switch from fminf/fmaxf to std::min/max\" into mnc-dev"
    },
    {
      "commit": "1e4209e3871493ccfb09e43634d4082f49c227be",
      "tree": "b88f538a992e9edb4ecacb92c6b4c56be3a6b4f1",
      "parents": [
        "e3fc5415ed65ee7ad451069022b5405361aeb2e7"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed Jul 01 09:54:47 2015 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed Jul 01 09:54:47 2015 -0700"
      },
      "message": "Use std::sort instead of quickSortX\n\nBug: 22208220\n\nLibcxx has a really good sort algorithm, use that\ninstead. This speeds up shadow tesellation by about 10%.\n\nAlso less code\n\nChange-Id: Iaad424187121d7644076f94ba8a3cf4c110da2f2\n"
    },
    {
      "commit": "df72b63928cc1492b72ba9a4e99d5e714f93ccc6",
      "tree": "38b94479dabc9aea2dfcde3a64348c51bc39cecf",
      "parents": [
        "82b3f67711246ad5beaf7702ce16e9d433406d1e"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue Jun 30 17:56:13 2015 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue Jun 30 17:58:21 2015 -0700"
      },
      "message": "Switch from fminf/fmaxf to std::min/max\n\nbug:22208220\n\nShows considerable improvement in performance, especially in tight\nloops.\n\nChange-Id: I4bcf6584a3c145bfc55e73c9c73dcf6199290b3c\n"
    },
    {
      "commit": "de25a672b18171a3d14315b34dc7c8fcf46ae91e",
      "tree": "3b1d9ec041624c9f2bec3f8e1d319d311baf867c",
      "parents": [
        "82b3f67711246ad5beaf7702ce16e9d433406d1e"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue Jun 30 13:12:24 2015 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue Jun 30 13:24:18 2015 -0700"
      },
      "message": "Saturate alpha values when overlaying glyphs\n\nbug:19062769\n\nGlyphs were stored to the output buffer with the assumption of\nnon-overlap, which is incorrect for certain fonts/strings. Instead,\nblend src into dst, so new glyphs don\u0027t clobber existing content.\n\nChange-Id: I6e22037500e67d5348ee2a43d939416c23c4d1ea\n"
    },
    {
      "commit": "f8d25ea8ebece1d13f71f3e92dac814d02a32b91",
      "tree": "43e0fddd15e7ebdf2a99f18df3f579e9f6a2119c",
      "parents": [
        "daee1e5bdeb6a173c042438f79663c9a84a469b8",
        "b60d3e7856f74c72898b2cba553db0d2e2d1365d"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Fri Jun 26 20:28:34 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 26 20:28:36 2015 +0000"
      },
      "message": "Merge \"Don\u0027t promote functors onto layers due to outline rect clipping\" into mnc-dev"
    },
    {
      "commit": "b60d3e7856f74c72898b2cba553db0d2e2d1365d",
      "tree": "e774f13f701dbfff2f966279712bc23332191434",
      "parents": [
        "bcca4ac4fb4fa66f2e4196437998c08e4dbed1d3"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Thu Jun 25 17:15:16 2015 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Thu Jun 25 17:15:17 2015 -0700"
      },
      "message": "Don\u0027t promote functors onto layers due to outline rect clipping\n\nbug:21320333\n\nChange-Id: Ie70982c88498395148dab6eaca861de66e6207ed\n"
    },
    {
      "commit": "5daee1dc27d7b0eadfddefcaf73da229579fd436",
      "tree": "d4a0266b5958a240d241a38b778bfc79da45bad0",
      "parents": [
        "fd70942147edec7eb512c72c3fd0f89a3d7fa646",
        "1240752c44c21632adaf64f6768669ec6d0ebc8c"
      ],
      "author": {
        "name": "Tenghui Zhu",
        "email": "ztenghui@google.com",
        "time": "Thu Jun 25 21:45:31 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 25 21:45:32 2015 +0000"
      },
      "message": "Merge \"Limit dotProduct value to 1.0f, so acosf would not return NaN.\" into mnc-dev"
    },
    {
      "commit": "1240752c44c21632adaf64f6768669ec6d0ebc8c",
      "tree": "930d6be4b4df16ee3459fd0830bf1cfa9ded0a5b",
      "parents": [
        "9440a6e6bed93e2816647b6834d543fd57181a86"
      ],
      "author": {
        "name": "Lazar Trsic",
        "email": "Lazar.Trsic@imgtec.com",
        "time": "Tue Jun 23 11:46:49 2015 +0200"
      },
      "committer": {
        "name": "ztenghui",
        "email": "ztenghui@google.com",
        "time": "Thu Jun 25 14:22:13 2015 -0700"
      },
      "message": "Limit dotProduct value to 1.0f, so acosf would not return NaN.\n\nCherry pick of b561f39d01c211425bfefaaa7b31ebe097e7ba79 from AOSP master.\n\nDue to precision loss of float math, we sometimes get 1.000001f for\ndotProduct. This causes NaN result from acosf() and floor() funcs.\n\nAt the moment, this does not cause any problems on ARM, as casting\nNaN to int results in 0. On mips however (possibly on x86), such cast\ngives INT_MAX, so crash occurs when trying to use the resulting value.\n\nChange-Id: I8e0285a0306a65b8469d9f4885c19665066fc4c8\n"
    },
    {
      "commit": "0f61c7dcc40276788f58300d5d8ca85be2ce0e59",
      "tree": "6726a44acd823cc9736289b8490b8939edc0c23d",
      "parents": [
        "1979dd631d2da88c5d920013b5162700622bd0d3",
        "34fe3df8519523dbb4bc27010fa57f259d5e868d"
      ],
      "author": {
        "name": "Yusuke Sato",
        "email": "yusukes@google.com",
        "time": "Thu Jun 25 17:33:59 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 25 17:34:01 2015 +0000"
      },
      "message": "Merge \"Let findSupportedAbi and hasRenderscriptBitcode scan only relevant files\" into mnc-dev"
    },
    {
      "commit": "6659ac77edc9b328aacd8b07d656661c3a3f50c9",
      "tree": "816e5f33b39fd6690e53791776e11450138404fd",
      "parents": [
        "ccba036dd37a99c3beaf1cdf58665109c4931b19",
        "3375f8ad30997482317b5ade5618cc8a01b96d7d"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Wed Jun 24 17:57:59 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 24 17:58:01 2015 +0000"
      },
      "message": "Merge \"Avoid over-damaging layer area for multidraws\" into mnc-dev"
    },
    {
      "commit": "3375f8ad30997482317b5ade5618cc8a01b96d7d",
      "tree": "a127539cea3216485ea8797ba3ad1d5447d98899",
      "parents": [
        "bcca4ac4fb4fa66f2e4196437998c08e4dbed1d3"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue Jun 23 17:33:06 2015 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Wed Jun 24 09:43:54 2015 -0700"
      },
      "message": "Avoid over-damaging layer area for multidraws\n\nbug:19608961\n\nChange-Id: Ib7495f155da62a352e9a010a362fd40ec0acad21\n"
    },
    {
      "commit": "a81a0c86473e49df331cc2f6bdcefa980e3c1ec2",
      "tree": "1a74dd9db040e6051d19feb73f0ccaaa9c8f28d1",
      "parents": [
        "e042f952b3dd82fb38749c282e9273c8dc8326df",
        "90fb1f6732a610ad5ff6acdb3bd9ae392c8eac82"
      ],
      "author": {
        "name": "Tom Hudson",
        "email": "tomhudson@google.com",
        "time": "Wed Jun 24 14:53:56 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 24 14:53:58 2015 +0000"
      },
      "message": "Merge \"Sync canvas proxy CTM (b/21945972)\" into mnc-dev"
    },
    {
      "commit": "90fb1f6732a610ad5ff6acdb3bd9ae392c8eac82",
      "tree": "6de48ca292004cd9e3e0d06b9daf2da4d78a3829",
      "parents": [
        "82e595fd6e3a9438b090106c226bb2f8bb2a6254"
      ],
      "author": {
        "name": "Tom Hudson",
        "email": "tomhudson@google.com",
        "time": "Wed Jun 24 09:13:50 2015 -0400"
      },
      "committer": {
        "name": "Tom Hudson",
        "email": "tomhudson@google.com",
        "time": "Wed Jun 24 10:43:16 2015 -0400"
      },
      "message": "Sync canvas proxy CTM (b/21945972)\n\nSkiaCanvasProxy was being created with an identity transform, ignoring\nany transform that may have been applied in Java (or C++) to the\nandroid graphics Canvas it was proxy for. This CL makes sure the\nDisplayListCanvas transform is propagated to the Proxy every time\nasSkCanvas() is called.\n\nWe could instead move the code to the SkiaCanvasProxy constructor\nif we got rid of the cached proxy on DisplayListCanvas; nobody\u0027s\nusing the proxy heavily enough that that should be a performance\nhit at this time.\n\nBUG:21945972\nR\u003ddjsollen@google.com\n\nChange-Id: I99ed1563802a2449bb9939cb67976cd60dd8611c\n"
    },
    {
      "commit": "c686757a183028deef5f27ed6c0412417f59cf35",
      "tree": "5a73b55dc1dde70c815f3966e03e3d8868e883e0",
      "parents": [
        "aef3698f9a80626fc8dc8be5e4d1359cafcc17d2",
        "5ec6a2878b2ad933c5da6fe2341c854155acc24c"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Wed Jun 24 00:12:49 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 24 00:12:51 2015 +0000"
      },
      "message": "Merge \"Unify clipping return value behavior - true if not empty\" into mnc-dev"
    },
    {
      "commit": "5ec6a2878b2ad933c5da6fe2341c854155acc24c",
      "tree": "9f60a3aebc541a4141ee426a02a3293628bb286b",
      "parents": [
        "bcca4ac4fb4fa66f2e4196437998c08e4dbed1d3"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue Jun 23 15:42:12 2015 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue Jun 23 15:42:43 2015 -0700"
      },
      "message": "Unify clipping return value behavior - true if not empty\n\nbug:22035484\n\nChange-Id: I23ecca38554a60c590181290900deb0e2c48cea1\n"
    },
    {
      "commit": "0d99d43e819c90f009077b234572e353f2e453fa",
      "tree": "34d8b3350ad51d202ada468e7f7737d5069603fe",
      "parents": [
        "ff0924c72dabc7072cd85a76a5b26f097107146c",
        "5686bae28926dae6e4b4d380d75d18e77335c9d3"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue Jun 23 18:01:00 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 23 18:01:02 2015 +0000"
      },
      "message": "Merge \"Dump GL errors and crash on failure to allocate texture for layer\" into mnc-dev"
    },
    {
      "commit": "5686bae28926dae6e4b4d380d75d18e77335c9d3",
      "tree": "feb4517efea1d59851ed0e93007695fa643ddade",
      "parents": [
        "bcca4ac4fb4fa66f2e4196437998c08e4dbed1d3"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue Jun 23 10:33:46 2015 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue Jun 23 10:34:54 2015 -0700"
      },
      "message": "Dump GL errors and crash on failure to allocate texture for layer\n\nbug:22029728\n\nChange-Id: Ib6f778975225b36567b12e30967955640ec185b3\n"
    },
    {
      "commit": "34fe3df8519523dbb4bc27010fa57f259d5e868d",
      "tree": "08282d0b6cc64337f57e5d9964bf14d42580fddb",
      "parents": [
        "84a378f256bf7925ceb5d2c039a033d3e59b75df"
      ],
      "author": {
        "name": "Yusuke Sato",
        "email": "yusukes@google.com",
        "time": "Fri Jun 19 17:18:07 2015 -0700"
      },
      "committer": {
        "name": "Yusuke Sato",
        "email": "yusukes@google.com",
        "time": "Mon Jun 22 16:11:32 2015 -0700"
      },
      "message": "Let findSupportedAbi and hasRenderscriptBitcode scan only relevant files\n\nfor better performance. Without the optimization, these two functions\nmay check more than 100k file names in the pre-installed APK files,\nwhich can take a few seconds to finish even on a recent device.\n\nBug: 21957428\nChange-Id: I315fd3c6d5aa1076b993752525de449a9933de12\n"
    },
    {
      "commit": "772687d24206e2fa2deebf0980a932573a624b17",
      "tree": "4d7441b8fad63cc6ea29c24a5cc51e276b5f3bcd",
      "parents": [
        "bcca4ac4fb4fa66f2e4196437998c08e4dbed1d3"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Mon Jun 22 14:51:18 2015 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Mon Jun 22 14:51:18 2015 -0700"
      },
      "message": "Avoid flushing DisplayListCanvas state for noop calls\n\nbug:22006795\n\nChange-Id: I2eceee69772b08f5319ea882be429a5b36860b7d\n"
    },
    {
      "commit": "4600dd053dbdbd4b95f3b11057a1cc55b99f9c77",
      "tree": "c4bb116de6b55b054a73083165c9512fbf21c164",
      "parents": [
        "5e063b1da52cca1b93b19bdf7be694aabf95d336"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Tue Jun 16 12:02:57 2015 +0100"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Wed Jun 17 08:40:25 2015 +0000"
      },
      "message": "ZipFileRO: Use precise widths for zip file types.\n\ngetEntryInfo crashes on 64-bit devices because \"long\" types\nwere being passed int pointers (that pointed to a stack frame)\nthat were reinterpret_cast\u0027ed to long* (sigh.). To fix this issue\nonce and for all, use types with explicitly defined widths.\n\nThis change also removes some dead invariant checking from\nAsset.cpp instead of cleaning it up.\n\nNote that we\u0027ve introduced a wart in NativeLibraryHelper, where\nwe need to deal with zlib\u0027s uLong type, which is \"at least 32 bits\nwide\".\n\nbug: 21622286\n\nChange-Id: Iae675a9601db7aae03a8b80b40321d2cc1d97f50\n"
    },
    {
      "commit": "3f725f0a5abd23833176bdc26fda964e923e75de",
      "tree": "6d043228a90695c33ba52f5a5cab69a80ce1e1c7",
      "parents": [
        "6138a43ca9b312014bc9f57c1802180dc88188b2"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue Jun 16 10:29:31 2015 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue Jun 16 10:29:31 2015 -0700"
      },
      "message": "Fix null deref\n\nBug: 21857172\n\nwillHaveFunctor was assuming that either mStagingDisplayList\nor mDisplayList would be non-null but this isn\u0027t true. Both\ncan be null in some scenarios (notably after a trimMemory)\n\nChange-Id: Ia2915b84cfc907ec9c7cbec54ed6dc26283ec998\n"
    },
    {
      "commit": "4c9dafbfecf00ba3dca0c5de61d889676bfdc7af",
      "tree": "263d7d69e9728c60441e202abc338746088caf06",
      "parents": [
        "1a3048f3677680823b52d3b0d538917d08da8495",
        "a766cb2bce5db9108c0266fbebea6aa18d5713ff"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Fri Jun 12 22:46:19 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 12 22:46:21 2015 +0000"
      },
      "message": "Merge \"Put WebViews with on a HW layer if stencil/shader clipping is needed\" into mnc-dev"
    },
    {
      "commit": "eaef7b6cb14fd8b9886cc66bea272fc3ab9f7312",
      "tree": "3ecf8db2ee5706b63bba6eabf0aad3a591940240",
      "parents": [
        "8a90866a9a70b8610035f38c610585b945ae0871",
        "b1f990de4075866ad8f40849c01d58b2dac8b1e5"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Fri Jun 12 21:23:21 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 12 21:23:23 2015 +0000"
      },
      "message": "Merge \"Fix roundrect clipping / blending ordering\" into mnc-dev"
    },
    {
      "commit": "a766cb2bce5db9108c0266fbebea6aa18d5713ff",
      "tree": "2718003d7dc16d0a5f94aeda1acf40c5eaae8fad",
      "parents": [
        "4e9d9b2a590105035c29f12ecf0689333e6b55e7"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Mon Jun 08 16:49:43 2015 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Fri Jun 12 13:34:58 2015 -0700"
      },
      "message": "Put WebViews with on a HW layer if stencil/shader clipping is needed\n\nbug:17322378\nChange-Id: I0de574bf116b30e2ad4194366e19d47d49708902\n"
    },
    {
      "commit": "b1f990de4075866ad8f40849c01d58b2dac8b1e5",
      "tree": "b4d8c94fd3be3d6cf68479728824e43e379e2cc2",
      "parents": [
        "cc87cfa29c4b38d1f119bdce652918565b0fed0f"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Fri Jun 12 11:28:52 2015 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Fri Jun 12 13:20:37 2015 -0700"
      },
      "message": "Fix roundrect clipping / blending ordering\n\nbug:21803918\n\nAlso, don\u0027t consider rr clipped ops opaque, and put stage\nchecking behind a debug flag.\n\nChange-Id: I9304ae571337a7cf835524682d1a590a21d30fa4\n"
    },
    {
      "commit": "4e9d9b2a590105035c29f12ecf0689333e6b55e7",
      "tree": "250eea350d584e8d280d5923eb2a3ad092d2f3c7",
      "parents": [
        "cc87cfa29c4b38d1f119bdce652918565b0fed0f"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Fri Jun 12 11:07:23 2015 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Fri Jun 12 11:07:23 2015 -0700"
      },
      "message": "Revert to save-layer based alpha if layer would be too large\n\nbug:21011574\nChange-Id: I323f2398188ffc2bbed6a98578d25d7e5f6c337d\n"
    },
    {
      "commit": "475c545fa8ea0d87bc3704ae3c0bf73bb060dcb8",
      "tree": "33ff6bfdf1e1589ef5f4552713a478a7a3a4cde2",
      "parents": [
        "31ed2044e2907954b32148c06b131d3069b1c8ca",
        "37b0824a46157b7e169ad7ec33a46e89c851884c"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue Jun 09 22:30:12 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 09 22:32:33 2015 +0000"
      },
      "message": "Merge \"Upload bitmaps in SkShader* safely\" into mnc-dev"
    },
    {
      "commit": "37b0824a46157b7e169ad7ec33a46e89c851884c",
      "tree": "0fae87101df3a38ff8ef5c125cc6bdb3498bdad9",
      "parents": [
        "4538ef2abcdf672e12f00bd944a816af35f16ed1"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue Jun 09 13:12:40 2015 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue Jun 09 15:27:52 2015 -0700"
      },
      "message": "Upload bitmaps in SkShader* safely\n\nBug: 19412589\nChange-Id: Id50c08ff523d5540f60c39b435c0ab1b4c685655\n"
    },
    {
      "commit": "62043203df362addaf1692657dde1993d88d9b52",
      "tree": "9d6acc99bcdefff1d962bfba5f24055235bf3a01",
      "parents": [
        "623bf636de8f6f53ffa46127ed3fa5477be0a094",
        "4538ef2abcdf672e12f00bd944a816af35f16ed1"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Jun 08 22:51:42 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 08 22:51:43 2015 +0000"
      },
      "message": "Merge \"Delete unused\" into mnc-dev"
    },
    {
      "commit": "4538ef2abcdf672e12f00bd944a816af35f16ed1",
      "tree": "4f5245d1bc8e54b2bc2ead309fa0b45a49a37182",
      "parents": [
        "e50b091df9586c5c41d219ffb0c41fa3f893c329"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Jun 08 15:45:58 2015 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Jun 08 15:45:58 2015 -0700"
      },
      "message": "Delete unused\n\nChange-Id: If27e1eb8e42313eae14df58a24ca54fafb2992fa\n"
    },
    {
      "commit": "37cf07717137a41fd5c3724fe9c44de2f89a7f8c",
      "tree": "588390ca19371b2dfcf13255d514d28696222019",
      "parents": [
        "21a4f17c942165684bc590de594984912459396d",
        "bf72eb80d9e00fe2fa360dff0ef581ea27c8e965"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Mon Jun 08 20:00:24 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 08 20:00:37 2015 +0000"
      },
      "message": "Merge \"Add projection info to RenderNode dumps\" into mnc-dev"
    },
    {
      "commit": "bf72eb80d9e00fe2fa360dff0ef581ea27c8e965",
      "tree": "82c421ae436138b5eece8b2023af1b884a7635d0",
      "parents": [
        "72285e5600fad17c42730d6f84164d8425d4d43c"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Mon Jun 08 11:30:44 2015 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Mon Jun 08 11:39:02 2015 -0700"
      },
      "message": "Add projection info to RenderNode dumps\n\nbug:21502154\n\nAlso fixes several issues around DISPLAY_LIST_DEBUG\n\nChange-Id: I726f5bc071f8c037ffe1b224175fe5c1e2b1c5bd\n"
    },
    {
      "commit": "5b688e848c05d8ce0903348b3644184df3d5711a",
      "tree": "3ceb525605fdd5e107cf37249bb09203fe6a6c81",
      "parents": [
        "3bd053f9780424b0a293881966fd38b226f4b923",
        "e6178208c2190728ac0711904404a237ab21fc51"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Jun 08 18:08:20 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 08 18:08:33 2015 +0000"
      },
      "message": "Merge \"Disable -Werror on Clang\" into mnc-dev"
    },
    {
      "commit": "0f43c3998cd9abbfefea21f3ff2787dfff80ce1d",
      "tree": "2ef5c9fa300839018cd3e0433838b8a0d43d28a1",
      "parents": [
        "41300274cf8efde2ca95d3c767b214d1edb97f8d"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Jun 08 11:03:42 2015 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Jun 08 11:06:18 2015 -0700"
      },
      "message": "Fix clang warnings\n\nBug: 21695880\nChange-Id: I2985a42a52ab27c546b4317ea70f94d1506c5347\n"
    },
    {
      "commit": "e6178208c2190728ac0711904404a237ab21fc51",
      "tree": "535aab292551c29c51a0399db8a5dd379c4bd444",
      "parents": [
        "e50b091df9586c5c41d219ffb0c41fa3f893c329"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Jun 08 11:01:24 2015 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Jun 08 11:01:24 2015 -0700"
      },
      "message": "Disable -Werror on Clang\n\nBug: 21698669\nChange-Id: I90549599ed52cff028a29f56d3d8ffe80c9afab4\n"
    },
    {
      "commit": "41300274cf8efde2ca95d3c767b214d1edb97f8d",
      "tree": "8050e8f5aa281cb3ed3c8f5c325f5b994922f95c",
      "parents": [
        "e50b091df9586c5c41d219ffb0c41fa3f893c329"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed Jun 03 14:42:34 2015 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu Jun 04 10:49:08 2015 -0700"
      },
      "message": "Iterate step of launch \u0026 iterate\n\nBug: 18052916\n\nTweaked colors, merged some categories\nReduced significance of fast frames\nIncreased visual weight of janky frames\n\nChange-Id: I5b4e86164c4d51debad7de0e0f8715dda34c7a60\n"
    },
    {
      "commit": "1b54fb27ac48495ed0b33868fda5776fb49fe0f3",
      "tree": "5e4c41e89b3065437c0e778a73a041cdffed1932",
      "parents": [
        "4575acf1e72827dd6fd6cb645abfb3ba9043fa47"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue Jun 02 17:40:58 2015 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Wed Jun 03 13:42:21 2015 -0700"
      },
      "message": "Delete MAKE_ENUM_FLAGS\n\nbug:21595702\n\nSettle on namespace-enum for consistency. Also removes k prefix.\n\nChange-Id: Ib89f94cb9263de40b6e4636577dca4860867d0d8\n"
    },
    {
      "commit": "2a8bb05a31ddd0d44d8513cba9fbd9b4ef9b97f6",
      "tree": "08f15a4f926c173615a8220201d5bbdf1d1d0c6c",
      "parents": [
        "e7f68c18bf1a1da5d0aa129674fe4f9ecf06ac8c"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed Jun 03 09:52:01 2015 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed Jun 03 09:53:42 2015 -0700"
      },
      "message": "Fix warning\n\nBug: 21608208\nChange-Id: I1d1cf1fbc8c0a4561bf76e307c56be580fb4baef\n"
    },
    {
      "commit": "38f4396ebd1d90fbf9700c634d98964e85a29575",
      "tree": "51e8961fab3f9b32d29d0ddfc4974f3ff01288ce",
      "parents": [
        "da177bb5a0972fec1ecedcb7d9dbd969a1b09b25",
        "53e51e4aa933f9603587e1780f446c18816bf9be"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Wed Jun 03 00:26:59 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 03 00:27:01 2015 +0000"
      },
      "message": "Merge \"Handle shader matrix correctly when ignoring canvas transform\" into mnc-dev"
    },
    {
      "commit": "53e51e4aa933f9603587e1780f446c18816bf9be",
      "tree": "fc4701637c9e17fc2765c162b0b051f56bec68aa",
      "parents": [
        "1e47a8e096fc28dcab0a55bc4f2e6b747bfb1a07"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Mon Jun 01 10:35:35 2015 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue Jun 02 16:28:39 2015 -0700"
      },
      "message": "Handle shader matrix correctly when ignoring canvas transform\n\nbug:20063841\n\nRestores old SkShader matrix behavior from before the Glop refactor.\n\nMany drawing operations draw without sending the canvas transform to\nthe GL shader. In such cases, we need to adapt the matrix sent to the\nSkShader logic to invert the canvas transform that\u0027s built into\nthe mesh.\n\nChange-Id: I42b6f59df36ce46436322b95bf9ad2140795ee58\n"
    },
    {
      "commit": "6058251939e417ed764d76fbde77eefc964d0ee6",
      "tree": "ec5b7b222d704227a23e05ad45fa5d8107a32923",
      "parents": [
        "4e14da5695b5457ae7da53c7f3079c71e37b2e19",
        "bf3c602284f9a344faf185c3a5e94a264ba44c4f"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue Jun 02 23:16:22 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 02 23:16:31 2015 +0000"
      },
      "message": "Merge \"More colors, now with material colors\" into mnc-dev"
    },
    {
      "commit": "bf3c602284f9a344faf185c3a5e94a264ba44c4f",
      "tree": "fdf404c8f4f4859290157229cc1689ed5b0b1df7",
      "parents": [
        "233241f13d5d7f841d3db80408429d4d0a528c78"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue Jun 02 15:55:00 2015 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue Jun 02 16:13:56 2015 -0700"
      },
      "message": "More colors, now with material colors\n\nBug: 18052916\nChange-Id: I66c2573d796338ee7b7d0ddf240b90cc78a71ce5\n"
    },
    {
      "commit": "4db3d17debef68f72d23999d69ae68b75f59dda3",
      "tree": "e6458545b7dfedcb156ac33adba4b6162a3d09a9",
      "parents": [
        "233241f13d5d7f841d3db80408429d4d0a528c78"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue Jun 02 15:58:43 2015 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue Jun 02 15:58:43 2015 -0700"
      },
      "message": "FrameInfo header fixes\n\nBug: 21560187\n\nLog column names as part of output in case of other such\nissues\n\nChange-Id: I16157ed968307e761d416ca54bd7af5453fe67bf\n"
    },
    {
      "commit": "21ef8205a1c741ab4021c2d99c568bed39fc136e",
      "tree": "6eff4390c1ad0474f8d207f83bc6f776d9511171",
      "parents": [
        "55b4b2d5a82ef7999a32b8163340a15085b2df38"
      ],
      "author": {
        "name": "ztenghui",
        "email": "ztenghui@google.com",
        "time": "Thu May 28 16:06:28 2015 -0700"
      },
      "committer": {
        "name": "ztenghui",
        "email": "ztenghui@google.com",
        "time": "Fri May 29 15:12:55 2015 -0700"
      },
      "message": "Tweak the threshold for conic path quads computation.\n\nWe still want it to be related to the threshold for bezier generation.\n\nb/19903239\n\nChange-Id: Ifdce32f1c28ecea9eac98d02c73afa948341fc7d\n"
    },
    {
      "commit": "da28c8681a6868d188431aed626abe9bd6da2502",
      "tree": "2f51f29fa4dd59a8f690ac67072827a57f421062",
      "parents": [
        "b3af4f43d747d214c834ff824fd3116d4728b817",
        "ff29b5a5b9b991868051f0fa065a4ac668e7fa0b"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Thu May 28 22:50:02 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 28 22:50:03 2015 +0000"
      },
      "message": "Merge \"Fix round cap approximation to understand scale\" into mnc-dev"
    },
    {
      "commit": "469fb1efd6408e00f39e5ac98e129f10c2180c7d",
      "tree": "8896c9cdc02c2ea2a351c7f8a5179668aeee0ee1",
      "parents": [
        "1cd7e4c3d0216cfb9a8a685ca8cf6f0d740a9dff"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Thu May 28 15:33:40 2015 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Thu May 28 15:33:40 2015 -0700"
      },
      "message": "Fix build\n\nChange-Id: I7ee28c474aa821eb598f719723d87416a41537b9\n"
    },
    {
      "commit": "1cd7e4c3d0216cfb9a8a685ca8cf6f0d740a9dff",
      "tree": "2ae1662b8d6a4ff711e6ce621e690e4f6204c0f1",
      "parents": [
        "5cd795a9094eb02c983751ecabca6f24b0a01c58",
        "fca52b7583d1e5f5ff8ed06554875d2a30ef56fa"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Thu May 28 22:03:06 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 28 22:03:08 2015 +0000"
      },
      "message": "Merge \"Use path intersection instead of saveLayer+mesh to mask projected ripples\" into mnc-dev"
    },
    {
      "commit": "ff29b5a5b9b991868051f0fa065a4ac668e7fa0b",
      "tree": "3b3ea1b5ebac47aeff99a2df8c74ce69caba74ca",
      "parents": [
        "60bf94e3bef8da0adb4f42043770cef7a608d07d"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Wed May 27 18:17:03 2015 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Wed May 27 18:17:55 2015 -0700"
      },
      "message": "Fix round cap approximation to understand scale\n\nbug:19772120\nChange-Id: I7b944faed1d1e8d5f55453802da57679217d9d9a\n"
    },
    {
      "commit": "1ec5e308a913cd0c54d58fd797274485664781c1",
      "tree": "b9b847b1b65f8be348b882d15a837b6f890d71b6",
      "parents": [
        "1e6d566c5f8500e3639a8f8ceebf0226c07efc13",
        "43a1d31a2837406a437937b340db85c1a05ed1ed"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Wed May 27 19:22:43 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed May 27 19:22:59 2015 +0000"
      },
      "message": "Merge \"Fix assert when dumping view at 0 alpha\" into mnc-dev"
    },
    {
      "commit": "1e6d566c5f8500e3639a8f8ceebf0226c07efc13",
      "tree": "fa7b1732dad9f013f02a5a8f2a86a63cdd0ce655",
      "parents": [
        "06c88b60efd12d3e81c7a9c53d8b995e23d04c5a",
        "5f1356c80a3f0daf436aa4250dcfa8fce3029828"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Wed May 27 19:22:42 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed May 27 19:22:44 2015 +0000"
      },
      "message": "Merge \"Fix GL texture binding for TextureViews\" into mnc-dev"
    },
    {
      "commit": "43a1d31a2837406a437937b340db85c1a05ed1ed",
      "tree": "0567a35635519a9aa7fa5e5db0e68121ac2bc434",
      "parents": [
        "aa1cd25db72297f13539928e8aa45ba992f2f230"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Wed May 27 11:28:14 2015 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Wed May 27 11:28:15 2015 -0700"
      },
      "message": "Fix assert when dumping view at 0 alpha\n\nbug:21461177\n\nChange-Id: Ib4aba7b9641254012471da44aa804813b9679423\n"
    },
    {
      "commit": "5f1356c80a3f0daf436aa4250dcfa8fce3029828",
      "tree": "8fb9a49f4486599bec26d53247aa5f8e77366c43",
      "parents": [
        "aa1cd25db72297f13539928e8aa45ba992f2f230"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Wed May 27 11:06:21 2015 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Wed May 27 11:06:22 2015 -0700"
      },
      "message": "Fix GL texture binding for TextureViews\n\nbug:21431334\n\nShould be explicitly passing target through, to ensure\nGL_EXTERNAL_OES textures are bound correctly.\n\nChange-Id: I997672ae292ea7fc016c02a59a3c7c8358ecfe0b\n"
    },
    {
      "commit": "302abd22468367bcdeb1f85ea8014fe05ed95610",
      "tree": "293b9ffe0fd0159931e39e9867bd36a393040ad1",
      "parents": [
        "165229ba417fd77ccbb4feb3bc3c664d2cac7ce5",
        "4cd44f8110c3b648a7eeb526152b2a50e0a376a1"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed May 27 17:39:17 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed May 27 17:39:18 2015 +0000"
      },
      "message": "Merge \"Enable swapBuffersWithDamage by default\" into mnc-dev"
    },
    {
      "commit": "4cd44f8110c3b648a7eeb526152b2a50e0a376a1",
      "tree": "1b637f53414d0b1ac3faeee487688531cb3ecec8",
      "parents": [
        "f981ea95f2e951a558f73fb941cf006423e52627"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed May 27 10:26:10 2015 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed May 27 10:28:28 2015 -0700"
      },
      "message": "Enable swapBuffersWithDamage by default\n\nBug: 20761426\n\nChange-Id: I520e60ca4f182dea590bc86eebd522e1db7a018a\n"
    },
    {
      "commit": "fca52b7583d1e5f5ff8ed06554875d2a30ef56fa",
      "tree": "e383a2db169421a722fa9c559dd01904e83fa504",
      "parents": [
        "aa1cd25db72297f13539928e8aa45ba992f2f230"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue Apr 28 11:45:59 2015 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue May 26 17:53:16 2015 -0700"
      },
      "message": "Use path intersection instead of saveLayer+mesh to mask projected ripples\n\nbug:14297149\n\nSaveLayer\u0027s performance cost is high, and proportional to the surface\nbeing projected onto. Since ripples (even unbounded ones) are now\nalways projected to the arbitrary background content behind them, this\ncost is especially important to avoid.\n\nThis removes the last semi-secret, saveLayer from the projected\nripple implementation.\n\nAlso fixes the HW test app to correctly demonstrate this projection\nmasking behavior.\n\nAdditionaly, alters PathTessellator to gracefully handle\ncounter-clockwise paths, and simplifies the work done by\nShadowTessellator to ensure all of its paths are counterclockwise.\n\nChange-Id: Ibe9e12812bd10a774e20b1d444a140c368cbba8c\n"
    },
    {
      "commit": "7c7d71b184df5e7081d8b32ca38d2959d1385784",
      "tree": "b369599e025ea7ff6ddd0fd0f5b4763c1e1870cb",
      "parents": [
        "60750d2543a2e007a8b293a78ac0f19e66daf3c6",
        "1e4c8074fa9d1ab867d287b7788e5b83db295a5c"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue May 26 22:08:56 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue May 26 22:08:59 2015 +0000"
      },
      "message": "Merge \"Fix position snapping for drawBitmap(rect, rect)\" into mnc-dev"
    },
    {
      "commit": "1e4c8074fa9d1ab867d287b7788e5b83db295a5c",
      "tree": "98be9dbfb39c29940e6f55626ae5f8b3c9e098bb",
      "parents": [
        "aa1cd25db72297f13539928e8aa45ba992f2f230"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue May 26 14:25:02 2015 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue May 26 15:04:27 2015 -0700"
      },
      "message": "Fix position snapping for drawBitmap(rect, rect)\n\nbug:20669049\nChange-Id: Ied5f1d7e681409b6b7f6f582ed344b479df4c6d7\n"
    },
    {
      "commit": "87d8bb3d85416c28545f94feb1db77875ebe9cf2",
      "tree": "6f8aacdb94d65d8f7b119705f52b7dff4e0eecef",
      "parents": [
        "1ddc95ebb244660244681558d16325771ca56b3c",
        "c08f4ad7859f4ad1685deb23d74afc792686dc28"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue May 26 17:19:01 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue May 26 17:19:03 2015 +0000"
      },
      "message": "Merge \"Unflip TextureView getBitmap readback\" into mnc-dev"
    },
    {
      "commit": "c08f4ad7859f4ad1685deb23d74afc792686dc28",
      "tree": "2a519893d8b14f2cbbfdaa51049d6789040153e9",
      "parents": [
        "aa1cd25db72297f13539928e8aa45ba992f2f230"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Fri May 22 17:18:54 2015 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Fri May 22 17:47:52 2015 -0700"
      },
      "message": "Unflip TextureView getBitmap readback\n\nbug:20165725\n\nChange-Id: I09035f43be140145c54221d6865206ce486994c9\n"
    },
    {
      "commit": "1aa800e884e00f310d375684ef566cc79d7de7d9",
      "tree": "3a5b8e3c1158ea2ceb6fbb3f6eef2550e12c811d",
      "parents": [
        "fa4d547d5813a8f5c298efd089890b5b502df76d"
      ],
      "author": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Fri May 22 12:28:03 2015 -0700"
      },
      "committer": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Fri May 22 12:28:03 2015 -0700"
      },
      "message": "Suppress benign clang warning.\n\nTo unblock continuous clang/llvm builds.\n\nBUG: 21337624\nChange-Id: I38e5d11fd3c44f50430a3a8519c5071674b3df9f\n"
    },
    {
      "commit": "d7db4d767246b41d44995acb93d03d220b53c748",
      "tree": "653c8f5bb3026359be78c2d5083bd2c18f6d30ec",
      "parents": [
        "97bf518f7b818d297a500204627d1ad06127bff1"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed May 20 07:18:55 2015 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed May 20 11:24:57 2015 -0700"
      },
      "message": "Eliminate requireGlContext\n\nBug: 20297820\n\nChange-Id: I37c63bab6f6c0d2337c8c6002046d2ef17e74097\n"
    }
  ],
  "next": "2f1e21d9956c73fac2f2da4705d144342137aa96"
}
