)]}'
{
  "log": [
    {
      "commit": "516bd5f8622c24d774b72ed3825cdc860cd045d2",
      "tree": "5e4b603791607600f24e2e6d4f641ecc4a1e4989",
      "parents": [
        "4e9f527d1783363fddef60b1be570940bae11794",
        "ff2e03cfcef1e51826f41f513d4aa1d93edd8ec8"
      ],
      "author": {
        "name": "Sean Lu",
        "email": "sean_lu@htc.com",
        "time": "Mon Jun 26 22:59:35 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Jun 26 22:59:35 2017 +0000"
      },
      "message": "Merge \"[Resources] house keeping in TypeList\"\nam: ff2e03cfce\n\nChange-Id: I22b0a87776d794f23f70f2f9d8d885761c0b8d14\n"
    },
    {
      "commit": "83df8423e97498b95368534e4c99f66006d2d06e",
      "tree": "c503ea00e8c2bd12e0817d4203426413ba2842f4",
      "parents": [
        "91464bfe6809bf506fada1ec3822d0f9d69b5bef"
      ],
      "author": {
        "name": "Sean Lu",
        "email": "sean_lu@htc.com",
        "time": "Mon Jun 26 18:19:28 2017 +0800"
      },
      "committer": {
        "name": "Sean Lu",
        "email": "sean_lu@htc.com",
        "time": "Mon Jun 26 18:25:37 2017 +0800"
      },
      "message": "[Resources] house keeping in TypeList\n\nSymptom: Type was freed but still may be access\nRoot Cause: TypeList not cleared\nSolution: clear the TypeList\nProject: AOSP\nNote: None\nTest: Yes\n\nChange-Id: I00225165a30d15a299b7a483ea393b4447d2a3fc\n"
    },
    {
      "commit": "f0d3971021c26baa0e0b1721e71c99a2f98dae1b",
      "tree": "dfdb70549e99d198e9cd2c3fe4bee4820fd7b795",
      "parents": [
        "321163990eef7f9cc4cbbe054fc3b6e21717a558",
        "31443a17e8c615fdad2afa06d5711d6eaac129b3"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed Jun 14 20:25:03 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jun 14 20:25:03 2017 +0000"
      },
      "message": "Merge \"Add a workaround for simulate secondary display\" into oc-dev\nam: 31443a17e8\n\nChange-Id: Ic63e4f48ec55bce9f51089bc41481ab8805ae8c7\n"
    },
    {
      "commit": "a896306c38c4d11c43b967a21db6d74c251b2520",
      "tree": "d02997fd55bdbfbd05a3d09a320aba505c6c887a",
      "parents": [
        "890cb590039774969a79ac7d0b8f27f0bb227e9f"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed Jun 14 10:47:50 2017 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed Jun 14 10:50:14 2017 -0700"
      },
      "message": "Add a workaround for simulate secondary display\n\nTo workaround a deadlock caused by bufferqueue locks\nwe force RenderThread over to use async mode which\nwe enable via eglSwapInterval(0)\n\nBug: 38372997\nTest: steps in the bug\nChange-Id: Ia305f73abbdd64ab0c25d1f7d32792cc6295a0ce\n"
    },
    {
      "commit": "8fee9425e45848920378995ab44cb73717590df3",
      "tree": "a43fc72432befb3c1447ca3ab7cfd7ae3879a36a",
      "parents": [
        "af3829adf41fab571bfe4072a927433b02c0c74b",
        "d1f55f630228fbb49fbd8724d86feb7f9ddd24fb"
      ],
      "author": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Fri Jun 09 04:16:28 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Jun 09 04:16:28 2017 +0000"
      },
      "message": "Merge \"Properly run window animations at vsync-sf (1/2)\" into oc-dev\nam: d1f55f6302\n\nChange-Id: Ibc28f6019637dbc9696c62f1ad1ce4679954fbd5\n"
    },
    {
      "commit": "34a0cdb98eb5561774ea4e7b3b602aad80c4a3cc",
      "tree": "adece5dc12a5ed961ead639525c7c1134ad56829",
      "parents": [
        "245281c056a5b880486671157b48d6c4e5815ce1"
      ],
      "author": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Thu Jun 08 15:40:38 2017 -0700"
      },
      "committer": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Thu Jun 08 17:22:43 2017 -0700"
      },
      "message": "Properly run window animations at vsync-sf (1/2)\n\n- Add new Choreographer instance that runs on vsync-sf\n- Use this new Choreographer for WindowAnimator, and remove all\nthe hacks around it\n\nTest: Open apps and close apps, notice no stutter\nTest: Screen zoom animations\nTest: go/wm-smoke\nBug: 36631902\nChange-Id: I988ae25645effc3ac20efa7cb9b68f23444da0d0\n"
    },
    {
      "commit": "7e206e5d66bb0ddfc70c9d9c7baf0dd2fc6b3ae2",
      "tree": "5500813985cd55e41d6d84fb7b846b261c52da02",
      "parents": [
        "11e44273dcdf905b0cd82d4a75ff1fd3be5b9d21",
        "6890dc95d02f85647179f2c32ec4d9691aaed472"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu Jun 01 23:55:23 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jun 01 23:55:23 2017 +0000"
      },
      "message": "Merge \"Fix ANR \u0026 Crash on Ryu\" into oc-dev\nam: 6890dc95d0\n\nChange-Id: I5f0a2fc7ab40b702e3e81ceb3bebd8ef44d22298\n"
    },
    {
      "commit": "11e44273dcdf905b0cd82d4a75ff1fd3be5b9d21",
      "tree": "7282fc22b129b4f9b7dd8f0db5c9fa0cabc7a4e2",
      "parents": [
        "0956df6ed2dea408651a7a3e25e3a8ab2dc64ada",
        "92ef0a59f84b339e1112e7365521a46b475ff24c"
      ],
      "author": {
        "name": "Arun",
        "email": "arun.demeure@imgtec.com",
        "time": "Thu Jun 01 23:42:06 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jun 01 23:42:06 2017 +0000"
      },
      "message": "Merge \"Optimised hwui rounded corners shader\" am: d7287c96eb am: ed7bdd6549\nam: 92ef0a59f8\n\nChange-Id: I9f5e6ef057ba6049804226d65f2f2f06594efc69\n"
    },
    {
      "commit": "06e9f324ef5b723622647a6f111c38cb2d479869",
      "tree": "1d4e45635bf9eb8c9c18e494f5be25711678ed84",
      "parents": [
        "142a392b75e7bf8e4e880b5cc49d111fd8d82533"
      ],
      "author": {
        "name": "Arun",
        "email": "arun.demeure@imgtec.com",
        "time": "Mon Jan 23 11:59:21 2017 +0000"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Thu Jun 01 13:42:12 2017 -0700"
      },
      "message": "Optimised hwui rounded corners shader\n\nThis is a ~2x performance increase for the rounded corners shader which\nwas previously shader limited even on many high-end GPUs. It simplifies\nthe calculations by pre-dividing by the radius, which also allows to\nmaintain mediump/FP16 precision (this improves performance and might\nimprove image quality on GPUs that don\u0027t support highp e.g. Mali-400).\nIt also uses a conditional in the shader to save much of the work on\nthe vast majority of pixels which are not close to the corners.\n\nTest: manual - visual inspection on fugu (nexus player)\n\nChange-Id: I38f491cfb006e2991ef0b9d6b3d67d2c4d328d44\n"
    },
    {
      "commit": "a67b62e15e20bac6a9664e6e6be923cf82ad4138",
      "tree": "8e8c486e25bf2aaa675de0b50961db30fc0117cd",
      "parents": [
        "f58fae54bfc2c560942e387a010368ccdb02dfd0"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu Jun 01 12:44:58 2017 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu Jun 01 13:00:34 2017 -0700"
      },
      "message": "Fix ANR \u0026 Crash on Ryu\n\nFixes impossible dequeue crash as the wrong\nstart point of the frame was used. We need\nto use the start point for RT, not the start\npoint for the frame.\n\nWorkaround for sysui ANR caused by what appears\nto be a driver bug. Drivers with the bug\nwill have transiently higher memory usage.\nDrivers without the bug will be unaffected.\n\nBug: 62213889\nBug: 62250550\nTest: Manual\n\nChange-Id: I9992b224f84bc1c40834bafff7e0013b38270ae0\n"
    },
    {
      "commit": "55302e2f4ef182c99b753f2fc7097ad61bfdeb6d",
      "tree": "f21fed422598a2eb0efa2f48a8cffb2b8bb1e033",
      "parents": [
        "b67a128206b5dbdbfcadfe46bd323c65f99961f0",
        "944b0c73a405a926547d2711756c1e3c1019fdca"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu Jun 01 06:17:58 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jun 01 06:17:58 2017 +0000"
      },
      "message": "Merge \"Fix dequeus outside of frame drawing\" into oc-dev\nam: 944b0c73a4\n\nChange-Id: Id9152a19194e1817f83a33b14a6cdccaa84dfeb7\n"
    },
    {
      "commit": "32414eea3e5aa55fb251255ecf84b0e54858624f",
      "tree": "9f3517f46d50a730fba39fae2a54dbfda8577336",
      "parents": [
        "f220d95f543d76878aed3f7efb199a5e1c0d9e5a"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed May 31 14:02:50 2017 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed May 31 14:02:50 2017 -0700"
      },
      "message": "Fix dequeus outside of frame drawing\n\nBug: 62213889\nTest: Repro steps in bug\nChange-Id: I8fc407b280ba82c669fc2bb03750cab139adb965\n"
    },
    {
      "commit": "86c40b509922350318c149310ce8544a71c2b15f",
      "tree": "721cbdb09e6ee9b2b0127cf3c7ec394ad60906e4",
      "parents": [
        "d9a707e59dba0c95ceb7eb72c08ac33b4b308a8a",
        "2b81530bd248aa6bc1cad09c1f21fb9650407e3a"
      ],
      "author": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Wed May 31 16:09:50 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed May 31 16:09:50 2017 +0000"
      },
      "message": "Merge \"Don\u0027t crash when presented with non-roundRect clipping outline.\" into oc-dev\nam: 2b81530bd2\n\nChange-Id: I9da0d02131eefdb38b6025d4cdc6fb27ab3c82f2\n"
    },
    {
      "commit": "f209c06d36021a8d049ba0528bbe62254a233636",
      "tree": "ca8390bcbe6a0d760d795272cfa714942af539a5",
      "parents": [
        "70739fb812e2acb9880c008941015a467fca2001"
      ],
      "author": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Fri May 26 12:11:34 2017 -0400"
      },
      "committer": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Fri May 26 12:11:34 2017 -0400"
      },
      "message": "Don\u0027t crash when presented with non-roundRect clipping outline.\n\nWe still won\u0027t clip to the outline to match existing HWUI behavior.\n\nTest: CTS Graphics and hwui_unit_tests pass\nBug: 38411077\nChange-Id: Ia3161df77a4ccaf0e714d2fe1ac12396d1c8f9e9\n"
    },
    {
      "commit": "1f7f8bfddb479ad35073e5e81d56a9c1308cf08e",
      "tree": "74a96b17b2d01307410675ec295a16de87794528",
      "parents": [
        "1684ae9ba56e2c23e8c73ac82fc4215e62464ec9",
        "c1affe14c20a593df4818e927052be4b6b2de1f6"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed May 24 00:48:30 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed May 24 00:48:30 2017 +0000"
      },
      "message": "Merge \"Fix null deref crash\" into oc-dev\nam: c1affe14c2\n\nChange-Id: Ib8e4c34fb38400dc748b463c5ab965d57e260fd0\n"
    },
    {
      "commit": "36393c3e8da725927357d7a235c18e2f6c1aea98",
      "tree": "0faed03799fef7bb64a5d017325e183a1ced1bde",
      "parents": [
        "be67aefca266bfc6aa2573f1f570ceccca7a6b0c"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue May 23 15:32:08 2017 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue May 23 15:32:08 2017 -0700"
      },
      "message": "Fix null deref crash\n\nChange-Id: Ic1a64e926b5faa2f4cf8d079a2b67e0261dcecd7\nFixes: 62035692\nTest: manual\n"
    },
    {
      "commit": "b5ab8686fe1cf32862e9a76e6d54008eee6f6c02",
      "tree": "faea5a70a406f3d59f40aeaaa8060256192eb53c",
      "parents": [
        "37b03b9e72af75b1b5f13d17c100f691ac54b12c",
        "4277d8f3e6d967e9fdca181d7bbc9516f9a1fe0e"
      ],
      "author": {
        "name": "Stan Iliev",
        "email": "stani@google.com",
        "time": "Tue May 23 19:29:58 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue May 23 19:29:58 2017 +0000"
      },
      "message": "Merge \"Fix recent apps in system UI for Skia pipeline\" into oc-dev\nam: 4277d8f3e6\n\nChange-Id: Ia3b645a631ce0c43278a9adde690a851d08a8be0\n"
    },
    {
      "commit": "4277d8f3e6d967e9fdca181d7bbc9516f9a1fe0e",
      "tree": "65bbb510851a15b294fb4adf3d323f6e15dca68c",
      "parents": [
        "5b49464dc6cae55c240edf794d5b0da988774151",
        "f5f27cd828084456bbc01520b44688df2b49b4b2"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue May 23 19:19:34 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue May 23 19:19:39 2017 +0000"
      },
      "message": "Merge \"Fix recent apps in system UI for Skia pipeline\" into oc-dev"
    },
    {
      "commit": "9d08fca62fbe140ffa107dd0f216282971af6748",
      "tree": "9092abe87a86f073a0c4991a9e46a2985e48b403",
      "parents": [
        "5c05a04448307cfa92dd71f2131d6dc581e8b2e1",
        "1bc0286ef84c68b32c2e5f820c7498cc5df3a20b"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue May 23 17:51:28 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue May 23 17:51:28 2017 +0000"
      },
      "message": "Merge \"Improve time to texture destruction\" into oc-dev\nam: 1bc0286ef8\n\nChange-Id: I93daab53961a018a2cf8d4e2d4d8300b84bb917e\n"
    },
    {
      "commit": "f5f27cd828084456bbc01520b44688df2b49b4b2",
      "tree": "57850e28bf33d97b3bb60736a38a592d95b2117c",
      "parents": [
        "07f580eaff5eb38913a837368c52d63e1493073a"
      ],
      "author": {
        "name": "Stan Iliev",
        "email": "stani@google.com",
        "time": "Mon May 22 15:02:25 2017 -0400"
      },
      "committer": {
        "name": "Stan Iliev",
        "email": "stani@google.com",
        "time": "Tue May 23 13:40:34 2017 -0400"
      },
      "message": "Fix recent apps in system UI for Skia pipeline\n\nEnable HW Bitmaps for Skia pipelines by using a readback to\nconvert GraphicBuffer into a raster SkImage. Both BitmapShader\nand drawing HW bitmaps into a canvas are supported.\n\nTest: recent apps work, no memory leaks, CTS graphics and\nUiRendering tests passed, HWUI unit test passed\nbug: 38136140\nChange-Id: I23fed5febad3b1009e0417fb7e21a347a8d11b0d\nMerged-In: I23fed5febad3b1009e0417fb7e21a347a8d11b0d\n"
    },
    {
      "commit": "9a814875c4e3a98fea99dae623f22268a9afa38a",
      "tree": "5d9a07eb07cdacea805609a723f9b35537010420",
      "parents": [
        "3915e25d41ce40f24fd41d8bcd6a058403d0bbc5"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon May 22 15:04:21 2017 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon May 22 17:17:05 2017 -0700"
      },
      "message": "Improve time to texture destruction\n\nEliminate textureCache.mGarbage which is only cleared\nin a trimMemory. Instead when we hit ~Bitmap post a\nmessage to RenderThread to release the texture immediately\n\nBug: 38258699\nTest: manual\nChange-Id: I962ba275e89afb628ba02f74769287edbab9fed4\n"
    },
    {
      "commit": "9217cb52e277a298e48d80e9d64a2474580d1da3",
      "tree": "552ab26d814f109f95a869ec414611fc10558f47",
      "parents": [
        "64474ac31d41b9bbb2607f31774fe532757794ab",
        "9363d33262631651e39c4882a13a06ee4319c4fd"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed May 17 04:36:23 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed May 17 04:36:23 2017 +0000"
      },
      "message": "Merge \"Revert \"Fix recent apps in system UI for Skia pipeline\"\" into oc-dev\nam: 9363d33262\n\nChange-Id: I4c67e3eea36a118beb81f4bf2029776102200cf4\n"
    },
    {
      "commit": "9363d33262631651e39c4882a13a06ee4319c4fd",
      "tree": "96543cdd84c28023a6c9596484392c0c623f2613",
      "parents": [
        "8b81a0a1fc439ac6cba9a237ea5246e2aec63033",
        "576b6a8a7994f649c0dbacfc34611d1580e16bd6"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed May 17 04:29:00 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed May 17 04:29:03 2017 +0000"
      },
      "message": "Merge \"Revert \"Fix recent apps in system UI for Skia pipeline\"\" into oc-dev"
    },
    {
      "commit": "576b6a8a7994f649c0dbacfc34611d1580e16bd6",
      "tree": "763552bb6722bec81d725dfb6068de93834f2d23",
      "parents": [
        "625dd56a45bfe95c5f1baa1891529503ff3374a9"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue May 16 22:02:36 2017 +0000"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed May 17 00:32:09 2017 +0000"
      },
      "message": "Revert \"Fix recent apps in system UI for Skia pipeline\"\n\nThis reverts commit 625dd56a45bfe95c5f1baa1891529503ff3374a9.\n\nReason for revert: Caused a memory leak, b/38330767\nBug: 38136140\nBug: 38330767\nTest: manual, verified memory isn\u0027t leaking doing the steps in b/38330767\n\nChange-Id: I998bea04788d58ba6bad71c1691d5a3b33190c1b\nMerged-In: I98b2dfd750be57a15785808e2d5723616e2ce20a\n"
    },
    {
      "commit": "cc78864bb7380d7279cbff3c6f13f901c13feddb",
      "tree": "ac65f0e3d5f6fdd9c797c417f0f110a7879a0042",
      "parents": [
        "eb651bbfb64ee99a92fad9135da48607da5027dc",
        "dad0ba155e4d16ee7bae92a69943d7d2a3e9ee71"
      ],
      "author": {
        "name": "Stan Iliev",
        "email": "stani@google.com",
        "time": "Sat May 13 01:52:23 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat May 13 01:52:23 2017 +0000"
      },
      "message": "Merge \"Fix recent apps in system UI for Skia pipeline\" into oc-dev\nam: dad0ba155e\n\nChange-Id: Ibd006617200e11ac929b23da279e099c9fce4ca1\n"
    },
    {
      "commit": "dad0ba155e4d16ee7bae92a69943d7d2a3e9ee71",
      "tree": "1b53b3dc8db7e5064ed0d74309bfa5952fa9e7e9",
      "parents": [
        "b3d265caaabf6ee9e32b81855dfc944447a39817",
        "625dd56a45bfe95c5f1baa1891529503ff3374a9"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat May 13 01:41:53 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat May 13 01:41:58 2017 +0000"
      },
      "message": "Merge \"Fix recent apps in system UI for Skia pipeline\" into oc-dev"
    },
    {
      "commit": "625dd56a45bfe95c5f1baa1891529503ff3374a9",
      "tree": "d0e1dd04ae1b6fee780ea48e5250cd6fcefecd91",
      "parents": [
        "7cf5f74f3fda19901d8c572f8c47981eda96e091"
      ],
      "author": {
        "name": "Stan Iliev",
        "email": "stani@google.com",
        "time": "Fri May 05 19:41:36 2017 -0400"
      },
      "committer": {
        "name": "Stan Iliev",
        "email": "stani@google.com",
        "time": "Fri May 12 19:42:33 2017 -0400"
      },
      "message": "Fix recent apps in system UI for Skia pipeline\n\nEnable HW Bitmaps for Skia pipeline just enough to make\nrecent apps list working by adding support for BitmapShader.\nDrawing HW bitmaps in a canvas is also supported.\n\nTest: recent apps work, HWUI unit tests pass, CTS tests pass.\nbug: 38136140\nChange-Id: Ibd06c859c86dc213310d5ce5272497e1882d0cc6\nMerged-In: Ibd06c859c86dc213310d5ce5272497e1882d0cc6\n"
    },
    {
      "commit": "287a3725754d583f258dcfcf82162c1ab5623b0e",
      "tree": "253c8fc929f3df20ffc57e003414ff691a4879da",
      "parents": [
        "c041ea726c260e04c942819304d056ac868ed86c",
        "19af4cc375fc407c9c232f13094f1f068f0a7602"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Fri May 12 04:10:49 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri May 12 04:10:49 2017 +0000"
      },
      "message": "Merge \"AAPT: Include empty locale in getLocales\" into oc-dev\nam: 19af4cc375\n\nChange-Id: Idcac3756eede932c7924ccc3ef3edc7e12b7a10b\n"
    },
    {
      "commit": "0532e76302c20d597352a04172c831c6bf667431",
      "tree": "80edb068bf58b0221c10524f025dfc1664358dc5",
      "parents": [
        "e0375adaaf127eea46d276c94fe318252947da02",
        "7d75f491756973fd68a0e3ed8b462c1d2e88163b"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Fri May 12 01:00:00 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri May 12 01:00:00 2017 +0000"
      },
      "message": "Merge \"Fix support for @empty in style resolution\" into oc-dev\nam: 7d75f49175\n\nChange-Id: Ie5a046f75a7c7fa13d330b90f3b9a8ff6c5ac373\n"
    },
    {
      "commit": "19af4cc375fc407c9c232f13094f1f068f0a7602",
      "tree": "24be60d344e8c6f4d946f9e43cdc24235929064e",
      "parents": [
        "120d7b219db6a16a67889dd0bf86ccb608825257",
        "fa2fc0b263d2eaa3be5eaa5191ffe293abc81489"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri May 12 00:22:40 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 12 00:22:44 2017 +0000"
      },
      "message": "Merge \"AAPT: Include empty locale in getLocales\" into oc-dev"
    },
    {
      "commit": "7d75f491756973fd68a0e3ed8b462c1d2e88163b",
      "tree": "f3ab6fa5619490ffdaf240aea59b44256e4e9cb9",
      "parents": [
        "8d0ba598cf82582c9ca28d487fba3d69e4da0eda",
        "32e7501a27f0f19bccdf9e91f9b87869c093f695"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu May 11 21:55:19 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 11 21:55:24 2017 +0000"
      },
      "message": "Merge \"Fix support for @empty in style resolution\" into oc-dev"
    },
    {
      "commit": "fa2fc0b263d2eaa3be5eaa5191ffe293abc81489",
      "tree": "06d0b10479702aa4b8d68dd45705d44b64cc6911",
      "parents": [
        "33532e020873e580c421342e38b2352b836d30d4"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Thu May 11 12:15:26 2017 -0700"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Thu May 11 12:26:52 2017 -0700"
      },
      "message": "AAPT: Include empty locale in getLocales\n\nAAPT dump badging relies on the empty locale being\npresent when there are no locales.\n\nBug: 38192121\nTest: manual\nChange-Id: I2f5c431d4fd07c525a2318e7b93be0e93c32448f\n"
    },
    {
      "commit": "32e7501a27f0f19bccdf9e91f9b87869c093f695",
      "tree": "50496484fd5cc1b79d7cf633db311eebbf37f3a6",
      "parents": [
        "f93dc8b6504200d0b6d502d924a70a743f9b1411"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Tue May 09 15:25:37 2017 -0700"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Thu May 11 11:28:29 2017 -0700"
      },
      "message": "Fix support for @empty in style resolution\n\nIf @empty is encountered in XML, do not fallback\nto searching through the theme.\n\nBug: 36891052\nTest: make aapt2_tests\nTest: bit CtsContentTestCases:android.content.res.cts.TypedArrayTest\nChange-Id: Ie3bf7b70af9c7913513a1092afd95d26bec5e635\n"
    },
    {
      "commit": "373b15bda93c8b400c5e1271bc93cbef26af503f",
      "tree": "bb8ef292a69082853e596ff6ba9e0552b7d60142",
      "parents": [
        "718688f39bc6d760fac650ad2a76e490c2465e4b"
      ],
      "author": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Mon May 01 22:17:36 2017 -0700"
      },
      "committer": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Tue May 09 04:10:07 2017 +0000"
      },
      "message": "Fix double bolding\n\nresolveStyle increases minikinStyle\u0027s weight value based on Skia\u0027s style\nvalue. Since we compute Skia\u0027s style based on given weight value, we\nshould not add extra bold weight to minikinStyle.\n\nThis CL also fixes misunderstanding of base weight.\nThe base weight is only used for computing weight relative to the\nweighted alias. Thus, base weight should not be updated except for\ncreateWeightAlias method.\n\nTo be clear, this CL changes the function names but keeps the same\nsemantics as before.\n\nTest: adb shell /data/nativetest/hwui_unit_tests/hwui_unit_tests\nTest: am instrument -w -e class android.graphics.cts.TypefaceTest\\\n      android.graphics.cts/android.support.test.runner.AndroidJUnitRunner\nBug: 37880319\nMerged-In: Ied73189b11792fb062da46f45afd2db664e6ecb4\n\nChange-Id: I82350a1bfb99ce198b955f127949e21bccccb1cb\n"
    },
    {
      "commit": "264d3bef34c32dac82326d82c0e42136c5c82202",
      "tree": "c899b7ef7173fba1b75e51e996f7ded8bd5cb235",
      "parents": [
        "f14f5fa42f8ba6f9bd125896b30713820ef422c6"
      ],
      "author": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Mon May 01 22:17:36 2017 -0700"
      },
      "committer": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Tue May 09 03:58:29 2017 +0000"
      },
      "message": "Fix double bolding\n\nresolveStyle increases minikinStyle\u0027s weight value based on Skia\u0027s style\nvalue. Since we compute Skia\u0027s style based on given weight value, we\nshould not add extra bold weight to minikinStyle.\n\nThis CL also fixes misunderstanding of base weight.\nThe base weight is only used for computing weight relative to the\nweighted alias. Thus, base weight should not be updated except for\ncreateWeightAlias method.\n\nTo be clear, this CL changes the function names but keeps the same\nsemantics as before.\n\nTest: adb shell /data/nativetest/hwui_unit_tests/hwui_unit_tests\nTest: am instrument -w -e class android.graphics.cts.TypefaceTest\\\n      android.graphics.cts/android.support.test.runner.AndroidJUnitRunner\nBug: 37880319\n\nChange-Id: Ied73189b11792fb062da46f45afd2db664e6ecb4\n(cherry picked from commit 1f9c461e6a9537f91a6509e73eeb04ee6d5706cf)\n"
    },
    {
      "commit": "d71a90353918fcbb78dc1684b398e938390a9653",
      "tree": "2043a0d5fdb4e161fedc86ab2e82177b17e124cc",
      "parents": [
        "a7f1e61e2e10a8e66f74c48be8fd613c59c21578",
        "ca9988f0f958078e7c638f569895d463f923c8cd"
      ],
      "author": {
        "name": "Yi Kong",
        "email": "yikong@google.com",
        "time": "Tue May 09 00:40:22 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue May 09 00:40:22 2017 +0000"
      },
      "message": "Merge \"Remove unused lambda captures\" am: 1101f45613 am: c7ce115073\nam: ca9988f0f9\n\nChange-Id: Id1259cbbf1bbe9032d66315a346fa4d5d27ce2b3\n"
    },
    {
      "commit": "b2233821e1a7d34af816c85e00ab110935175c0f",
      "tree": "b174e8c86623572c91b46331263af607e660fb11",
      "parents": [
        "52bc790f616f3f1578f31e7161eb93f670213bdb"
      ],
      "author": {
        "name": "Yi Kong",
        "email": "yikong@google.com",
        "time": "Mon May 08 10:24:22 2017 -0700"
      },
      "committer": {
        "name": "Yi Kong",
        "email": "yikong@google.com",
        "time": "Mon May 08 10:24:22 2017 -0700"
      },
      "message": "Remove unused lambda captures\n\nTest: build\nBug: 37752547\nChange-Id: Id102e93fef06e9c818b27fa8a5c6218c319bdd30\n"
    },
    {
      "commit": "af737306f943570dd3d6c8a74681622bdb7ca275",
      "tree": "498645d5b2546dada67fc7e451c077c2b009f98f",
      "parents": [
        "a1103c0b6987b3a1cc29bef85c1732494ebec424"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Apr 20 12:20:20 2017 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Sat May 06 00:50:39 2017 +0000"
      },
      "message": "Convert libandroid and libandroid_runtime to Android.bp\n\nSee build/soong/README.md for more information.\n\nTest: m -j checkbuild\nChange-Id: Ie3c9c3d3c8c75ade36422d1e8ee0a5fe117e9091\n(cherry picked from commit 3f8fd40f285dba5b3639ee1e3d4e4544048c1446)\n"
    },
    {
      "commit": "9c29d93ee339ceb6f07e89ae1440a8c75f958d31",
      "tree": "d3f593fc65512530d0bf00bf8c5289441f565269",
      "parents": [
        "1e41528706132c6174ebfa3b726d5cefbb566c4a",
        "01a5cc900439e5315dcf6a6dbdfeed9c4a37e943"
      ],
      "author": {
        "name": "Sergey Vasilinets",
        "email": "sergeyv@google.com",
        "time": "Fri May 05 19:51:04 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri May 05 19:51:04 2017 +0000"
      },
      "message": "Merge \"Add StrictMode.noteSlowCall to calls that result in hw bitmap readback\" into oc-dev\nam: 01a5cc9004\n\nChange-Id: I52ea2290a175df2dcd5b3805f7e5943e387133da\n"
    },
    {
      "commit": "01a5cc900439e5315dcf6a6dbdfeed9c4a37e943",
      "tree": "c9ce0207a4561980c240f69932e66bae2450b983",
      "parents": [
        "4e9002e69a7fd24acd3aba5ee70a9d5ef17c1960",
        "9fd259c9b0878ba52fec86173d76976e70977fcd"
      ],
      "author": {
        "name": "Sergey Vasilinets",
        "email": "sergeyv@google.com",
        "time": "Fri May 05 19:31:47 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 05 19:31:53 2017 +0000"
      },
      "message": "Merge \"Add StrictMode.noteSlowCall to calls that result in hw bitmap readback\" into oc-dev"
    },
    {
      "commit": "93cafba790b0210bf05cf1a9db2e94301a7643ff",
      "tree": "3f53d824661f87b91a1e6a43a13f5805f96f3da5",
      "parents": [
        "ad2f0735b807987d70f260a04983fe2d63944070",
        "b5facc7516aff32056a4219608e764658271d328"
      ],
      "author": {
        "name": "Arun",
        "email": "arun.demeure@imgtec.com",
        "time": "Fri May 05 19:10:21 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri May 05 19:10:21 2017 +0000"
      },
      "message": "Merge \"Reduce hwui CPU time by using glDrawRangeElements\" am: 057c7c3164 am: 94f4f5e45f\nam: b5facc7516\n\nChange-Id: I9e96bf83ae5ebd4237fc4d78a58e83793de86aad\n"
    },
    {
      "commit": "057c7c3164d49845ccd8a9950750bbba9f1ee0f7",
      "tree": "241802e159c9ccb9506d1ab32d703b788fee824e",
      "parents": [
        "31fb17bbf92bcbd16222b072d508366ac883d50a",
        "b0a9477c8e07d4530f07c78a5d20b4cde0fe8d60"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri May 05 18:50:11 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri May 05 18:50:13 2017 +0000"
      },
      "message": "Merge \"Reduce hwui CPU time by using glDrawRangeElements\""
    },
    {
      "commit": "b0a9477c8e07d4530f07c78a5d20b4cde0fe8d60",
      "tree": "d5216a2fa307a657f2601057f49459b260449cee",
      "parents": [
        "cba224e83385c5141c9dfbf9f8cfee2d7fc83f31"
      ],
      "author": {
        "name": "Arun",
        "email": "arun.demeure@imgtec.com",
        "time": "Mon Jan 23 11:41:06 2017 +0000"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Fri May 05 15:11:27 2017 +0000"
      },
      "message": "Reduce hwui CPU time by using glDrawRangeElements\n\nThe CPU overhead of glDrawElements in the GPU driver is significant\nwith client-side vertex data (unique per draw call) as the driver has\nto calculate the mininimum and maximum indices from the index buffer\nin order to evaluate the range of vertex data required. This can be\navoided by keeping track of the min-max in hwui and passing it with\nglDrawRangeElements. This requires OpenGL ES3.0 support (which is\nalready checked for elsewhere in hwui).\n\nTest: manual - visual inspection on fugu (nexus player)\n\nChange-Id: I57bb1ddd239a1032f74f1cd2683bbe0970e84bd9\n"
    },
    {
      "commit": "58f94a95268b68b8d4b5f6b5f58d0f4ffba52c62",
      "tree": "ff83ce3d4538c0e10bdee10eb29f9f3119bd1396",
      "parents": [
        "36247646e37b9c5aea83e6adb4ac70fd0d0ee24a"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Apr 19 15:25:25 2017 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu May 04 10:11:54 2017 -0700"
      },
      "message": "Convert libhwui to Android.bp\n\nSee build/soong/README.md for more information.\n\nTest: m -j checkbuild\nChange-Id: Ifebdb3797498d49f2bebe5fc728e6d6d8def71cb\nMerged-In: Ifebdb3797498d49f2bebe5fc728e6d6d8def71cb\n(cherry picked from commit f6298101181122b5b70d1094b131e44580cf62b2)\n"
    },
    {
      "commit": "271c2e00aadd86bd979ee9ee3cc47c8eaedbd98f",
      "tree": "ae9a3675d62353952804d84ab67f202d390c765c",
      "parents": [
        "d7ea7c40107996a200ebd59eb4ec9b1e0dc83c10"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Apr 19 15:25:25 2017 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu May 04 10:07:21 2017 -0700"
      },
      "message": "Convert libhwui to Android.bp\n\nSee build/soong/README.md for more information.\n\nTest: m -j checkbuild\nChange-Id: Ifebdb3797498d49f2bebe5fc728e6d6d8def71cb\nMerged-In: Ifebdb3797498d49f2bebe5fc728e6d6d8def71cb\n(cherry picked from commit f6298101181122b5b70d1094b131e44580cf62b2)\n"
    },
    {
      "commit": "9fd259c9b0878ba52fec86173d76976e70977fcd",
      "tree": "6530ed85924f7f0af9254bad948d9a8b28dcd1ba",
      "parents": [
        "074a67c1166eefb9ad7bdf6762ec93dad7f9114a"
      ],
      "author": {
        "name": "sergeyv",
        "email": "sergeyv@google.com",
        "time": "Wed May 03 15:59:15 2017 -0700"
      },
      "committer": {
        "name": "sergeyv",
        "email": "sergeyv@google.com",
        "time": "Wed May 03 17:41:33 2017 -0700"
      },
      "message": "Add StrictMode.noteSlowCall to calls that result in hw bitmap readback\n\nbug:37748500\nTest: BitmapTest:*inStrictMode\nChange-Id: Ifea1c6f0c50ba2f409c96b7ccf7eb31c89ef81c8\n"
    },
    {
      "commit": "16ee9b9bd141bd322be772116b9c05e717594baf",
      "tree": "5d90bc6c2f22b67b908152bd9354ac6c749196e6",
      "parents": [
        "aec91c2e73aa46d45d113dc88418207e4e88396a",
        "ecc121d8bfac6478ba0b645a606f19aa511a4320"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Wed May 03 22:46:22 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed May 03 22:46:22 2017 +0000"
      },
      "message": "Merge \"Make all FrameBuilderTests run on RT\" into oc-dev\nam: ecc121d8bf\n\nChange-Id: Iee5e75009bfe1dcce9dd021aa20f1410b1810f32\n"
    },
    {
      "commit": "e681bf6b5c798cce3858e1d39e4fe629cab721f0",
      "tree": "cee0bf6827edba09b4f3d9a6fcb694a28ba32d8c",
      "parents": [
        "b3e92234fa8268f1a28bb2e28990b3a337f740d5"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Wed May 03 10:53:16 2017 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Wed May 03 10:55:29 2017 -0700"
      },
      "message": "Make all FrameBuilderTests run on RT\n\nFixes: 33834637\nTest: adb shell /data/nativetest/hwui_unit_tests/hwui_unit_tests  --gtest_filter\u003dFrameBuilder.renderNode_OpenGL\nTest: adb shell /data/nativetest/hwui_unit_tests/hwui_unit_tests  --gtest_filter\u003dFrameBuilder.projection*\n\nThey essentially all use Caches, so making RT-only for safety. This\nprevents crashes when trying to access Caches in a non-rt test, when\nit\u0027s not guaranteed to be created.\n\nChange-Id: I530c73d0ffe2d4f4ef53a46715f5bcca2c485f70\n"
    },
    {
      "commit": "5edbb34dd26003d44882af436509694ab6487b2e",
      "tree": "5cda00ce9b86603aacd3d71d4c284e5a4b237555",
      "parents": [
        "e13d60764cc90406c75bf1641c9d5a7cc3e265ea",
        "f3310cb3b1c5e5dd31a75cccbeeedc32aa7110e3"
      ],
      "author": {
        "name": "Yi Kong",
        "email": "yikong@google.com",
        "time": "Mon May 01 18:51:59 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon May 01 18:51:59 2017 +0000"
      },
      "message": "Merge \"Remove no-op std::max call\" am: c00af4c533 am: ef5e579cec\nam: f3310cb3b1\n\nChange-Id: I553be70f9ba04feaf4da01041bfb3edc6ae38252\n"
    },
    {
      "commit": "06a2d2bf2319eef2f81b6d8d3f980cc484999bc9",
      "tree": "cb56cc832100fc2284465c548e522eb924568c14",
      "parents": [
        "169681db26feb6d45fa6095cdc17c0cac0bf2ed9"
      ],
      "author": {
        "name": "Yi Kong",
        "email": "yikong@google.com",
        "time": "Sun Apr 30 23:51:33 2017 -0700"
      },
      "committer": {
        "name": "Yi Kong",
        "email": "yikong@google.com",
        "time": "Sun Apr 30 23:54:08 2017 -0700"
      },
      "message": "Remove no-op std::max call\n\nThis was calling std::max on an unsigned integer and 0, which is\nessentially no-op. Remove this code.\n\nTest: Build\nBug: 37752547\nChange-Id: I74ce45b95960621dff11f574fbe1af60ad147cf0\n"
    },
    {
      "commit": "5805cfdbc167d2e83b08e76be3dcbc603b4cdc4e",
      "tree": "b944ae42d37f494ef22eaeb5973e7984ee36ddd2",
      "parents": [
        "49e5ce52bb1ee0020f55581c456f84934dfd0601",
        "8f4ac4ac05b8278c84f3b27de05eb8ed325ea81a"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Fri Apr 28 23:15:34 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Apr 28 23:15:34 2017 +0000"
      },
      "message": "Merge \"Revert \"Temporarily enable GL validation\"\" into oc-dev\nam: 8f4ac4ac05\n\nChange-Id: I7a44ab6a8a2a05c124bbe0d84475f5c21b1b7bf4\n"
    },
    {
      "commit": "8f4ac4ac05b8278c84f3b27de05eb8ed325ea81a",
      "tree": "f72917ef188940721637f02106e489dec2bb4798",
      "parents": [
        "83d139bd1b3e3b93a8c9a1f0572438c024bbe679",
        "005275d238454dcadc21f4946d4104380f691b24"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Fri Apr 28 23:03:57 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 28 23:04:02 2017 +0000"
      },
      "message": "Merge \"Revert \"Temporarily enable GL validation\"\" into oc-dev"
    },
    {
      "commit": "a1e500ebf41b3bdb907c6cd00d5f1be2af06e720",
      "tree": "cbfc6c3bcdfe4512f70f4f5e348ebfca0859dd4b",
      "parents": [
        "82c6833c5115542c8e67436e3db44b6fc3f34515",
        "ebd44d0076bc81732cb346a342788a0024dd1b3e"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Fri Apr 28 18:53:15 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Apr 28 18:53:15 2017 +0000"
      },
      "message": "Merge \"Add conic support for Path#approximate\" into oc-dev\nam: ebd44d0076\n\nChange-Id: I68f5924aef7526de1c801f529dd5a304a1a1d287\n"
    },
    {
      "commit": "ebd44d0076bc81732cb346a342788a0024dd1b3e",
      "tree": "c3c4606a9101eb559ef45ef9888c265b4742b8bd",
      "parents": [
        "d91cedb76d94d12ad502acbe4beb6d1c17ebfbff",
        "96202d56ad2406b27a8b3b1f083ab71945d06a46"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Apr 28 18:47:31 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 28 18:47:37 2017 +0000"
      },
      "message": "Merge \"Add conic support for Path#approximate\" into oc-dev"
    },
    {
      "commit": "65c42a5569473b3cd1481763d98ad39ffd49df4b",
      "tree": "b60f6ad51e54c4a8acd770b7e3a48ce920f2021f",
      "parents": [
        "5c1469e5ccd44cc98c88671ed38403eca7a7f3cb",
        "e7172ff9fb4103339aa4095ab543ad4d259b1ebc"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Fri Apr 28 01:04:51 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Apr 28 01:04:51 2017 +0000"
      },
      "message": "Merge \"AAPT2: Add workaround for non-standard package IDs\" into oc-dev\nam: e7172ff9fb\n\nChange-Id: I7b8e53f8394e41433ceebe4f6e477f8561e49807\n"
    },
    {
      "commit": "e7172ff9fb4103339aa4095ab543ad4d259b1ebc",
      "tree": "57f18b44e7d6b32d10f310038fec9f449e87b004",
      "parents": [
        "afd8d9e2b289fe623118e849e0915f940a19bf2f",
        "4ca56978a9aea3f021a54ed9265de10811984d94"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Apr 27 23:45:38 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 27 23:45:44 2017 +0000"
      },
      "message": "Merge \"AAPT2: Add workaround for non-standard package IDs\" into oc-dev"
    },
    {
      "commit": "1c9c7b867cb482b92d7e39785f330dec4acad43a",
      "tree": "869989f6e4edf5fd5ef2dc317bd321ce76f81830",
      "parents": [
        "193b44dfb5bb65bb9fe12b59bb2b17484ccd29d2",
        "f9dc09f4ea660b7dbd0d3fc97c2c73235736f37f"
      ],
      "author": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Thu Apr 27 23:41:25 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Apr 27 23:41:25 2017 +0000"
      },
      "message": "Merge \"Disable Vulkan backend when running hwui_unit_tests.\" into oc-dev\nam: f9dc09f4ea\n\nChange-Id: I613b0f380995d88bbda6c916af68b96ab69e8dff\n"
    },
    {
      "commit": "96202d56ad2406b27a8b3b1f083ab71945d06a46",
      "tree": "64cdb881b65e5121e513b9e339c92c14442a41ec",
      "parents": [
        "9a4b756c9be8a9f45c508b6a82aa28904dd682cf"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Thu Apr 27 15:26:17 2017 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Thu Apr 27 16:24:18 2017 -0700"
      },
      "message": "Add conic support for Path#approximate\n\nFixes: 37722722\nTest: bit CtsGraphicsTestCases:PathTest\nTest: bit CtsUiRenderingTestCases:android.uirendering.cts.testclasses.PathTests\n\nAlso adds static asserts to path-walking code, to avoid this problem\nin the future.\n\nAlso adds annotations, since this is public API now.\n\nChange-Id: Ic39b167968b98fd8197be2d0f9aca79949717237\n"
    },
    {
      "commit": "f9dc09f4ea660b7dbd0d3fc97c2c73235736f37f",
      "tree": "2087fff5ae18cdf528ccfe0532bfc1ec903edfcc",
      "parents": [
        "b4f21f04820549253594ba6ad8570c12cdff28a9",
        "0f89539de6df6ebe991ae29510e55867317389c0"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Apr 27 22:10:44 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 27 22:10:49 2017 +0000"
      },
      "message": "Merge \"Disable Vulkan backend when running hwui_unit_tests.\" into oc-dev"
    },
    {
      "commit": "0f89539de6df6ebe991ae29510e55867317389c0",
      "tree": "9e1087454a2483580ee4b55e1c7485bc14000ee7",
      "parents": [
        "635d9dd864906e867421b67ad7fc1cdee880ec29"
      ],
      "author": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Thu Apr 27 11:30:20 2017 -0400"
      },
      "committer": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Thu Apr 27 11:30:20 2017 -0400"
      },
      "message": "Disable Vulkan backend when running hwui_unit_tests.\n\nThe Vulkan backend fails to run on devices without vulkan drivers.\nUntil we can stub out the vulkan drivers for those devices we find\nan acceptable solution.\n\nTest: hwui_unit_tests on device w/out vulkan\nBug: 37422708\nChange-Id: I3d7c21882053459f25ca1eb5648cdf5dfd4c333e\n"
    },
    {
      "commit": "4ca56978a9aea3f021a54ed9265de10811984d94",
      "tree": "1634b01c81b725ff3d286b7a8bf6cd16682cf7eb",
      "parents": [
        "9e55fcbdc254da098bb792f460296ff0649c3b00"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Wed Apr 26 21:49:53 2017 -0700"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Wed Apr 26 21:55:31 2017 -0700"
      },
      "message": "AAPT2: Add workaround for non-standard package IDs\n\nThe dynamic ref table used to map build-time IDs to runtime IDs\nis mainly used for shared resource libraries and has a few built-in\nmappings (app 0x7f and framework 0x01).\n\nUsing a non-standard package ID like 0x80 causes a failure in package ID\nlookup. The solution is to ship the dynamic_ref_table with an identity mapping\nwith any resource table that uses a non-standard package ID.\n\nAdds some tests to ensure this works correctly.\n\nBug: 37498913\nTest: make libandroidfw_tests\nTest: make aapt2_tests\nChange-Id: Ic3f67942384d34e7fdcbc94ded360e940e3ebc8a\n"
    },
    {
      "commit": "005275d238454dcadc21f4946d4104380f691b24",
      "tree": "6a662167c71db0d58dcca707ac4b44fe7c7e8ac1",
      "parents": [
        "a35e4e5584e219771d007335eb615b2762bd80ef"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Wed Apr 19 22:37:06 2017 +0000"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Wed Apr 26 00:47:42 2017 +0000"
      },
      "message": "Revert \"Temporarily enable GL validation\"\n\nFixes: 35387665\nTest: none\n\nThis reverts commit b5544d0308613dbcfee5d27f26bda2248d0a5e33.\n\nChange-Id: I4cf3fa0c65aaee38d0fa9cfea15b72c8ef42acb1\n"
    },
    {
      "commit": "4554fa6b7cbeb055785d784b6e02161ed39f8767",
      "tree": "e956e199dd48b8226f925fd09f6eddab954a7fa5",
      "parents": [
        "b66e6c26d162829feb8c902f6b0231f7206d384b",
        "7e44951bb7d9ed21b2012a35d673b2523151621a"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue Apr 25 23:39:39 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Apr 25 23:39:39 2017 +0000"
      },
      "message": "Merge \"Fix include\" into oc-dev\nam: 7e44951bb7\n\nChange-Id: I6e7ec68d95dc12fa3d87a0e366cf924a4dba32bc\n"
    },
    {
      "commit": "7e44951bb7d9ed21b2012a35d673b2523151621a",
      "tree": "aefd7dd333bd7e7082ae788f4e271c6f6feb07e4",
      "parents": [
        "1c5b71ec1f68326be2248dd6c475c92001273ec0",
        "66c3a829dc129b6081979facf5a652d5d9f1f51a"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Apr 25 23:32:07 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 25 23:32:11 2017 +0000"
      },
      "message": "Merge \"Fix include\" into oc-dev"
    },
    {
      "commit": "66c3a829dc129b6081979facf5a652d5d9f1f51a",
      "tree": "beac0806959eb5e438400f628cb27d595f851cb9",
      "parents": [
        "8b4cca11f3d9cf58ee0c005e66d811d233e79d21"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue Apr 25 13:41:32 2017 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue Apr 25 13:42:53 2017 -0700"
      },
      "message": "Fix include\n\nBug: 35387665\nTest: builds with HWUI_ENABLE_OPENGL_VALIDATION :\u003d false\n\nDependency on gl3.h was added while that header was auto-included for\nerror checking purposes. Add the include to enable us to disable gl\nerror checking.\n\nChange-Id: Ic969da716e2323f8e42d20da8fd0a6fa653f9775\n"
    },
    {
      "commit": "8cf0d0d2b0c0513a8deefb476fd9443a67cc0cf7",
      "tree": "625ddf80f30f373a552d2e0e958e468df5df02e0",
      "parents": [
        "05ab51b4f0d870038e16af8eb2ce6e2524778030"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Apr 19 17:00:07 2017 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Apr 20 18:31:02 2017 +0000"
      },
      "message": "Convert libinputservice to Android.bp\n\nSee build/soong/README.md for more information.\n\nTest: m -j checkbuild\nChange-Id: I3cd2bb05ec89c40ebd1240e352a19f99d00dc114\n(cherry picked from commit 3fc8f2df3098a5bb8191cca43b4dc4cf3bba160b)\n"
    },
    {
      "commit": "ece22cf1154cf236c5455fce41b70d9f6ff0549d",
      "tree": "c2495e871cddd499e969de402cd2b367a0030dc8",
      "parents": [
        "58b5789cdee9265453c20454219cf2fd927a7d73"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Apr 19 17:00:07 2017 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Apr 20 03:18:38 2017 +0000"
      },
      "message": "Convert libinputservice to Android.bp\n\nSee build/soong/README.md for more information.\n\nTest: m -j checkbuild\nChange-Id: I3cd2bb05ec89c40ebd1240e352a19f99d00dc114\nMerged-In: I3cd2bb05ec89c40ebd1240e352a19f99d00dc114\n(cherry picked from commit 3fc8f2df3098a5bb8191cca43b4dc4cf3bba160b)\n"
    },
    {
      "commit": "e07a91a8dbcadd9898fdea0bc19ddb55014f3eeb",
      "tree": "c9d870396e31cc5a4de22f555d3acab3b48a0fa2",
      "parents": [
        "a017e573b5a900f6d7e0f1c6e4ed01fd569cc89f"
      ],
      "author": {
        "name": "Matt Sarett",
        "email": "msarett@google.com",
        "time": "Tue Apr 18 18:09:52 2017 -0400"
      },
      "committer": {
        "name": "Matt Sarett",
        "email": "msarett@google.com",
        "time": "Wed Apr 19 12:38:30 2017 +0000"
      },
      "message": "Add unit test for Skia path behavior\n\nTest: This is a test.\nBug: 35369941\n\nChange-Id: Iaf21d3a903702f81a20e08e8b50b782f311ce7f3\n"
    },
    {
      "commit": "190fe086df0c3a054e09dafc6fe459b929af0756",
      "tree": "336dac77e027f6d1593861ec7be45748a0a041d1",
      "parents": [
        "2b499e4eba123baeb1ed7ba884c842623970ebd4",
        "f7d98f436cf1351cb479e0abd6af7056553a6fa9"
      ],
      "author": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Tue Apr 18 16:06:35 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 18 16:06:41 2017 +0000"
      },
      "message": "Merge \"Remove round rect clipping optimization.\" into oc-dev"
    },
    {
      "commit": "c84824942db6c37343a3580c23308e2f07037267",
      "tree": "aec423055385810e02845419fedf6bd76880a5b0",
      "parents": [
        "3b41407f1908cea425b753003b31a16b49bad822"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Mon Apr 17 13:58:21 2017 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Mon Apr 17 13:58:22 2017 -0700"
      },
      "message": "Disable crashing drop shadow tests\n\nBug: 36272398\nTest: HWUI unit tests now run without crashing\n\nChange-Id: I2877ed184640e5043d33b10605db71dde501fd2a\n"
    },
    {
      "commit": "f7d98f436cf1351cb479e0abd6af7056553a6fa9",
      "tree": "c128c8329eaaab5b713f3ae164122f62ddf9738f",
      "parents": [
        "676590d060778f7e1fb896f03ba53817eb910f93"
      ],
      "author": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Mon Apr 17 11:27:36 2017 -0400"
      },
      "committer": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Mon Apr 17 18:05:42 2017 +0000"
      },
      "message": "Remove round rect clipping optimization.\n\nThis optimization fails to account for inverse fill.\n\nTest: bit CtsGraphicsTestCases.CanvasTest\nBug: 37417782\nChange-Id: I04adfa93542b1bd1f5d905c64bb40e521242e29d\n"
    },
    {
      "commit": "55455181233cadcd6d2e28d28d0dfc9a653f7787",
      "tree": "df8e1a022f7363fa15d0b11a0f90035b7a76c259",
      "parents": [
        "7859022e8eeabb5aa65af15773fe9cff329c71ec"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Sat Apr 15 21:41:22 2017 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Sat Apr 15 21:41:22 2017 -0700"
      },
      "message": "Properly decode colors spaces in BitmapRegionDecoder\n\nReusing a bitmap with BitmapRegionDecoder would preserve the\nprevious color space. This change also tweaks color space\nmatching to make sure we pick Display P3 with parameter d\u003d0.039\nor d\u003d0.04045\n\nBug: 36905374\nTest: CtsGraphicsTestCases\nChange-Id: I4d2d66e5babebb0b5ce5cbdc7e8244177b4b7f9c\n"
    },
    {
      "commit": "ca9b703b8862b4b0a9c6134a0b3e0d1a89a9ae64",
      "tree": "58420e7a23295e653a54067a06806e4ac278b642",
      "parents": [
        "b7f0db8d89d16ed653c04f0ddf1d6513bb95c55f"
      ],
      "author": {
        "name": "Matt Sarett",
        "email": "msarett@google.com",
        "time": "Thu Apr 13 12:18:47 2017 -0400"
      },
      "committer": {
        "name": "Matt Sarett",
        "email": "msarett@google.com",
        "time": "Fri Apr 14 16:26:50 2017 +0000"
      },
      "message": "Bug fix: use legacy SkCanvas regardless of color space tag\n\nTest: Added unit test. CtsGraphicsModule.\n\nBug: 32984164\n\nChange-Id: If72e1e31c98e01f97f3a05d763f5d4c71cf88313\n"
    },
    {
      "commit": "d154829cb15d61f1469f939d608e691256e2a765",
      "tree": "f34aa249ab66bb36486af742f39a4b51b06d0de7",
      "parents": [
        "92fc8bdd518cccf1c4fe2c9ad2460178cf61e3b4"
      ],
      "author": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Tue Apr 11 21:00:27 2017 -0700"
      },
      "committer": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Fri Apr 14 00:54:46 2017 +0000"
      },
      "message": "Use provided style for fallback font selection\n\nIf the developer gives some weight/italic to the Typeface.Builder\nthe fallback used the metadata in the font file. We should use\nprovided data instead.\n\nThis CL also adjusts upper and lower limits on weight, from 100..900 to\n1..1000\n\nBug: 37257745\nBug: 37251569\nTest: android.graphics.cts.TypefaceTest passes\nChange-Id: I7cf390d96b49afcce359928373698b0c9a9babd8\n"
    },
    {
      "commit": "1be9766a68ab25d4912aa19859414c8b2af6242b",
      "tree": "e60ef64a5d050298540bf9727106bd357f61756b",
      "parents": [
        "29c70437b337a8645fc2fb1e47c947b895af9180",
        "5745a0a37fa8b09e6ce538ab8ef58684cc00604e"
      ],
      "author": {
        "name": "Jim Van Verth",
        "email": "jvanverth@google.com",
        "time": "Thu Apr 13 20:01:43 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 13 20:01:47 2017 +0000"
      },
      "message": "Merge \"Add uncached and perspective shadows to Skia renderer\" into oc-dev"
    },
    {
      "commit": "729a515e5ebcf38e3472bb8fee4e9400745c400c",
      "tree": "b7763ed1b7b35a151fae87b50f9cde4f0a5141da",
      "parents": [
        "e425b366ba5fb2228182b8ac3d3fbaf396194cdc",
        "5b6347a6af668ba47b3fab14cefbe03cc440c3a4"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Apr 13 19:21:21 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 13 19:21:25 2017 +0000"
      },
      "message": "Merge \"Introduce setFallbackTypeface\" into oc-dev"
    },
    {
      "commit": "5b6347a6af668ba47b3fab14cefbe03cc440c3a4",
      "tree": "cec4564a2adfdb8909f512ac103f554575071d44",
      "parents": [
        "061db23b79b0f07b3b843e081420fbbcc606b451"
      ],
      "author": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Fri Mar 31 14:30:05 2017 -0700"
      },
      "committer": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Thu Apr 13 10:12:27 2017 -0700"
      },
      "message": "Introduce setFallbackTypeface\n\nsetFallbackTypeface is returned by Builder.build() method when the\nprovided font is not loaded due to some reasons.\nThe fallback family is resolved with width/italic passed to Builder.\n\nBug: 36794225\nTest: android.graphics.cts.TypefaceTest passes\nChange-Id: I65e220aca823fd815a52437b11c8e6dc952de8e2\n"
    },
    {
      "commit": "44dc270830758d5b0f5b099e7c0e308bdf027dfb",
      "tree": "f2c1aac8d0234485f555cd0cf1367f9947979d30",
      "parents": [
        "061db23b79b0f07b3b843e081420fbbcc606b451"
      ],
      "author": {
        "name": "Matt Sarett",
        "email": "msarett@google.com",
        "time": "Thu Apr 13 09:33:18 2017 -0400"
      },
      "committer": {
        "name": "Matt Sarett",
        "email": "msarett@google.com",
        "time": "Thu Apr 13 11:11:11 2017 -0400"
      },
      "message": "Add SkiaCanvas::captureCanvasState()\n\nTest: Verified bug is fixed.  Wrote unit test.\n\nBug: 37268771\n\nChange-Id: I9deb7db353cd2129ad245e7f65419670463bb717\n"
    },
    {
      "commit": "5745a0a37fa8b09e6ce538ab8ef58684cc00604e",
      "tree": "2cacf861d62d79b9604a802d1b8936a4cce68bd2",
      "parents": [
        "7ecd40c1fca96db6289aff0fea37573b843ee336"
      ],
      "author": {
        "name": "Jim Van Verth",
        "email": "jvanverth@google.com",
        "time": "Wed Apr 12 14:08:46 2017 -0400"
      },
      "committer": {
        "name": "Jim Van Verth",
        "email": "jvanverth@google.com",
        "time": "Thu Apr 13 13:15:12 2017 +0000"
      },
      "message": "Add uncached and perspective shadows to Skia renderer\n\nTest: manual - looked at FrameworkShadow app\n\nBug: 37300468\nChange-Id: I72d820479141db2d83363747d9f76abbaca70d98\n"
    },
    {
      "commit": "eb69cbbe22d993a9ba88a1206853c660f8f43628",
      "tree": "686051fef2cbea3e73a140ab82de7dd2c3e32986",
      "parents": [
        "2d008a5fc11f607943235cacfaf523eb403b52f2"
      ],
      "author": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Tue Apr 11 13:58:45 2017 -0400"
      },
      "committer": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Tue Apr 11 14:00:25 2017 -0400"
      },
      "message": "Change behavior of setBitmap to cleanly reset the canvas\n\n - identity matrix\n - no save stack\n - wide-open clip\n\nThis reverts commit 4f641d1e4586b027969052cc0ad6b65c1158e72e\n\nTest: bit CtsGraphicsTestCases:.CanvasTest\nBug: 36218535\nChange-Id: Id11deb06e37d6df61f1f171d424ab150d812a7a8\n"
    },
    {
      "commit": "8242656f495847c50c9ceaea92839dce78218a75",
      "tree": "467b8d3ceb1c305c8ba13d5b6edbdfceed390fbf",
      "parents": [
        "7a7c0ace8277d06513ab9eaa19159d66919764ba"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Tue Apr 04 19:38:50 2017 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Fri Apr 07 07:56:14 2017 -0700"
      },
      "message": "Color management, the missing pieces\n\nImplement missing color management pieces for bitmaps:\n\n- Bitmap.createBitmap(Bitmap src, ...) now creates a bitmap\n  in the same color space as the source bitmap\n- Bitmap.createScaledBitmap() now creates a bitmap in the\n  same color space as the source bitmap\n- Bitmap.createBitmap(..., ColorSpace colorSpace) to create\n  bitmaps in a specific color space\n- Fix copy from A8 to F16\n- Copying bitmaps in F16 or with a color space does not work,\n  it\u0027s currently a limitation in Skia\n\nBug: 36905374\nTest: BitmapColorSpaceTest\nChange-Id: I0092fe4432511db50daa3a9393389a9db05e0c2a\n"
    },
    {
      "commit": "c273784c91fa938586eda2a91b7268e431e838d5",
      "tree": "c29e34466667d76074f86e223ec5fd30e5891a16",
      "parents": [
        "43fed9afe41ee5cf7bc208f37f373d7061b5be19",
        "89de234c721244fe9063971ca33839392b66387f"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Apr 06 21:21:55 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 06 21:21:59 2017 +0000"
      },
      "message": "Merge changes I6f00614d,I987eeab2 into oc-dev\n\n* changes:\n  Convert 16 bit bitmaps to 8 bit on devices that do not have GLES3.0\n  Fix HardwareBitmapTests.testBitmapConfigFromRGB565\n"
    },
    {
      "commit": "89de234c721244fe9063971ca33839392b66387f",
      "tree": "6549e50e3bdc1249a8ae5c5827c9d7aba958aa09",
      "parents": [
        "7c98f5da3d95ef383de04fb5e941adec4fe1a4cf"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Thu Apr 06 12:24:29 2017 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Thu Apr 06 12:24:29 2017 -0700"
      },
      "message": "Convert 16 bit bitmaps to 8 bit on devices that do not have GLES3.0\n\nBug: 37077308\nTest: CtsUiRenderingTests (ran to manually emulate 2.0 devices)\nChange-Id: I6f00614d79797835adcfe4716bd331573e1463e3\n"
    },
    {
      "commit": "7c98f5da3d95ef383de04fb5e941adec4fe1a4cf",
      "tree": "c961d209766dc454869c3425ba5caa42bd6f1512",
      "parents": [
        "8d84e4cd1c1ea46caaf29660a74f65ca7d9fda39"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Thu Apr 06 11:00:21 2017 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Thu Apr 06 11:00:21 2017 -0700"
      },
      "message": "Fix HardwareBitmapTests.testBitmapConfigFromRGB565\n\nBug: 37077304\nTest: HardwareBitmapTests.testBitmapConfigFromRGB565\nChange-Id: I987eeab243f93f9ee8fe8d1b6a12ddbd23225651\n"
    },
    {
      "commit": "ea70d22dc8dc5d61f075edf6d03f86f6a68169cd",
      "tree": "076905e7bf8d2a09631a597d8c1c4975964e8ab6",
      "parents": [
        "3cc32f2aa205db9770c694a823f6d9a532ff0901"
      ],
      "author": {
        "name": "Matt Sarett",
        "email": "msarett@google.com",
        "time": "Wed Mar 29 16:25:10 2017 -0400"
      },
      "committer": {
        "name": "Matt Sarett",
        "email": "msarett@google.com",
        "time": "Thu Apr 06 15:14:00 2017 +0000"
      },
      "message": "Xform bitmaps to sRGB on SW and PDF canvases\n\nFor picture-backed canvases, we will defer the xform\nuntil playback.\n\nTest: Unit tests and cts test.\nBug: 32984164\nChange-Id: Ib74663bcb688b74b6ba8792b403b0475126732af\n"
    },
    {
      "commit": "d7410f7829ff591ca81ad93c9c9b1632ea80d1bc",
      "tree": "df96deb44315806245c9d53a850a8919d3dcc19e",
      "parents": [
        "5879d28f4df66e0222476226ce7a8e8b62314d04"
      ],
      "author": {
        "name": "Stan Iliev",
        "email": "stani@google.com",
        "time": "Tue Apr 04 15:23:54 2017 -0400"
      },
      "committer": {
        "name": "Stan Iliev",
        "email": "stani@google.com",
        "time": "Tue Apr 04 16:24:55 2017 -0400"
      },
      "message": "Fix pop-up shadow drawn in the wrong place with Skia pipeline\n\nFix a bug in DrawShadow matrix calculation. Recorded matrix does\nnot need to be applied, because parent display lists have already\nreplayed matrix transformations.\n\nTest: added a new HWUI unit test that is passing only after this fix\nBug: 33103723\nChange-Id: I7a47dbe879df6b9e5920a47c0e1168d9902a3e70\n"
    },
    {
      "commit": "f9340ca491f1e5bd7ba2d937c8e7d1c42a4edb6f",
      "tree": "135f4591869169e73ce9d94582831a697cea82da",
      "parents": [
        "8f6b9d80587ffec6899fe45bd3a6930eac3b65d5",
        "669b15a93548b82135c73196665bcb7f03d87795"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Apr 04 19:06:28 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 04 19:06:32 2017 +0000"
      },
      "message": "Merge \"Fix HWUI/Skia Gradients to premultiply the colors prior to interpolation\" into oc-dev"
    },
    {
      "commit": "eabb5621dd67a159500c7a35eaa2f7999004c004",
      "tree": "2f5fe08e6bd54ff8b8adbccf3da6c5f7990068b2",
      "parents": [
        "2ac969827115c1b8bc86d9017eb1c7c1d5421b10",
        "817b4947397dc01d0c066ae847a3efd0e4a84a24"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue Apr 04 17:16:33 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 04 17:16:43 2017 +0000"
      },
      "message": "Merge \"Revert \"Switch libplatformproto to sharedlib\"\" into oc-dev"
    },
    {
      "commit": "669b15a93548b82135c73196665bcb7f03d87795",
      "tree": "7ff6e8179d2ac972db944e94b30f036af659ec52",
      "parents": [
        "3f2bbcbe92cd2500746153ed2378278c1b2a53e2"
      ],
      "author": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Fri Mar 31 12:09:24 2017 -0400"
      },
      "committer": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Tue Apr 04 12:07:28 2017 -0400"
      },
      "message": "Fix HWUI/Skia Gradients to premultiply the colors prior to interpolation\n\nThis is fixed in Skia by passing the appropriate flag when the shader is\ngenerated.  The fix in HWUI is to reverse the premultiplication and\ninterpolation steps.\n\nTest: bit CtsUiRenderingTestCases:.testclasses.ShaderTests\nBug: 34323783\nChange-Id: I3417141949f62fcc696b6d8213a4b446d7d0cbf8\n"
    },
    {
      "commit": "817b4947397dc01d0c066ae847a3efd0e4a84a24",
      "tree": "15eb72ffa4d1bc63334308dae02306f50173e720",
      "parents": [
        "e5549d414c7231ee0037cf413dad17e28b8905ba"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Mon Apr 03 21:46:44 2017 +0000"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Mon Apr 03 21:46:44 2017 +0000"
      },
      "message": "Revert \"Switch libplatformproto to sharedlib\"\n\nBug:36847782\n\nThis reverts commit e5549d414c7231ee0037cf413dad17e28b8905ba.\n\nChange-Id: I38f1c501b7e40be11ba5f0a7a50651e0c3e41fc5\n"
    },
    {
      "commit": "72c27609434dcc9f6db6292a114214b69a5c7bd7",
      "tree": "471761bdd2c957e5d59fa6fc84a9c65ab34b4e53",
      "parents": [
        "8d686949515ca665406b24f0073adf117f77546c",
        "e5549d414c7231ee0037cf413dad17e28b8905ba"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Mar 30 16:42:31 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 30 16:42:36 2017 +0000"
      },
      "message": "Merge \"Switch libplatformproto to sharedlib\" into oc-dev"
    },
    {
      "commit": "33813bd4396f02409f4014e194da64b4170175d2",
      "tree": "a5b60d64135673a4d546c57fd69d3278c3466daf",
      "parents": [
        "5acdc8c3d5a42534c7de3fc579d8e7d54737de0a",
        "caaaa66e57293e4a6f312649bf472eab84d5c7fe"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Thu Mar 30 01:42:25 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 30 01:42:32 2017 +0000"
      },
      "message": "Merge \"Convert bitmaps to sRGB/scRGB when they have a color profile\" into oc-dev"
    },
    {
      "commit": "e5549d414c7231ee0037cf413dad17e28b8905ba",
      "tree": "fdbfe410b13038c91eec5e69dbfd3491ce5d1030",
      "parents": [
        "d686e9c26e84e56810fcf87f6002ba8ba2b3f0c5"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed Mar 29 18:41:27 2017 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed Mar 29 18:41:27 2017 -0700"
      },
      "message": "Switch libplatformproto to sharedlib\n\nlibplatformprotos is really really unhappy if it gets\nloaded twice into the same process which trivially happens\nif it\u0027s a static library. Switch it to a shared library\ninstead to fix this.\n\nChange-Id: I90297d076d0739bab683fbd9607d7fc0884a002d\nFixes: 36272398\nTest: Ran hwui_unit_test, didn\u0027t crash\n"
    },
    {
      "commit": "33af6c730f9f7fc51f04516c7a22cac82cb9823e",
      "tree": "94f834ef6df06b8b534cb3a053de308f74793a09",
      "parents": [
        "c463bed8dbfbb5bbac791299e8997282685e64d2"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Wed Mar 29 13:00:35 2017 -0700"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Wed Mar 29 20:11:04 2017 +0000"
      },
      "message": "AAPT2: Parse an ID encoded as a map\n\nID types should not be encoded as a map. AAPT and AAPT2 emit\nIDs as boolean types.\n\nSome apps exist that for some reason have their ID types encoded\nas empty maps. This is the case only for the auto generated IDs\nfrom enum values in \u003cattr\u003e tags.\n\nAllow IDs as maps and ignore their content when processing an APK\nfor optimizing.\n\nAlso fixes an issue with expected size of the ResTable_package struct.\n\nBug: 35861796\nTest: tested against the APK in b/35861796\nChange-Id: I29a19cd9777bb10bed6766cd42e35e50e098797b\n"
    },
    {
      "commit": "caaaa66e57293e4a6f312649bf472eab84d5c7fe",
      "tree": "66beeca493da1046b482736293441a70f29474b3",
      "parents": [
        "b7980a3bbee067eae4665c8abbe8d39aefb2d36a"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Mon Mar 27 00:40:21 2017 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Tue Mar 28 18:35:49 2017 -0700"
      },
      "message": "Convert bitmaps to sRGB/scRGB when they have a color profile\n\nThis change also fixes an issue with RGBA16F bitmaps when modulated\nwith a color (for instance by setting an alpha on the Paint object).\n\nThe color space conversion is currently done entirely in the shader,\nby doing these operations in order:\n\n1. Sample the texture\n2. Un-premultiply alpha\n3. Apply the EOTF\n4. Multiply by the 3x3 color space matrix\n5. Apply the OETF\n6. Premultiply alpha\n\nOptimizations:\n- Steps 2 \u0026 6 are skipped for opaque (common) bitmaps\n- Step 3 is skipped when the color space\u0027s EOTF is close\n  to sRGB (Display P3 for instance). Instead, we use\n  a hardware sRGB fetch (when the GPU supports it)\n- When step 3 is necessary, we use one of four standard\n  EOTF implementations, to save cycles when possible:\n  + Linear (doesn\u0027t do anything)\n  + Full parametric (ICC parametric curve type 4 as defined\n    in ICC.1:2004-10, section 10.15)\n  + Limited parametric (ICC parametric curve type 3)\n  + Gamma (ICC parametric curve type 0)\n\nColor space conversion could be done using texture samplers\ninstead, for instance 3D LUTs, with or without transfer\nfunctions baked in, or 1D LUTs for transfer functions. This\nwould result in dependent texture fetches which may or may\nnot be an advantage over an ALU based implementation. The\ncurrent solution favor the use of ALUs to save precious\nbandwidth.\n\nTest: CtsUiRenderingTests, CtsGraphicsTests\nBug: 32984164\nChange-Id: I10bc3db515e13973b45220f129c66b23f0f7f8fe\n"
    },
    {
      "commit": "2c6ac0ead0b1e35333011e20bbc43d22d9906981",
      "tree": "362a0a24200a10403d535ba4acf1490801528255",
      "parents": [
        "6e42a1d0ce86dda0b69dcfeed9c1804db1531680",
        "2f944482ece3aba2068ac71cd9c5067e4bc8424c"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Mar 28 00:41:08 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 28 00:41:11 2017 +0000"
      },
      "message": "Merge \"Add missing assert that task isn\u0027t queued\""
    },
    {
      "commit": "55bea5e30808856eb039d74e2fa7e06ee0dd05e7",
      "tree": "c6c474df1147a89443c5f68911a21876f819bf57",
      "parents": [
        "52b716df852d1190b282f0393c24803ffd56059f",
        "1b7184f8d206505804042833a3825a3b8a9649dc"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Mar 27 23:30:18 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 27 23:30:22 2017 +0000"
      },
      "message": "Merge \"Add a few asserts for possible corruption cases\""
    },
    {
      "commit": "1b7184f8d206505804042833a3825a3b8a9649dc",
      "tree": "4c14412bcccfe7b4da3c467f4ce32ac7266aa812",
      "parents": [
        "48a153e57032fccf9ea7dac728d60738c3c848d2"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Mar 27 14:47:46 2017 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Mar 27 14:47:46 2017 -0700"
      },
      "message": "Add a few asserts for possible corruption cases\n\nBug: 36502346\nTest: builds \u0026 boots\nChange-Id: Id96a26a30e4a8c6f51a68bf07cfe6bd6d07c244e\n"
    },
    {
      "commit": "2f944482ece3aba2068ac71cd9c5067e4bc8424c",
      "tree": "1a603ac13c0fadc45b630348de25691ca6f7bd67",
      "parents": [
        "48a153e57032fccf9ea7dac728d60738c3c848d2"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Mar 27 14:34:28 2017 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Mar 27 21:38:09 2017 +0000"
      },
      "message": "Add missing assert that task isn\u0027t queued\n\nProbably won\u0027t fix anything but this assert is in queue()\nbut not queueAtFront() and inserting a task twice is Really Bad.\n\nBug: 36139852\nTest:  ¯\\_(ツ)_/¯\nChange-Id: Ida0f829eecfdd46c17c36b816528c49d12b7cf29\n"
    },
    {
      "commit": "81ff6ee47a9373430e4c8f30bbe5129ca48643bd",
      "tree": "a8a617c42953e0cd0d7c6a16be117257881e7d5e",
      "parents": [
        "b03314dad82dbfa19906947df20699e4c8b2fc83",
        "48f9bb6254324006a4595f4576c28498a4aaf5d2"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Mar 27 18:36:23 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 27 18:36:28 2017 +0000"
      },
      "message": "Merge \"Register functor draw correctly\""
    }
  ],
  "next": "48f9bb6254324006a4595f4576c28498a4aaf5d2"
}
