)]}'
{
  "log": [
    {
      "commit": "05cdededbe77fad5227fa2d17d3c5593bc9b3242",
      "tree": "3f3d4574a1ec8b335836004dc1c6fc184e6918c8",
      "parents": [
        "0c91cdd560ce594ce735fafa1ed4204bddbb8bff",
        "a1e500ebf41b3bdb907c6cd00d5f1be2af06e720"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Fri Apr 28 19:11:02 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Apr 28 19:11:02 2017 +0000"
      },
      "message": "Merge \"Add conic support for Path#approximate\" into oc-dev am: ebd44d0076\nam: a1e500ebf4\n\nChange-Id: Ifc5033fbb595a672a29539599e39ac7e56c62d50\n"
    },
    {
      "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": "82e26c921469ec7d1405e85d0f106068b90d6a87",
      "tree": "4283a7fc8b8a95e2871bfe93e7d234a77bbcd2f4",
      "parents": [
        "3ad5340e5c1304af081afccf87a6785afdab075c",
        "65c42a5569473b3cd1481763d98ad39ffd49df4b"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Fri Apr 28 01:27:30 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Apr 28 01:27:30 2017 +0000"
      },
      "message": "Merge \"AAPT2: Add workaround for non-standard package IDs\" into oc-dev am: e7172ff9fb\nam: 65c42a5569\n\nChange-Id: I1238656a9edb9984d36412dba506b869f574e3d4\n"
    },
    {
      "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": "422098960166fb654ea42a624e1996e4054b5d71",
      "tree": "b538b3d6beb7c1fe89130f97a1e08ee70ec61dc4",
      "parents": [
        "153da0d8de42779bef8b51ca6a28c1ed11727509",
        "1c9c7b867cb482b92d7e39785f330dec4acad43a"
      ],
      "author": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Fri Apr 28 00:25:46 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Apr 28 00:25:46 2017 +0000"
      },
      "message": "Merge \"Disable Vulkan backend when running hwui_unit_tests.\" into oc-dev am: f9dc09f4ea\nam: 1c9c7b867c\n\nChange-Id: I9550af0105210cdf24483f8dfe219833ff7812c8\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": "cf5ef927e241637a9d9ea1aab572dfd12fcde7ae",
      "tree": "b75fc85d3a980ac2425685c87c60a58d3f8c9234",
      "parents": [
        "301e8273eae6b91ef4a9211db7fc394c488e1f12",
        "155d52155b67d1563d0a55f654683d98832d0860"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Apr 27 06:54:46 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 27 06:54:52 2017 +0000"
      },
      "message": "Merge \"Remove uses of SkBitmap::copyTo\""
    },
    {
      "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": "155d52155b67d1563d0a55f654683d98832d0860",
      "tree": "a8a312d22ca34244a27523aced9393c74ef764dc",
      "parents": [
        "c2d407a7dc4ea0f402037cac548b47e95bf426a1"
      ],
      "author": {
        "name": "Matt Sarett",
        "email": "msarett@google.com",
        "time": "Tue Apr 25 17:32:34 2017 -0400"
      },
      "committer": {
        "name": "Matt Sarett",
        "email": "msarett@google.com",
        "time": "Wed Apr 26 16:17:46 2017 -0400"
      },
      "message": "Remove uses of SkBitmap::copyTo\n\nThis API is being deleted:\nskbug.com/6464\n\nTest: Refactor\n\nChange-Id: Id78653ca45d6bfee2e4f9c9c24c2414b888f0df5\n"
    },
    {
      "commit": "6e8428727731986e31912c6eb998da0dc2f78c97",
      "tree": "2c8ee3e6ac46bb4d6e440b312b4872dd1110cfdb",
      "parents": [
        "fd79d8490640a17e0bc69ffa622cdf3f4478422d",
        "4554fa6b7cbeb055785d784b6e02161ed39f8767"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Wed Apr 26 01:04:02 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Apr 26 01:04:02 2017 +0000"
      },
      "message": "Merge \"Fix include\" into oc-dev am: 7e44951bb7\nam: 4554fa6b7c\n\nChange-Id: I44871c8098ffc01ca86dd8c16657cacaf26be3b3\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": "53a354365bcd0df5bb53e3cb582c3ac002095d84",
      "tree": "e5c7dc693fd2138c4c1812d3c135f148ad62e9a3",
      "parents": [
        "75f22837575eaaeeee0eb86fb042b41d918aad9b"
      ],
      "author": {
        "name": "Greg Daniel",
        "email": "egdaniel@google.com",
        "time": "Tue Apr 25 13:44:00 2017 -0400"
      },
      "committer": {
        "name": "Greg Daniel",
        "email": "egdaniel@google.com",
        "time": "Tue Apr 25 13:44:51 2017 -0400"
      },
      "message": "Use new GrVkBackendContext::Create api\n\nTest: manual testing\n\nChange-Id: Ia8daebd2e028082a8b3d58f29057648746398735\n"
    },
    {
      "commit": "6205e158f3eed534d26e236644c2ef7659adbbf7",
      "tree": "e828fee319373f28dda50774d8171be9541928e6",
      "parents": [
        "ad0b447dbe23be6d1e3d7a72a47b1898fce3849b",
        "2ccaec63ff66ac7999d92b363a7093952cb17279"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Apr 21 14:09:20 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 21 14:09:24 2017 +0000"
      },
      "message": "Merge \"Create helper script to parse systrace files\""
    },
    {
      "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": "2ccaec63ff66ac7999d92b363a7093952cb17279",
      "tree": "30b241b93b37d2f5cd4fc402cf0817dc0eeb1cde",
      "parents": [
        "6e6f48825c2555e7e1c7da6082df1043a59dbe73"
      ],
      "author": {
        "name": "Stan Iliev",
        "email": "stani@google.com",
        "time": "Wed Apr 19 15:38:06 2017 -0400"
      },
      "committer": {
        "name": "Stan Iliev",
        "email": "stani@google.com",
        "time": "Thu Apr 20 10:08:11 2017 -0400"
      },
      "message": "Create helper script to parse systrace files\n\nCreate a script that can parse systrace files and calculates\nmetrics. The example metrics are average DrawFrame and average\ntime to record a View.\n\nTest: ran the script and compared outputs with numbers visible,\nwhen systrace file is opened in a browser.\n\nChange-Id: If37322e7838e177efb3e2e4a00cb6e97755aa453\n"
    },
    {
      "commit": "31e44d8e92e62b4650e8923c091a46c5c126fab9",
      "tree": "a3ca37468974c6f3826200ac7fad3d378f489ac7",
      "parents": [
        "e54a1877e9a79e2084e92594cfe281c791ae822e",
        "515222acd24168bebb08cd9ca0272971426e6587"
      ],
      "author": {
        "name": "Matt Sarett",
        "email": "msarett@google.com",
        "time": "Thu Apr 20 12:37:24 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Apr 20 12:37:24 2017 +0000"
      },
      "message": "Merge \"Add unit test for Skia path behavior\" into oc-dev am: dc3ab163d3\nam: 515222acd2\n\nChange-Id: I214885c57e77ffd8a991478c96fb70582ce43e6c\n"
    },
    {
      "commit": "3fc8f2df3098a5bb8191cca43b4dc4cf3bba160b",
      "tree": "5590e54c4f55bdc3236f9a2bae8d48e5cb979974",
      "parents": [
        "74411669a225591f9df757c7733ad62187111c17"
      ],
      "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": "Wed Apr 19 17:39:21 2017 -0700"
      },
      "message": "Convert libinputservice to Android.bp\n\nSee build/soong/README.md for more information.\n\nTest: m -j checkbuild\nChange-Id: I3cd2bb05ec89c40ebd1240e352a19f99d00dc114\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": "695489762023063a7284bba8d9a36ec7ede198a5",
      "tree": "75d6b5d88ef1b4a0ef3f319548e003acc20f571a",
      "parents": [
        "9e9d929ed892321727cfc7dfdde37541a6ef35ab",
        "7c0ae0f58b9f258560088b670d3a4cb3ec5d832a"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Apr 18 18:35:14 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 18 18:35:20 2017 +0000"
      },
      "message": "Merge \"bitmaps and pixelrefs no longer need lock/unlock\""
    },
    {
      "commit": "0bbc82cba1a2a5ac0fc852b82cb85b50e48118e9",
      "tree": "786464fe7bd6e82c092fd60534183e521803a32d",
      "parents": [
        "fdba38b099f832319179c670e8d0a390a0822d4c",
        "c421f748a9bb52b2019ac2bebf6ecf937a380394"
      ],
      "author": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Tue Apr 18 16:29:39 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Apr 18 16:29:39 2017 +0000"
      },
      "message": "Merge \"Remove round rect clipping optimization.\" into oc-dev am: 190fe086df\nam: c421f748a9\n\nChange-Id: I6fe0b0eabb2ad17a7dd6df8c695029f36f8b3cd6\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": "7c0ae0f58b9f258560088b670d3a4cb3ec5d832a",
      "tree": "dcbf7f79e0d6ad941c77cfc0e70299295678c76a",
      "parents": [
        "8e3b1a63f9cd76a71ecbfc8c6a0c68b4cbecab90"
      ],
      "author": {
        "name": "Mike Reed",
        "email": "reed@google.com",
        "time": "Mon Apr 17 17:05:48 2017 -0400"
      },
      "committer": {
        "name": "Mike Reed",
        "email": "reed@google.com",
        "time": "Tue Apr 18 10:22:42 2017 -0400"
      },
      "message": "bitmaps and pixelrefs no longer need lock/unlock\n\nTest: covered by CtsGraphicsTestCases and hwui_unit_tests\n\nChange-Id: I42a25961a2eb3755d2fd22a617aa21a24ec0994f\n"
    },
    {
      "commit": "2a8ec1014bf4a84ee38137ae7dbfc07a4f4a1236",
      "tree": "d3c40a97ded5b6415da0e6a5df2606cda2dd5c39",
      "parents": [
        "7441c000b1cfd44c991ded51d290d962fecc9ad2",
        "9c66ae77a0850f317b7f9bdd67a64b1d1f0ef64c"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue Apr 18 02:01:41 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Apr 18 02:01:41 2017 +0000"
      },
      "message": "Merge \"Disable crashing drop shadow tests\" into oc-dev am: 9d67b50308\nam: 9c66ae77a0\n\nChange-Id: I2bc2fdd8c6921dda826b35244fe880e8301b11a2\n"
    },
    {
      "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": "6be819522df39addd075ed1a4776b29be71fc077",
      "tree": "3d73af7f31ff21f695979a600cf0a9d66d8f8fba",
      "parents": [
        "dbe270ce058afa3f61e5bf62c293ff37960d1617",
        "2439e19d4127b59274a3ca8e7902cddc9accecfd"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Mon Apr 17 12:31:09 2017 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Mon Apr 17 12:31:09 2017 -0700"
      },
      "message": "resolve merge conflicts of 2439e19d4127 to master\n\nTest: built locally\nChange-Id: Idc922c7fa3306e6884b88c79e73f5375d8e65888\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": "71483a891aa89af5c0121577a0058586c53c6283",
      "tree": "900a0ae41063f3ecac6c350d7916044ea8645143",
      "parents": [
        "bcc7cebcdb0434241dfe85e7ef030b845540372c",
        "0a8fb522eba5fbaa5e98e54abb7bb59e37c4584c"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Apr 17 17:11:27 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Apr 17 17:11:33 2017 +0000"
      },
      "message": "Merge \"use sk_sp to manage colortables\""
    },
    {
      "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": "00ce7700709251969b343ad8201be03728e890d0",
      "tree": "dd269f6dd791cf258f06205171db398fca176c7e",
      "parents": [
        "9191faf4eb07883240686f29228fdfc215fe413d",
        "7e92ac449b812321fa9f762945e49f282cacf059"
      ],
      "author": {
        "name": "Matt Sarett",
        "email": "msarett@google.com",
        "time": "Fri Apr 14 19:02:54 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Apr 14 19:02:54 2017 +0000"
      },
      "message": "Merge \"Bug fix: use legacy SkCanvas regardless of color space tag\" into oc-dev am: 101dc265a8\nam: 7e92ac449b\n\nChange-Id: Ic50bd5fe0358390024bdb9a34e14906dba669f25\n"
    },
    {
      "commit": "24c64646636755c502fbd438bbebd3ec11e73f55",
      "tree": "9c9b5b3eddd64c8e40018973c24da6a773a2c992",
      "parents": [
        "752fa520d732dac0f4f9c6bbee468b1a612b8321",
        "83c52e0a40c6e39282a3bcc69c6bbdfa92922941"
      ],
      "author": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Fri Apr 14 18:09:55 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Apr 14 18:09:55 2017 +0000"
      },
      "message": "Merge \"Use provided style for fallback font selection\" into oc-dev am: 43112fd26e\nam: 83c52e0a40\n\nChange-Id: Ia42f6a377c2617c8da9a84cb8bd7781326e464a1\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": "99effcccbcfda9937c0e238874ed50b33f37b135",
      "tree": "2d959d70603db6e6b795018feb249a4e627c625d",
      "parents": [
        "cc04f02b44e7aa02945c736d9e71da0f125da259",
        "c7fd8db8a6441fda127a16e55238e8bc8bd39454"
      ],
      "author": {
        "name": "Jim Van Verth",
        "email": "jvanverth@google.com",
        "time": "Fri Apr 14 16:03:13 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Apr 14 16:03:13 2017 +0000"
      },
      "message": "Merge \"Add uncached and perspective shadows to Skia renderer\" into oc-dev am: 1be9766a68\nam: c7fd8db8a6\n\nChange-Id: If7f3bfc01496a9fe9b198dc63bd7c064943c9008\n"
    },
    {
      "commit": "659c9cfac3a6c222a41057f5c93a2556b19649c5",
      "tree": "e95d19aefba9f9ca9cd365b4db975037f076669a",
      "parents": [
        "c831fe6183b0dd34837cb2fd3082573d8f6729b5",
        "17452ee553c4ba02291d74ad2ba23e06edaeecc2"
      ],
      "author": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Fri Apr 14 15:31:25 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Apr 14 15:31:25 2017 +0000"
      },
      "message": "Merge \"Introduce setFallbackTypeface\" into oc-dev am: 729a515e5e\nam: 17452ee553\n\nChange-Id: I66fe816727aae3fdf617c41796b25478090704fe\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": "56909176794151fbb26d252deb328a8bcf397529",
      "tree": "bc9e658618094953649f6d211f788132c8821d5b",
      "parents": [
        "101c773b812dd0623fa7d31500ef318d9c995078",
        "d0814db633dbd76ecdec08806199d49654562d48"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Apr 13 19:54:04 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 13 19:54:11 2017 +0000"
      },
      "message": "Merge \"Add SkiaCanvas::captureCanvasState()\""
    },
    {
      "commit": "0a8fb522eba5fbaa5e98e54abb7bb59e37c4584c",
      "tree": "9a85e553c618c85901e57a720e7a8d02bab566a7",
      "parents": [
        "b87a2f041d81ecfbd7832277fb745317a92f7bd2"
      ],
      "author": {
        "name": "Mike Reed",
        "email": "reed@google.com",
        "time": "Thu Apr 13 15:31:32 2017 -0400"
      },
      "committer": {
        "name": "Mike Reed",
        "email": "reed@google.com",
        "time": "Thu Apr 13 15:40:20 2017 -0400"
      },
      "message": "use sk_sp to manage colortables\n\nThe goal is to eliminate the times we have to manually save ref or\nunref.\n\nTest: hwui_unit_tests and CtsGraphicsTestCases pass\n\nChange-Id: I69273acc18d3f3beea60625a37bf007907ff05e9\n"
    },
    {
      "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": "d0814db633dbd76ecdec08806199d49654562d48",
      "tree": "1f6cce0103507b2c88ce8861ef0e8fd4f092f72f",
      "parents": [
        "43791354c72dec37f9e93ab9cb1b494bb99926db"
      ],
      "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 14:23:38 2017 -0400"
      },
      "message": "Add SkiaCanvas::captureCanvasState()\n\nTest: Verified bug is fixed.  Wrote unit test.\n\nBug: 37268771\n\nChange-Id: I9deb7db353cd2129ad245e7f65419670463bb717\n"
    },
    {
      "commit": "4085d2cd801e8d0fcfa2ebb8a3335e59e9475ad0",
      "tree": "31f223abcaadd3b06013b89a5782652afd4f148e",
      "parents": [
        "293ac8cef29c72614d584232a54b2d974ebb44ac",
        "2cb0826d2e9d5b5e7721a150977ef1cc5b432301"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Apr 13 17:52:06 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 13 17:52:12 2017 +0000"
      },
      "message": "Merge \"lockPixels is no longer virtual\""
    },
    {
      "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": "86a1c30a113df5be95b27d6c1b80fb9f78a2ac58",
      "tree": "4461f64f32bb8eea32d366f5eb18ac868bfb5a8f",
      "parents": [
        "7bb1c18b583325ba4e2b88b01c544e6fe734bbce",
        "43844db75d1214586a95b0449167c27bc51ca697"
      ],
      "author": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Wed Apr 12 17:59:18 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Apr 12 17:59:18 2017 +0000"
      },
      "message": "Merge \"Change behavior of setBitmap to cleanly reset the canvas\" into oc-dev am: 7944962b7e\nam: 43844db75d\n\nChange-Id: I8e362993a2fc51ce93015924d4819884301aa0c1\n"
    },
    {
      "commit": "2cb0826d2e9d5b5e7721a150977ef1cc5b432301",
      "tree": "3f07fc89cf3982ced933823fecfb5966897d07dd",
      "parents": [
        "9c58d46e1d31b50fe70eaf26d98f87ef2fdd5f9a"
      ],
      "author": {
        "name": "Mike Reed",
        "email": "reed@google.com",
        "time": "Wed Apr 12 11:30:41 2017 -0400"
      },
      "committer": {
        "name": "Mike Reed",
        "email": "reed@google.com",
        "time": "Wed Apr 12 11:52:22 2017 -0400"
      },
      "message": "lockPixels is no longer virtual\n\nSee skbug.com/6481\n\nWith pixelrefs now always (logically) locked, we no longer override\nonNewLockPixels/onUnlockPixels. We also must now pass our\naddress/rowBytes to the base constructor.\n\nThese changes allow us to remove duplicate fields in the hwui Bitmap\nsubclass -- mRowBytes and mColorTable, since these fields are now always\navailable from the base-class.\n\nHowever, since this subclass still wants to overwrite const fields in\nthe base-class (its reconfigure api), change the impl to use the newly\nadded private method (android_only_reset) to encapsulate this.\n\nTest: hwui_unit_tests and CtsGraphicsTestCases pass\n\nChange-Id: I57a3af1135580513b708f35549a6defb7ac6c04e\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": "63df65dfe2632f0b2e5d53bea36df9aece96ed12",
      "tree": "aa5b7a0cd837bf4d9e04ef2a1bc2172d1fb75188",
      "parents": [
        "ae43e073af2efd48ebffb1c72774dceade11f3e2"
      ],
      "author": {
        "name": "Mike Reed",
        "email": "reed@google.com",
        "time": "Mon Apr 10 13:31:28 2017 -0400"
      },
      "committer": {
        "name": "Mike Reed",
        "email": "reed@google.com",
        "time": "Mon Apr 10 17:46:03 2017 +0000"
      },
      "message": "mark mPixelStorageType const\n\nThis is a natural consequence of the fact that we always call\nsetPreLocked from the constructor. Future Skia will remove the virtual\nfor lockPixels (onNewLockPixels), but that is compatible with this\nsubclass since does not change its pixel-addr or pixel-type after the\nconstructor.\n\nSee skbug.com/6481 for more details\n\nTest: existing tests apply, no behavior change\n\nChange-Id: I0f9d3efc9a05b71907480eaaadbc7fafe9dd491b\n"
    },
    {
      "commit": "0246a298f909832119cfb341ce9c4ce81f32ca95",
      "tree": "24ad65d26ad1a32060937a8a2121cd058449fa48",
      "parents": [
        "718264a3f80916f3dd35e0531734bfbcb6bedf9c",
        "3eafcb2d8b14da0c356e7d075ae5dee5fd5d9b6e"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Fri Apr 07 18:48:57 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Apr 07 18:48:57 2017 +0000"
      },
      "message": "Merge \"Color management, the missing pieces\" into oc-dev am: 7dfa16c2ef\nam: 3eafcb2d8b\n\nChange-Id: I079d8d17982eecc022f2a53e1e6ca193dc7a3ace\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": "ef6c9b1d8bec693ae57919d0f95f54e7588957b5",
      "tree": "d5c4c448d0b22045db1599daaef313786eb6bf8b",
      "parents": [
        "f439e22fb6139618db8a84b7aa5d24c5f29b4077",
        "3b447f6ed7566996b854c6646f026218d82d5f56"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Thu Apr 06 22:46:04 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Apr 06 22:46:04 2017 +0000"
      },
      "message": "Merge changes I6f00614d,I987eeab2 into oc-dev am: c273784c91\nam: 3b447f6ed7\n\nChange-Id: Ia6c35dd4a3fff3c300cb8c390d9628481605928a\n"
    },
    {
      "commit": "7c9fb6076e8d64dbca19cfe0628b02040c5750e2",
      "tree": "9ff4dc8de426cf5872e269ef24fe7062f5ea966a",
      "parents": [
        "cdbfc0e5f2d412c7728cca829dd9f1e72501bf77",
        "fd5d5425ee5f934e8713ded0013ab32e900c8009"
      ],
      "author": {
        "name": "Matt Sarett",
        "email": "msarett@google.com",
        "time": "Thu Apr 06 22:16:49 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Apr 06 22:16:49 2017 +0000"
      },
      "message": "Merge \"Xform bitmaps to sRGB on SW and PDF canvases\" into oc-dev am: c29dffed16\nam: fd5d5425ee\n\nChange-Id: If960ccd900ebc2b841c2f13ca4f25820a48a950f\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": "d20f2c2d02c73cf036c4b74b0c4ed56d09d67fc7",
      "tree": "7e09896f6b4ff5a2736201b347f32e5ed3fc84db",
      "parents": [
        "3f09522f58714ef309a4b2c48e6552b922ddcc2f"
      ],
      "author": {
        "name": "Mike Reed",
        "email": "reed@google.com",
        "time": "Wed Apr 05 17:36:00 2017 -0400"
      },
      "committer": {
        "name": "Mike Reed",
        "email": "reed@google.com",
        "time": "Wed Apr 05 17:39:25 2017 -0400"
      },
      "message": "use new api for passing colortable to allocPixels\n\nTest: Bitmap:colorTableRefCounting still passes\n\nChange-Id: I5f20a55a98f5766da7c4a490c9be56f9140024c3\n"
    },
    {
      "commit": "826deefda55ead0036cdb0924bc14f17d2a85420",
      "tree": "200ec673d02e096b02a3991f8821816533b863ff",
      "parents": [
        "06d6b4d9b0cc895c7d28e56019213800d4d522cf"
      ],
      "author": {
        "name": "Mike Reed",
        "email": "reed@google.com",
        "time": "Tue Apr 04 15:32:04 2017 -0400"
      },
      "committer": {
        "name": "Mike Reed",
        "email": "reed@google.com",
        "time": "Wed Apr 05 14:20:38 2017 +0000"
      },
      "message": "switch over to SkVertices object, and stop using deprecated methods.\n\nThis allows Skia to remove\n  SK_SUPPORT_LEGACY_CANVAS_VERTICES\n  SK_SUPPORT_LEGACY_BITMAP_SETPIXELREF\n  SK_SUPPORT_LEGACY_PIXELREFFACTORY\n\nTest: Existing CTS cover these changes\n\nRunning CtsGraphicsTestCases, there were 6 failures w/ and w/o this CL.\nNone of the 6 seems related to this CL.\n\nChange-Id: I724082357d9f6cb699770df3c0b9ef555b957697\n"
    },
    {
      "commit": "9b21b970bc439546aa9c15ca6c09f071ef756acc",
      "tree": "c519f3c9a02a7465c71ff3b03d0071f91a083eca",
      "parents": [
        "c483838dcb90190b9fef7ba6051812511958910c",
        "563c5d3643b816edac60e67fae9ab5a80da71492"
      ],
      "author": {
        "name": "Stan Iliev",
        "email": "stani@google.com",
        "time": "Tue Apr 04 22:34:40 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Apr 04 22:34:40 2017 +0000"
      },
      "message": "Merge \"Fix pop-up shadow drawn in the wrong place with Skia pipeline\" into oc-dev am: a5c6ba3473\nam: 563c5d3643\n\nChange-Id: I8a24e8d642d49cb4822db50bbf3b2fe6e5ec9122\n"
    },
    {
      "commit": "9d64a418bb03f111089eed4969d6379a59508f12",
      "tree": "1d064e897d3f46516f19f9cd7ee88d793ca559ed",
      "parents": [
        "f4628d92e0fed4bf63d630a3bf92eae09c64afe3",
        "0b58d9928309e2c64c7cafad287e55a8151ab19a"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Apr 04 21:36:06 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 04 21:36:10 2017 +0000"
      },
      "message": "Merge \"Optimize Canvas::drawGlyphs\""
    },
    {
      "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": "0b58d9928309e2c64c7cafad287e55a8151ab19a",
      "tree": "9b698e70c4dda4dcdf0c1aabe03deae6774363d3",
      "parents": [
        "7ead6c4da9e73a485965070903277dae90210c2d"
      ],
      "author": {
        "name": "Stan Iliev",
        "email": "stani@google.com",
        "time": "Thu Mar 30 18:22:27 2017 -0400"
      },
      "committer": {
        "name": "Stan Iliev",
        "email": "stani@google.com",
        "time": "Tue Apr 04 15:43:12 2017 -0400"
      },
      "message": "Optimize Canvas::drawGlyphs\n\nAvoid one memcpy in Canvas::drawGlyphs for all pipelines.\n\nTest: CTS passed with exception of SweepTests#testBasicDraws\nshadowtext, which fails with and without this CL.\nChange-Id: I0841232dc7a6173eb3b03f939dbde15a84186296\n"
    },
    {
      "commit": "4d6141c2975036cdefb8ece4c1f9aedaa54689d7",
      "tree": "673d168a21c3c6bb046d161c3aa65a55a6b42f4b",
      "parents": [
        "c2c582bdedca33bf1a3230023751ee151f7efaef",
        "d75510ab6f889bf48e86cf8627166ee9126aef5b"
      ],
      "author": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Tue Apr 04 19:33:52 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Apr 04 19:33:52 2017 +0000"
      },
      "message": "Merge \"Fix HWUI/Skia Gradients to premultiply the colors prior to interpolation\" into oc-dev am: f9340ca491\nam: d75510ab6f\n\nChange-Id: Iffb6644220b68790553ca9fa08ab2e4b532e50cb\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": "5d2e064ebf6965ee77add1d1c4c90b2f064eea3e",
      "tree": "a5b1d618dde91f0c2d01e20f02c3be230cf84e76",
      "parents": [
        "f63de8831f70dd6ba01ce600b575417c2e947271",
        "f497ca5a2e4df064fa0ff37711923097f3ebcc3e"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue Apr 04 17:35:53 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Apr 04 17:35:53 2017 +0000"
      },
      "message": "Merge \"Revert \"Switch libplatformproto to sharedlib\"\" into oc-dev am: eabb5621dd\nam: f497ca5a2e\n\nChange-Id: I0a7bf55e5614b5b8f380332c2cd43d7d14df4e66\n"
    },
    {
      "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": "29e77fe35926aca5fde06283cec631e09f33bea1",
      "tree": "75804e54824847338615f7fd9729396dd0c3373c",
      "parents": [
        "c4e2e4c3c89d133d61e2e648b41aea1758f93c74",
        "6c9bb2408ff7c87c981aafe71d0b0fe11cd2c641"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Apr 04 15:09:41 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 04 15:09:45 2017 +0000"
      },
      "message": "Merge \"Don\u0027t use deprecated canvas methods\""
    },
    {
      "commit": "6c9bb2408ff7c87c981aafe71d0b0fe11cd2c641",
      "tree": "38e07107baa92af04ae64d75045a6a396e18da7d",
      "parents": [
        "9bcef123f49bbb5556e5feedfa2b6a67e5bedb70"
      ],
      "author": {
        "name": "Mike Reed",
        "email": "reed@google.com",
        "time": "Tue Apr 04 09:15:37 2017 -0400"
      },
      "committer": {
        "name": "Mike Reed",
        "email": "reed@google.com",
        "time": "Tue Apr 04 13:19:38 2017 +0000"
      },
      "message": "Don\u0027t use deprecated canvas methods\n\nAllows skia to remove SK_SUPPORT_LEGACY_CANVAS_HELPERS\n\nTest: Existing tests cover the change.\n\nChange-Id: I764c11f7a9bd7b87fba8563968160ee7dc9a99a2\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": "7a41511805f70a5883851e5a8e648c5baf51589d",
      "tree": "8adaea9e53621889f426d1a1328ae50275a080b2",
      "parents": [
        "82a67cad95c7b68f52a389a752966b8841f0fd06",
        "25912c78f5a5ab71a7c5f11426f34f505e6dbb0d"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Apr 03 20:56:43 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Apr 03 20:56:48 2017 +0000"
      },
      "message": "Merge \"Fix error in RenderNode unit test with Skia pipeline\""
    },
    {
      "commit": "6813635aea66a5c6eea66cbc3a19d97af5df94bb",
      "tree": "74cbcfea5184e2d36c5a05e9c8e8409e517e1e46",
      "parents": [
        "1f4c17a807b477411fac7b086a0081c0a4c8562b"
      ],
      "author": {
        "name": "Mike Reed",
        "email": "reed@google.com",
        "time": "Mon Apr 03 13:13:51 2017 -0400"
      },
      "committer": {
        "name": "Mike Reed",
        "email": "reed@google.com",
        "time": "Mon Apr 03 13:14:35 2017 -0400"
      },
      "message": "add temporary cast to allow Skia roll\n\nTest: refactoring CL. Existing unit tests still pass.\n\nChange-Id: I2e2a647bfad76af313db70d196566e01bf909fc8\n"
    },
    {
      "commit": "25912c78f5a5ab71a7c5f11426f34f505e6dbb0d",
      "tree": "a092e2be63819f7f4467c3d1b36625972efb87a5",
      "parents": [
        "7ead6c4da9e73a485965070903277dae90210c2d"
      ],
      "author": {
        "name": "Stan Iliev",
        "email": "stani@google.com",
        "time": "Fri Mar 31 14:00:20 2017 -0400"
      },
      "committer": {
        "name": "Stan Iliev",
        "email": "stani@google.com",
        "time": "Fri Mar 31 14:00:20 2017 -0400"
      },
      "message": "Fix error in RenderNode unit test with Skia pipeline\n\nFix failing RenderNode unit tests with Skia pipeline, caused by\nTestUtils::syncHierarchyPropertiesAndDisplayList not walking past\nroot node.\n\nTest: ran HWUI unit tests.\nbug: 32507847\nChange-Id: I7e64fb02fd8f4874eadacafcac7e9f1ae4e56365\n"
    },
    {
      "commit": "62027f69c0a7e430b358e49504d87d53b7717432",
      "tree": "bc3d5d54efc9dc14f2730b7b8e78e1b943afda2c",
      "parents": [
        "8e6cb82a1a8a4aa678282289c13bf9f4ccc83305",
        "6619d61697aebc2c43cb64a74525b91164b8288d"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Mar 31 17:04:29 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 31 17:04:33 2017 +0000"
      },
      "message": "Merge \"Add test configs to hwui tests\""
    },
    {
      "commit": "3c9c29ee38e6e89eb0d6861e04fb4af7fb0a2c3b",
      "tree": "35a05a5e41f803e7769499985bd99d83ed74417b",
      "parents": [
        "0e4d38028ce64b923136149a9245cf3ee7fabedb",
        "af39ba5d4982af2453d3afcfa991c69af7bb3c56"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu Mar 30 17:32:00 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Mar 30 17:32:00 2017 +0000"
      },
      "message": "Merge \"Switch libplatformproto to sharedlib\" into oc-dev am: 72c2760943\nam: af39ba5d49\n\nChange-Id: I73d9035f13f83c80045004867b4470779095d603\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": "b7a10e6b4a0f481cfc080207f32412cc5f827281",
      "tree": "f23022be05e8de97c6236d77caccbf760afc7f76",
      "parents": [
        "ec6eb3d5ffeabc7ada915bffecc620cca95964a9",
        "f7aa6cdca1d2cdaeb0806b1c004a8ce302d17621"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Mar 30 15:14:49 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 30 15:14:53 2017 +0000"
      },
      "message": "Merge \"Add comments to clarify how SkDrawable dtor is called\""
    },
    {
      "commit": "427bb80ea8b2116ec6f80ff619e574968bdd57cc",
      "tree": "350ead64118366fa44a18406d23556263a49c409",
      "parents": [
        "db1251e16905e349a41137f02007daac2f720f44",
        "6869c551068d3a5f58d1fcfd9cb569e0f2c53dc3"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Thu Mar 30 01:53:07 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Mar 30 01:53:07 2017 +0000"
      },
      "message": "Merge \"Convert bitmaps to sRGB/scRGB when they have a color profile\" into oc-dev am: 33813bd439\nam: 6869c55106\n\nChange-Id: I69b4e1ba160032255891fbb2656445badd5b936e\n"
    },
    {
      "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": "93e8fa3fdc636897a788b6decae398e63720d107",
      "tree": "c9bce5548cf3e9758048361fd8df2cef8648527a",
      "parents": [
        "a68551d796f2d62df20cd6a51ef3cbe7b892cebb",
        "719349cdb34f9d15654fc71f05c5bf6b2dddafcd"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Thu Mar 30 00:41:25 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Mar 30 00:41:25 2017 +0000"
      },
      "message": "Merge \"AAPT2: Parse an ID encoded as a map\" into oc-dev am: c26ace0754\nam: 719349cdb3\n\nChange-Id: Icab08b15c92a8b88b7348e0caf61dba2f025de1b\n"
    },
    {
      "commit": "f7aa6cdca1d2cdaeb0806b1c004a8ce302d17621",
      "tree": "1d3c5c4c820a9c8be5c2b03dd6083afdb919576a",
      "parents": [
        "7ead6c4da9e73a485965070903277dae90210c2d"
      ],
      "author": {
        "name": "Stan Iliev",
        "email": "stani@google.com",
        "time": "Wed Mar 29 18:25:12 2017 -0400"
      },
      "committer": {
        "name": "Stan Iliev",
        "email": "stani@google.com",
        "time": "Wed Mar 29 18:25:12 2017 -0400"
      },
      "message": "Add comments to clarify how SkDrawable dtor is called\n\nDocument the 3 variants of SkDrawable object lifetime in\nSkiaRecordingCanvas:\n- The only drawable that is using ref couting to delete itself is\n\"LayerDrawable\"\n- 2 other drawables (RenderNodeDrawable and GLFunctorDrawable) are\ndeleted by std::deque\n- the rest are deleted by ~LinearAllocator\n\nbug: 36717955\nTest: built and ran on device\nChange-Id: I16f7f6573f6e4dc8d665f58d051255d40b1b690d\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": "6619d61697aebc2c43cb64a74525b91164b8288d",
      "tree": "cdc4115a3731ed9ad10297effff1366d969b7c39",
      "parents": [
        "0466e4a83735884756b6af147d34f6147add7d9a"
      ],
      "author": {
        "name": "Dan Shi",
        "email": "dshi@google.com",
        "time": "Fri Mar 17 10:21:28 2017 -0700"
      },
      "committer": {
        "name": "Dan Shi",
        "email": "dshi@google.com",
        "time": "Tue Mar 28 14:26:55 2017 -0700"
      },
      "message": "Add test configs to hwui tests\n\nDetails about test configs changes are tracked in doc\nhttps://docs.google.com/document/d/1EWUjJ7fjy8ge_Nk0YQbFdRp8DSHo3z6GU0R8jLgrAcw/edit#\n\nThe 3 tests are in the same folder, have to be built together then run.\n\nBug: 35882476\nTest: local test\nmake -j32 hwui_unit_tests\nmake -j32 hwuimicro\nmake -j32 hwuimacro\ntradefed.sh run template/local --template:map test\u003dhwuimacro\n\nChange-Id: I13f785d8e3215c61776a1beecaa121c7dc30bfec\n"
    },
    {
      "commit": "777138625627f6452980549dbf46026d8fbdcc30",
      "tree": "ccdd3de92af14086566c113107c5e1872336973f",
      "parents": [
        "7ec96c4f7979322fac84630e6a42351de70ca4d3",
        "3d2135931cb05db77490e7f151d5badaa9337fa3"
      ],
      "author": {
        "name": "Matt Sarett",
        "email": "msarett@google.com",
        "time": "Tue Mar 28 17:37:05 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 28 17:37:13 2017 +0000"
      },
      "message": "Merge \"Add SkiaBehaviorTest for SkBlurDrawLooper\""
    },
    {
      "commit": "cd56408bd946e3f4d995c85d78b3dab111a9cabb",
      "tree": "0fda9a2d3d7c91c9fabeaaae37ec5ecb6cd19c6e",
      "parents": [
        "d9f5d75d468bbe79487a5a093d3d90281f81d0d1",
        "23c38a9ed9c28a9fda438e7d30532aad7a3844f7"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Mar 28 13:35:50 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 28 13:35:53 2017 +0000"
      },
      "message": "Merge \"Update VectorDrawables cache at frame start\""
    },
    {
      "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": "23c38a9ed9c28a9fda438e7d30532aad7a3844f7",
      "tree": "50c757670e0691327a730a8fc457f1cd7135594b",
      "parents": [
        "4110be3a153daed2d62a549a36e9f92986addf29"
      ],
      "author": {
        "name": "Stan Iliev",
        "email": "stani@google.com",
        "time": "Thu Mar 23 00:12:50 2017 -0400"
      },
      "committer": {
        "name": "Stan Iliev",
        "email": "stani@google.com",
        "time": "Mon Mar 27 18:43:34 2017 -0400"
      },
      "message": "Update VectorDrawables cache at frame start\n\nDraw VectorDrawables in GPU backed surface. Render VD cache\nat the beginning of the frame to avoid context switching.\n\nTest: CTS graphics tests pass.\nChange-Id: Ia14e0ec4049c3fa87f03547fbda44043bf8dd793\n"
    },
    {
      "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\""
    },
    {
      "commit": "48f9bb6254324006a4595f4576c28498a4aaf5d2",
      "tree": "8515c14731d2ade67f5b8961e3d2af906b33186e",
      "parents": [
        "1087bd9f350fe80a584b4685f0abd149d49c86ac"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Fri Mar 24 17:00:39 2017 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Fri Mar 24 17:12:19 2017 -0700"
      },
      "message": "Register functor draw correctly\n\nBug: 36602041\nTest: existing tests still pass\n\nChange-Id: I9f385da89e9e49e562031578a02f13a68697e0df\n"
    }
  ],
  "next": "bbf038bc5ee8adac6c52fd2fd4c66bbdaba89a43"
}
