)]}'
{
  "log": [
    {
      "commit": "894b5b9998a9c8417cd7c9cbd4bdf03074475160",
      "tree": "c47ef65724f5790a9b32f8f7837a901f4838bbdf",
      "parents": [
        "b70ef8d79b5b01a738f60c233c20c9d3e5861c1a",
        "95c1a069f24e630946d044f58e95db9e691f2d84"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue Feb 28 19:01:07 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 28 19:01:11 2017 +0000"
      },
      "message": "Merge \"Revert \"deprecate replayClips\"\""
    },
    {
      "commit": "95c1a069f24e630946d044f58e95db9e691f2d84",
      "tree": "7a3c8095653de2886cf7e235d601427d6644ae55",
      "parents": [
        "82d3b17f6dff9372ec531d90b5d9180671e0ee2c"
      ],
      "author": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Tue Feb 28 17:49:07 2017 +0000"
      },
      "committer": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Tue Feb 28 17:49:07 2017 +0000"
      },
      "message": "Revert \"deprecate replayClips\"\n\nThis reverts commit 82d3b17f6dff9372ec531d90b5d9180671e0ee2c.\n\nBug: 35831173\nChange-Id: I467e7204a5e4bcbab1c12d3fcf52e52188830ed5\n"
    },
    {
      "commit": "c33b943f25e7038e15d8bb095a66a653ef5f5e7b",
      "tree": "e2e2970d347a89a973a2ec68189476be9396d07c",
      "parents": [
        "8a8e33dbb0ed9dc1ee522f6fc13bd263e1f91549",
        "82d3b17f6dff9372ec531d90b5d9180671e0ee2c"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Feb 27 22:22:13 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Feb 27 22:22:16 2017 +0000"
      },
      "message": "Merge \"deprecate replayClips\""
    },
    {
      "commit": "194f375979c6d92bf8ce54d21a342acccbfc7530",
      "tree": "d5c013e30f0e2c4122f25978a0e5025d907e2935",
      "parents": [
        "a955c9df90dad14f365fc86c09a435bf4f84b192",
        "c7064146f959caec058980ced144942c8044a169"
      ],
      "author": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Mon Feb 27 04:30:27 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Feb 27 04:30:31 2017 +0000"
      },
      "message": "Merge \"Follow Minikin\u0027s signature changes.\""
    },
    {
      "commit": "c7064146f959caec058980ced144942c8044a169",
      "tree": "46607e15ffedae3eb2fad14be3c5261c320a29c4",
      "parents": [
        "6dd3529aa6ba6feaaaedfec3327846cdac0854e8"
      ],
      "author": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Fri Feb 10 16:53:31 2017 +0900"
      },
      "committer": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Mon Feb 27 11:15:19 2017 +0900"
      },
      "message": "Follow Minikin\u0027s signature changes.\n\nMinikin now uses shared_ptr instead of MinikinRefCounted.\n\nBug: 28119474\nTest: manually tested\nTest: hwui_unit_tests passed.\nChange-Id: Ie0564851a8a798af112679e15f7a07db000a977e\n"
    },
    {
      "commit": "82d3b17f6dff9372ec531d90b5d9180671e0ee2c",
      "tree": "a5e95358b17a419bf9b237db9daae37247a707dd",
      "parents": [
        "1cd368b0747175c2bf780f497e383de539a35178"
      ],
      "author": {
        "name": "Mike Reed",
        "email": "reed@google.com",
        "time": "Fri Feb 24 11:03:09 2017 -0500"
      },
      "committer": {
        "name": "Stan Iliev",
        "email": "stani@google.com",
        "time": "Fri Feb 24 18:23:05 2017 -0500"
      },
      "message": "deprecate replayClips\n\nreplayClips is deprecated, just get the rgn instead for setBitmap\n\nTest: ran Canvas CTS\nChange-Id: Id0f0da6602d1488bb4071885704fa6e3b449ab85\n"
    },
    {
      "commit": "eda4756502424fe86717205246034201f0ce805d",
      "tree": "19b206a5267c60332851bb1a7478ed6c354f1fb9",
      "parents": [
        "5e8af2abc713667154ef338b2777582e4e66d529",
        "fee4a985fd599e5bbfb0eb2d5d75af18ed8ae86e"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Feb 24 03:16:07 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 24 03:16:12 2017 +0000"
      },
      "message": "Merge \"fallout of libandroid.so split\""
    },
    {
      "commit": "0c6d24f736c1b7d5e8b3c698d2e25d90203431f2",
      "tree": "f06ca7b87cde41f7968f127e99bd99d5d29899c1",
      "parents": [
        "9584868f8824e41f010590b4c64654a6de1f5357",
        "6e66b39e4a5903f4ff17a1418d8af2779ded70b7"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Feb 24 01:28:11 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 24 01:28:17 2017 +0000"
      },
      "message": "Merge \"Log rendering pipeline when initializing\""
    },
    {
      "commit": "bd9e74cae0f3de1039c9ddcee3caa0849b604c7c",
      "tree": "70bfdaf8039647183578d23e5d7c14d70e221848",
      "parents": [
        "339dc75d46035f711d8bfee6b0425975c020f311",
        "2e0d0f311100d8e0bb40d7d60b8498237f011f0c"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Feb 24 00:07:37 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 24 00:07:42 2017 +0000"
      },
      "message": "Merge \"OMS: integrate OverlayManagerService into framework\""
    },
    {
      "commit": "6e66b39e4a5903f4ff17a1418d8af2779ded70b7",
      "tree": "e20ed5f913343c4812fd530ebdea5d051a158895",
      "parents": [
        "339dc75d46035f711d8bfee6b0425975c020f311"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue Feb 21 12:41:49 2017 -0800"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Thu Feb 23 15:51:59 2017 -0800"
      },
      "message": "Log rendering pipeline when initializing\n\nTest: manual, boots\n\nChange-Id: I6e544510053ecf2b397ac998bcc7be9c00295a7d\n"
    },
    {
      "commit": "fee4a985fd599e5bbfb0eb2d5d75af18ed8ae86e",
      "tree": "007e66054e8d42fbbe26be8e66b5169355b2cf6d",
      "parents": [
        "339dc75d46035f711d8bfee6b0425975c020f311"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu Feb 09 18:48:21 2017 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu Feb 23 23:28:20 2017 +0000"
      },
      "message": "fallout of libandroid.so split\n\nTest: compiled \u0026 booted\nBug: 35164655\nChange-Id: I786167a21453e17493969cdacfc9d31bdb781d98"
    },
    {
      "commit": "2e0d0f311100d8e0bb40d7d60b8498237f011f0c",
      "tree": "00377afd35d28d384d4ad735b250051481debe31",
      "parents": [
        "8716ef94194ad715ef596de4a38abb5b2a5c8186"
      ],
      "author": {
        "name": "Mårten Kongstad",
        "email": "marten.kongstad@sonymobile.com",
        "time": "Thu Jun 02 09:35:31 2016 +0200"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Thu Feb 23 14:01:38 2017 -0800"
      },
      "message": "OMS: integrate OverlayManagerService into framework\n\nHand over ownership of overlays to OverlayManagerService.\n\nChanges to a package\u0027s overlays are propagated using the activity life\ncycle. Affected activities will be recreated as needed. This provides a\nwell-defined point to modify an application\u0027s assets while the\napplication is paused.\n\nConsolidate how overlays targeting the system and overlays targeting\nregular applications are handled. Previously, system overlays were\nhandled as a special case. Now, everything is handled identically. As a\nside effect, the call to idmap --scan during Zygote boot has become\nobsolete and is removed.\n\nInformation on what overlays to use is recorded in\nApplicationInfo.resourceDirs. The PackageManagerService is responsible\nfor the creation of ApplicationInfo objects. The OverlayManagerService\nis responsible for informing the PackageManagerService in advance about\nwhat resourceDirs to use.\n\nWhen launching an application, the ApplicationInfo is already populated\nwith up-to-date information about overlays.\n\nWhen enabling or disabling an overlay for a running application, the\nOverlayManagerService first notifies the PackageManagerService about the\nupdated resourceDirs. It then tells the ActivityManagerService to push\nthe new ApplicationInfo object to the application\u0027s ActivityThread.\nFinally the application requests its ResourcesManager to create new\nResourcesImpl objects based on the updated paths.\n\nChange-Id: Ib8afa05ccab4e2db558f89ce4423983c086bb61a\nCo-authored-by: Martin Wallgren \u003cmartin.wallgren@sonymobile.com\u003e\nSigned-off-by: Zoran Jovanovic \u003czoran.jovanovic@sonymobile.com\u003e\nBug: 31052947\nTest: run tests from \u0027OMS: tests for OverlayManagerService\u0027\n"
    },
    {
      "commit": "dfe0647f6c7a80242f1646541a6f3460e0ef3c76",
      "tree": "13c2127c63793203fae437c338b9a14c2ecb339c",
      "parents": [
        "112a5b62d85d288bd89819b2ffc49fa17020a05f"
      ],
      "author": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Thu Feb 23 14:30:18 2017 -0500"
      },
      "committer": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Thu Feb 23 14:30:18 2017 -0500"
      },
      "message": "Fix unit test that failed due to incorrect refactor.\n\nTest: hwui unit tests\nChange-Id: I88b962718086ff1ca3df1999b2040fb1007b6f33\n"
    },
    {
      "commit": "f77ca0872102116f58693d26703af8279573d014",
      "tree": "56867b07e55afa24cb5cc356c1d0cb82d12af53c",
      "parents": [
        "ab61fb8b5f3e7fc807bd335fcfe088d2d0fcb13a"
      ],
      "author": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Thu Feb 23 09:33:53 2017 -0500"
      },
      "committer": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Thu Feb 23 10:03:04 2017 -0500"
      },
      "message": "Fix HWUI tests to use android-only SkPaint flags\n\nTest: compile only\nChange-Id: Ia3a5710d4ae13d68e5b2655a8b135dae8ffeb513\n"
    },
    {
      "commit": "ab61fb8b5f3e7fc807bd335fcfe088d2d0fcb13a",
      "tree": "a0e20fd5079d2afee6fab3a0e1595090d7f73853",
      "parents": [
        "df0824ad4cd31a3e96653fe82ce969b08cd00be2"
      ],
      "author": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Thu Feb 23 07:48:11 2017 -0500"
      },
      "committer": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Thu Feb 23 08:29:59 2017 -0500"
      },
      "message": "Update framework to use new method for disabling DF path rendering.\n\nTest: compile only\nChange-Id: Ifa690a0af01cb6b07c4fd303302cb6a557e8dfde\n"
    },
    {
      "commit": "df0824ad4cd31a3e96653fe82ce969b08cd00be2",
      "tree": "12d8acb544a545a2bf061640de58d4ebfb6f3bad",
      "parents": [
        "6dd3529aa6ba6feaaaedfec3327846cdac0854e8",
        "95459806920dec34abb3214ab6e1a9b9213a2a61"
      ],
      "author": {
        "name": "Guang Zhu",
        "email": "guangzhu@google.com",
        "time": "Thu Feb 23 07:36:12 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Feb 23 07:36:16 2017 +0000"
      },
      "message": "Merge \"Revert \"OMS: integrate OverlayManagerService into framework\"\""
    },
    {
      "commit": "95459806920dec34abb3214ab6e1a9b9213a2a61",
      "tree": "1e4d0a136606788c633f5b823daca0caa4334499",
      "parents": [
        "21a3d1ad686dee97b9cf0ed80389ee2ab0d48013"
      ],
      "author": {
        "name": "Guang Zhu",
        "email": "guangzhu@google.com",
        "time": "Thu Feb 23 07:35:39 2017 +0000"
      },
      "committer": {
        "name": "Guang Zhu",
        "email": "guangzhu@google.com",
        "time": "Thu Feb 23 07:35:39 2017 +0000"
      },
      "message": "Revert \"OMS: integrate OverlayManagerService into framework\"\n\nBug: 31052947\nBug: 35697944\n\nThis reverts commit 21a3d1ad686dee97b9cf0ed80389ee2ab0d48013.\n\nChange-Id: I2d86931020301524c26cf8c8e80d557c97fdd6c3\n"
    },
    {
      "commit": "0f09817859b19054aee3feded1dbf9757a5ec131",
      "tree": "c58d8246d55ef36eedcf1be7c75c7fb039c53782",
      "parents": [
        "a49777092042b1b36712d174bbb469f9fb396e26",
        "21a3d1ad686dee97b9cf0ed80389ee2ab0d48013"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Feb 23 03:58:57 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Feb 23 03:59:01 2017 +0000"
      },
      "message": "Merge \"OMS: integrate OverlayManagerService into framework\""
    },
    {
      "commit": "b216c21acdbcb0e8a2b970d6ff9f72e9bf185623",
      "tree": "40ab09fe904b32da90afb4b64850a2f128700735",
      "parents": [
        "a1d548024dc1c8df6257c804225eb7ff8202c97b"
      ],
      "author": {
        "name": "Mike Reed",
        "email": "reed@google.com",
        "time": "Wed Feb 22 10:02:40 2017 -0500"
      },
      "committer": {
        "name": "Mike Reed",
        "email": "reed@google.com",
        "time": "Wed Feb 22 10:49:51 2017 -0500"
      },
      "message": "underline is now only tracked by android\n\nChange-Id: I189c57dd47ad413b8964d7e5805dfd6d4af11982\n"
    },
    {
      "commit": "a231eb1410ed2ac339277d49cd06c93bcebce0aa",
      "tree": "4ce04997a48416d91e819a0501de9ebccba8c4de",
      "parents": [
        "a81f54b5d770518321498d56b36fc5a90d62cb48",
        "7a18b799617465a0a27dde1cf0c5f48c52db7980"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Feb 22 09:35:07 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 22 09:35:13 2017 +0000"
      },
      "message": "Merge \"Implement getAxes() method.\""
    },
    {
      "commit": "21a3d1ad686dee97b9cf0ed80389ee2ab0d48013",
      "tree": "79a415bcc73f60cda6dbac4ca414b22741c47266",
      "parents": [
        "f9bd2944694539f1dce74d420156cc50bbb4af14"
      ],
      "author": {
        "name": "Mårten Kongstad",
        "email": "marten.kongstad@sonymobile.com",
        "time": "Thu Jun 02 09:35:31 2016 +0200"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Tue Feb 21 14:29:43 2017 -0800"
      },
      "message": "OMS: integrate OverlayManagerService into framework\n\nHand over ownership of overlays to OverlayManagerService.\n\nChanges to a package\u0027s overlays are propagated using the activity life\ncycle. Affected activities will be recreated as needed. This provides a\nwell-defined point to modify an application\u0027s assets while the\napplication is paused.\n\nConsolidate how overlays targeting the system and overlays targeting\nregular applications are handled. Previously, system overlays were\nhandled as a special case. Now, everything is handled identically. As a\nside effect, the call to idmap --scan during Zygote boot has become\nobsolete and is removed.\n\nInformation on what overlays to use is recorded in\nApplicationInfo.resourceDirs. The PackageManagerService is responsible\nfor the creation of ApplicationInfo objects. The OverlayManagerService\nis responsible for informing the PackageManagerService in advance about\nwhat resourceDirs to use.\n\nWhen launching an application, the ApplicationInfo is already populated\nwith up-to-date information about overlays.\n\nWhen enabling or disabling an overlay for a running application, the\nOverlayManagerService first notifies the PackageManagerService about the\nupdated resourceDirs. It then tells the ActivityManagerService to push\nthe new ApplicationInfo object to the application\u0027s ActivityThread.\nFinally the application requests its ResourcesManager to create new\nResourcesImpl objects based on the updated paths.\n\nCo-authored-by: Martin Wallgren \u003cmartin.wallgren@sonymobile.com\u003e\nSigned-off-by: Zoran Jovanovic \u003czoran.jovanovic@sonymobile.com\u003e\nBug: 31052947\nTest: run tests from \u0027OMS: tests for OverlayManagerService\u0027\nChange-Id: Idc96dae6fc075d5373aa055bbf50e919136d7353\n"
    },
    {
      "commit": "21edf1976cabe05b419839785e3fc37e992c4e81",
      "tree": "8adcbf94ff8cd20f65cc7d7c93a1f83d145cc7d8",
      "parents": [
        "160bf4cbac1d4c8d8c22b6dbcd8c2421d61541b0",
        "45e2e95c2ffeb2d978e2cce80b729ef6ada3b8d2"
      ],
      "author": {
        "name": "Fyodor Kupolov",
        "email": "fkupolov@google.com",
        "time": "Tue Feb 21 22:29:32 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 21 22:29:35 2017 +0000"
      },
      "message": "Merge \"Check bounds in offsetToPtr\""
    },
    {
      "commit": "f9bd2944694539f1dce74d420156cc50bbb4af14",
      "tree": "1e4d0a136606788c633f5b823daca0caa4334499",
      "parents": [
        "2d8f7e80beb0c4762faca9d37539524377da43c2",
        "df1742ed47da1e9b61afeae16fa448d5302a8aa0"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Feb 21 19:23:43 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 21 19:23:46 2017 +0000"
      },
      "message": "Merge \"Overhaul GraphicsStatsService\""
    },
    {
      "commit": "df1742ed47da1e9b61afeae16fa448d5302a8aa0",
      "tree": "7986faf156f39bbe218ab13bad3ae5a1ea3dd581",
      "parents": [
        "f8a420097e54a369d3bd1aa152ea0eea58ff5c94"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu Jan 19 15:56:21 2017 -0800"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue Feb 21 09:49:10 2017 -0800"
      },
      "message": "Overhaul GraphicsStatsService\n\n* LRU cache of recently-used is dead, replaced\n  disk storage\n* ASHMEM size is read from native by the system service,\n  no longer requires keeping a sizeof() in sync with a\n  constant in Java\n* Supports dumping in proto format by passing --proto\n* Rotates logs on a daily basis\n* Keeps a history of the most recent 3 days\n\nBug: 33705836\nTest: Manual. Verified log rotating works by setting it up to\nrotate every minute instead of day. Confirmed /data/system/graphicsstats\nonly has the most recent 3 entries after several minutes\n\nChange-Id: Ib84bafb26c58701cc86f123236de4fff01aaa4aa\n"
    },
    {
      "commit": "d7df6748f21d3f4b9209eaa2bfba73af0af31538",
      "tree": "317ebc32d90a358bd6954755526fa6cf96bcf624",
      "parents": [
        "7c196d4a854de9f1f2dbd548fc26d80890a662c9",
        "4badfe6d3beda8e1e358334e32a95e00be39f031"
      ],
      "author": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Tue Feb 21 17:37:35 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 21 17:37:38 2017 +0000"
      },
      "message": "Merge \"Add developer setting to set the default GPU renderer.\""
    },
    {
      "commit": "7c196d4a854de9f1f2dbd548fc26d80890a662c9",
      "tree": "d0abce26db36f43735775d951a6b8b546f54524a",
      "parents": [
        "f8a420097e54a369d3bd1aa152ea0eea58ff5c94",
        "b77c94a96abeeecf65c5b3292db679c049af6271"
      ],
      "author": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Tue Feb 21 17:37:35 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 21 17:37:38 2017 +0000"
      },
      "message": "Merge \"Disable buffer age swap behavior for SkiaGL on Adreno gpus\""
    },
    {
      "commit": "28f99293f74555592af2342095d23be51cbc1b8b",
      "tree": "131374a5e1702e9bb6f2a34352993000b9d034c2",
      "parents": [
        "e453d8e7629c422ab8982a871e5799fa5e8cff90",
        "dd6f1a70848cc852c215a2e2cb8f9acba4953504"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Feb 18 02:59:29 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Feb 18 02:59:33 2017 +0000"
      },
      "message": "Merge \"Fix Rgba16fTests@testTransferFunctionsShader test\""
    },
    {
      "commit": "dd6f1a70848cc852c215a2e2cb8f9acba4953504",
      "tree": "ba24b5713749e293a23908d65334acac03ac8df3",
      "parents": [
        "8ec21062ded44fe28ea7cd50e24112dc1832b0e5"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Fri Feb 17 17:09:21 2017 -0800"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Fri Feb 17 17:09:21 2017 -0800"
      },
      "message": "Fix Rgba16fTests@testTransferFunctionsShader test\n\nRGBA16F bitmaps used as an SkBitmapShader would not set the hasLinearTexture\nflag in the program description, causing a shader to be generated without\nthe proper opto-electronic transfer function.\n\nBug: 35482305\nTest: bit -t CtsUiRenderingTestCases:android.uirendering.cts.testclasses.Rgba16fTests\nChange-Id: I23354f8189a6b27b677eac9df82677e91282a31d\n"
    },
    {
      "commit": "edb88a2b94093ddaeb11c3ea4b8e989c6822bff1",
      "tree": "3a00e476978c414b92cadd7c48e2ece1fdafcf89",
      "parents": [
        "18c527b96d94c31d789ec137cb12f6e13cd20916",
        "c8f71aa67ea599cb80205496cb67e9e7a121299c"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Sat Feb 18 00:39:13 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Feb 18 00:39:18 2017 +0000"
      },
      "message": "Merge \"Add ResTable_sparseTypeEntry support\""
    },
    {
      "commit": "a5e8f6cb8fb0c8b8bea532afa5d08e36817a9fdc",
      "tree": "3b232b984e48168a3a6c469991c44865bb4b27d7",
      "parents": [
        "16386302d77d0e79e149aaf9c09f90804522f530",
        "d1ecd7af687bcad0f87c37fe33515ff6c5ea0f1d"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Feb 17 23:27:54 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 17 23:27:58 2017 +0000"
      },
      "message": "Merge \"AssetManager2: Various fixes\""
    },
    {
      "commit": "45e2e95c2ffeb2d978e2cce80b729ef6ada3b8d2",
      "tree": "992c98155bec887d70df51eb7b90a35a1fe564a9",
      "parents": [
        "3d52f79be4dba94f046709fabc1bfb911a670709"
      ],
      "author": {
        "name": "Fyodor Kupolov",
        "email": "fkupolov@google.com",
        "time": "Mon Feb 13 18:35:12 2017 -0800"
      },
      "committer": {
        "name": "Fyodor Kupolov",
        "email": "fkupolov@google.com",
        "time": "Thu Feb 16 09:50:00 2017 -0800"
      },
      "message": "Check bounds in offsetToPtr\n\nCheck whether specified offset belongs to mData.\nAlso added a default argument bufferSize to check the end offset.\n\nSize of the ashmem descriptor can be modified between\nashmem_get_size_region call and mmap. createFromParcel method was updated\nto check ashmem size again immediately after memory is mapped.\n\nTest: manual - using the test app from the bug\nBug: 34128677\nChange-Id: I3ecd1616a870ce20941ce9b20a1843d2b4295750\n"
    },
    {
      "commit": "c8f71aa67ea599cb80205496cb67e9e7a121299c",
      "tree": "2966aa97b09f04f9b7379fd93a7fc3ea1ae9009f",
      "parents": [
        "c535d122c6a58a152ff2581f936070c2695c45ba"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Wed Feb 08 07:03:50 2017 -0800"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Wed Feb 15 12:40:02 2017 -0800"
      },
      "message": "Add ResTable_sparseTypeEntry support\n\nBenchmarks on bullhead-userdebug show that there is a negligent\nperformance impact when using sparse entries on a 30% loaded\nsparse type of 1000 resources.\n\nBenchmark                                             Time           CPU Iterations\n-----------------------------------------------------------------------------------\nBM_SparseEntryGetResourceSparseLarge                255 ns        254 ns    2751408\nBM_SparseEntryGetResourceNotSparseLarge             254 ns        254 ns    2756534\n\nBug: 27381711\nTest: make libandroidfw_tests aapt2_tests\nChange-Id: I051ea22f2f6b2bc3696e446adc9e2a34be18009f\n"
    },
    {
      "commit": "9138948df9717eb8f8cf16fec867c5786deef4bd",
      "tree": "dd50c109c3a53f03aecc71d0cd36664657328445",
      "parents": [
        "3c5f924c3bb61cc8d8e3e98f03c89fc6c4808762",
        "09df887c9078a34f2bda32c83734b7f75c0a60ff"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Wed Feb 15 19:10:03 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 15 19:10:08 2017 +0000"
      },
      "message": "Merge \"Always flush renderstate in DeferredLayerUpdater::apply\""
    },
    {
      "commit": "d1ecd7af687bcad0f87c37fe33515ff6c5ea0f1d",
      "tree": "63822987507c52532481ca86333751e4fb329953",
      "parents": [
        "c535d122c6a58a152ff2581f936070c2695c45ba"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Mon Jan 23 12:58:11 2017 -0800"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Wed Feb 15 10:50:23 2017 -0800"
      },
      "message": "AssetManager2: Various fixes\n\n- Use FileMaps to open Assets (prevents closing of ApkAssets underlying\nzip)\n- Implement OpenDir and List methods\n- Fix issue where DynamicRefTable wasn\u0027t properly constructed\n\nTest: make libandroidfw_tests\nChange-Id: Ib21a84e1114d028120744aa3bc1c6eb9d9399fa8\n"
    },
    {
      "commit": "2f1aaf7e24590e3b1dde62e0cb6d8d2978c9d5da",
      "tree": "624cabc9e927a3090d3d1ef7829958bc547b1019",
      "parents": [
        "4211358c7448147388c5e4af3e0e5472def83a3b"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue Feb 14 13:01:42 2017 -0800"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Wed Feb 15 17:22:26 2017 +0000"
      },
      "message": "updateTexImage before bitmap readback of DeferredLayerUpdaters\n\nBug: 34206215\nTest: hwui unit tests passing\n\nChange-Id: I4360c0d94a831b4d2ebfd4020e4241658bfa190a\n"
    },
    {
      "commit": "09df887c9078a34f2bda32c83734b7f75c0a60ff",
      "tree": "721240c45b25a85008be24301cbb81fd96721b0e",
      "parents": [
        "4211358c7448147388c5e4af3e0e5472def83a3b"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue Feb 14 12:37:49 2017 -0800"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Wed Feb 15 17:22:22 2017 +0000"
      },
      "message": "Always flush renderstate in DeferredLayerUpdater::apply\n\nBug: 34206215\nTest: hwui unit tests passing, manual test of TextureView video playback\n\nAlways flush renderstate to the GlLayer\u0027s texture, regardless of\nwhether updateTexImage has ever been called.\n\nChange-Id: I3974dce9d90633a0299e6bc4259b76c622717c90\n"
    },
    {
      "commit": "b77c94a96abeeecf65c5b3292db679c049af6271",
      "tree": "96eb21220164a274d141bde7bffc0921c6213473",
      "parents": [
        "fd9d0ee9f82e2e224e14b05b6c8485670e46bd97"
      ],
      "author": {
        "name": "Matt Sarett",
        "email": "msarett@google.com",
        "time": "Wed Dec 07 12:22:37 2016 -0500"
      },
      "committer": {
        "name": "Matt Sarett",
        "email": "msarett@google.com",
        "time": "Tue Feb 14 14:39:00 2017 -0500"
      },
      "message": "Disable buffer age swap behavior for SkiaGL on Adreno gpus\n\nTest: Verified that this fixes rendering bugs.\n\nBUG:31957043\nChange-Id: I3e5bca73eae2d917906658f76d8c432dbb248d89\n"
    },
    {
      "commit": "4badfe6d3beda8e1e358334e32a95e00be39f031",
      "tree": "05ebecb5bec6af0ded6c71407d7b6ea4c50587ad",
      "parents": [
        "69f42ecbb66752acbf05e0083a15d9db25ff6213"
      ],
      "author": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Tue Feb 14 11:38:06 2017 -0500"
      },
      "committer": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Tue Feb 14 12:03:02 2017 -0500"
      },
      "message": "Add developer setting to set the default GPU renderer.\n\nTest: manual on-device testing\nBug: 35345959\nChange-Id: I1d846f922a048dd215caf053b10aaa909bdbc74d\n"
    },
    {
      "commit": "ab582b762ad6f0fbb2b087cff4472ab60e85474d",
      "tree": "ef46e168cbc3c2af8906ac563b373e77cd9ead33",
      "parents": [
        "bf6655b3153dab8b0ab2d592e95ae362c5350005",
        "c54b76e97d00497e4fea1aa08ae404bfd4ae875d"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Feb 14 14:21:34 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 14 14:21:38 2017 +0000"
      },
      "message": "Merge \"Replace bitmap shaders with image shaders in test code\""
    },
    {
      "commit": "7183b6908b0af807491e90f37e9e05794bd0c3f1",
      "tree": "926cf693b36572e61a935381bf43f8b72d0da486",
      "parents": [
        "23a96af5234a2f3a9553b9efeeab0ca99d368827",
        "b8201195dfb2bae05faaf91b9b3d065e2f199929"
      ],
      "author": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Tue Feb 14 13:31:18 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 14 13:31:21 2017 +0000"
      },
      "message": "Merge \"Deprecate Canvas save/saveLayer flags.\""
    },
    {
      "commit": "2eaae562fed8c6b228c19a8b2d8a98e022d96cf9",
      "tree": "77db60e2e5d1182c6c168873526570940ca690fe",
      "parents": [
        "171ef98df663b8bd51763c5035262c4c6650b885",
        "00eb43dbc04083eab85fbb1a9589e2548f2004ed"
      ],
      "author": {
        "name": "Sergey Vasilinets",
        "email": "sergeyv@google.com",
        "time": "Tue Feb 14 01:28:24 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 14 01:28:26 2017 +0000"
      },
      "message": "Merge \"DeferredLayerUpdater: clean up Layer lifecycle\""
    },
    {
      "commit": "00eb43dbc04083eab85fbb1a9589e2548f2004ed",
      "tree": "eacfad9a4749612efa65d8e15740942fd67f9b85",
      "parents": [
        "962230dd82e360916e848d7a27b208b24a1c66e1"
      ],
      "author": {
        "name": "sergeyv",
        "email": "sergeyv@google.com",
        "time": "Mon Feb 13 14:34:15 2017 -0800"
      },
      "committer": {
        "name": "sergeyv",
        "email": "sergeyv@google.com",
        "time": "Mon Feb 13 14:41:20 2017 -0800"
      },
      "message": "DeferredLayerUpdater: clean up Layer lifecycle\n\nTest: refactoring CL, all existent tests should pass\nbug:34919311\nChange-Id: Ib2889667a5ab8a2aaba443458782bc163467f0ea\n"
    },
    {
      "commit": "c54b76e97d00497e4fea1aa08ae404bfd4ae875d",
      "tree": "dad1a98cb4f47924e1112fb9179a567f7b55e4fe",
      "parents": [
        "fd9d0ee9f82e2e224e14b05b6c8485670e46bd97"
      ],
      "author": {
        "name": "Matt Sarett",
        "email": "msarett@google.com",
        "time": "Mon Feb 13 17:01:54 2017 -0500"
      },
      "committer": {
        "name": "Matt Sarett",
        "email": "msarett@google.com",
        "time": "Mon Feb 13 17:01:59 2017 -0500"
      },
      "message": "Replace bitmap shaders with image shaders in test code\n\nTest: Verified that unit tests still pass.\n\nChange-Id: I67d8046e49b9469e73caa9fe2a44ef2602c95d59\n"
    },
    {
      "commit": "7a18b799617465a0a27dde1cf0c5f48c52db7980",
      "tree": "a40800519bdf4c435ce8f658fa906e63b1dfd5ab",
      "parents": [
        "d2c47843591f196420211722f7c2e3bcd8ace2ee"
      ],
      "author": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Mon Feb 13 18:33:28 2017 +0900"
      },
      "committer": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Mon Feb 13 18:33:28 2017 +0900"
      },
      "message": "Implement getAxes() method.\n\ngetAxes() is necessary for calling hb_font_set_variations.\n\nTest: None\nChange-Id: Iec4759189b0653aa483ba85682d10b2b81beaab8\n"
    },
    {
      "commit": "9969111d9c8017cdd439edbb2c54ef9678b24a59",
      "tree": "4c426a31bf5587d35f49152685fd11c10b62fc8a",
      "parents": [
        "8e24dbdc9747cdc892f49f8f343ea21bd84be983"
      ],
      "author": {
        "name": "Yuqian Li",
        "email": "liyuqian@google.com",
        "time": "Fri Feb 03 15:01:41 2017 -0500"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Sat Feb 11 01:47:12 2017 +0000"
      },
      "message": "Implement SkiaCanvasProxy::onDrawArc\n\nTest: UiRendering CTS SweepTests with picture mode turned on and\ndrawBitmapMesh turned off (it\u0027s not implemented yet).\n\nThis should fix BUG:34306056, and part of BUG:34871089 (the drawArc part\nof SweepTests in picture mode).\n\nBUG:34306056\nBUG:34871089\n\nChange-Id: I8fdcf72ddb4a0bfccedfd7e4e374a1ec5df17d75\n(cherry picked from commit 538b6359cf81b14322141089161f20291295d6d3)\n"
    },
    {
      "commit": "395f2bbd62bd9fa71ad0a85b5e0b470b2aa4c332",
      "tree": "3af6b11c65a9e405e4364ac924b67508d8fe3a45",
      "parents": [
        "22532a00dcfbaf29e405129e9fade1728c3d6409",
        "d21723704571dba7e69947d92856f22989d53dbf"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Feb 10 23:10:56 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 10 23:10:58 2017 +0000"
      },
      "message": "Merge \"Implement \"dump displaylist\" button for skia pipelines\""
    },
    {
      "commit": "89ddb1f1644e0b47de060d2c9aaf6d5387c38f2f",
      "tree": "d914c9a1eb13b598418fca14c126f5b3cb4ee8ab",
      "parents": [
        "fd9d0ee9f82e2e224e14b05b6c8485670e46bd97"
      ],
      "author": {
        "name": "Matt Sarett",
        "email": "msarett@google.com",
        "time": "Fri Feb 10 13:31:56 2017 -0500"
      },
      "committer": {
        "name": "Matt Sarett",
        "email": "msarett@google.com",
        "time": "Fri Feb 10 13:32:09 2017 -0500"
      },
      "message": "Update framework to use new SkColorSpace API\n\nTest: This compiles with SK_USE_LEGACY_NAMED_COLOR_SPACE\nturned off.\n\nChange-Id: Ie573f59e0aa475bab06b38589db3c6158ad82c5a\n"
    },
    {
      "commit": "6bfdfe67b30f3bf5d3f669bf807b8ad00256da9d",
      "tree": "a8cc10df0422026fefae6a79541767aeaf0c56d4",
      "parents": [
        "530a83cb1b59cae3f1727a0921fe0ecda49cf2dd",
        "c5ae595e6f71798109c730cd835a2cca79a8877c"
      ],
      "author": {
        "name": "Po-Chien Hsueh",
        "email": "pchsueh@google.com",
        "time": "Fri Feb 10 03:41:03 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 10 03:41:08 2017 +0000"
      },
      "message": "Merge \"Remove build flag ANDROID_ENABLE_RENDERSCRIPT\""
    },
    {
      "commit": "d21723704571dba7e69947d92856f22989d53dbf",
      "tree": "ca2992919e43c91960380e61ef5d96dff7b83070",
      "parents": [
        "570661486882ab2690b62176e83c23a4b2d6a796"
      ],
      "author": {
        "name": "Stan Iliev",
        "email": "stani@google.com",
        "time": "Thu Feb 09 16:59:27 2017 -0500"
      },
      "committer": {
        "name": "Stan Iliev",
        "email": "stani@google.com",
        "time": "Thu Feb 09 17:09:03 2017 -0500"
      },
      "message": "Implement \"dump displaylist\" button for skia pipelines\n\nImplement \"dump displaylist\" button in hierarchyviewer for skia\npipelines.\n\nTest: ran hierarchyviewer for all pipelines.\nbug: 34819877\nChange-Id: Ifeb578260f636cb67268f9f9259e7318bf7de453\n"
    },
    {
      "commit": "b8201195dfb2bae05faaf91b9b3d065e2f199929",
      "tree": "be71be024a4ab03a432116336bbe2684292eda5d",
      "parents": [
        "3eacb58a494f5ed65e83ac8e15a60c579c0c3805"
      ],
      "author": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Mon Jan 09 16:11:59 2017 -0500"
      },
      "committer": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Thu Feb 09 13:18:25 2017 -0500"
      },
      "message": "Deprecate Canvas save/saveLayer flags.\n\nTest: compile\nBug: 14650725\nChange-Id: I6424ac46bae0a7a87c4b7743e81319945dfdd087\n"
    },
    {
      "commit": "024d22fdb76a75f72ac1a421c4dd184bbfe2ba12",
      "tree": "074240054a9d37547ab9ddd3cac73a05e08b3f0e",
      "parents": [
        "34895c404b0153f021094d149cf36918edbd4552",
        "7542162cb1b1fd2ce8a26dd7f3fedc8de8160d38"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Feb 09 16:17:15 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Feb 09 16:17:18 2017 +0000"
      },
      "message": "Merge \"AAPT2: Fix pseudolocalization to respect \u003cxliff:g\u003e\""
    },
    {
      "commit": "c5ae595e6f71798109c730cd835a2cca79a8877c",
      "tree": "a228eb79eb5003000262b29c28ed67e67844ae56",
      "parents": [
        "47c4c94100e1ec861d2c2593ad66ba050bbe93fe"
      ],
      "author": {
        "name": "Po-Chien Hsueh",
        "email": "pchsueh@google.com",
        "time": "Thu Feb 09 10:38:34 2017 +0800"
      },
      "committer": {
        "name": "Po-Chien Hsueh",
        "email": "pchsueh@google.com",
        "time": "Thu Feb 09 15:00:09 2017 +0800"
      },
      "message": "Remove build flag ANDROID_ENABLE_RENDERSCRIPT\n\nremove this flag and consider renderscript is always enabled\n\nBug: 34693640\nTest: compile\nChange-Id: I22464e1d64f2a55a60ba9f8ab1510f2811605552\n"
    },
    {
      "commit": "77aee7128d4f2a579a318c402e955e192338cbd3",
      "tree": "083b0da90a280069f9b6b6fe213b6db93ef58796",
      "parents": [
        "5457217e2c4a6d98bcd7b4e551e4f1358364123b",
        "91a8ec0145ae0ce85782b40c964d16ba2465aec7"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Feb 08 18:00:21 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 08 18:00:26 2017 +0000"
      },
      "message": "Merge \"Don\u0027t print shader source\""
    },
    {
      "commit": "3238f730bdfac88e8cc6ec3e590596191762c3e9",
      "tree": "f1d1e2d87ba592b48b1f544173c6075efe1fa111",
      "parents": [
        "9fa0a5c4784893aa53c0d885d5ead6737cf0e885",
        "6983bc40d72acbf06cd04818877cb3f5fea22886"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Feb 08 17:39:31 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 08 17:39:36 2017 +0000"
      },
      "message": "Merge \"Fix deadlock in render thread when Bitmap.prepareToDraw is invoked\""
    },
    {
      "commit": "42c401adbdd69044b08b2b73d563b6e42606cf43",
      "tree": "1b0433c546bccc313813eb1f947a2fb59848b386",
      "parents": [
        "4f2eba2a10f4e1a18de4d3f3527a5580761d65e8",
        "929d6517dfd338f0d481dbe6587643d5aef27ec6"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Feb 08 16:50:27 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 08 16:50:33 2017 +0000"
      },
      "message": "Merge \"AssetManager2: Add GetResourceId\""
    },
    {
      "commit": "91a8ec0145ae0ce85782b40c964d16ba2465aec7",
      "tree": "cc722130a081dcdff25321948058bb21b31c6679",
      "parents": [
        "c71d1c28809085c507340a9497b40646b2008996"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Wed Feb 08 07:45:11 2017 -0800"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Wed Feb 08 07:45:11 2017 -0800"
      },
      "message": "Don\u0027t print shader source\n\nBug: 32984164\nTest: compile \u0026 run\nChange-Id: If632e49b773ca44d4e09e3acb5979f4df15a8d77\n"
    },
    {
      "commit": "7542162cb1b1fd2ce8a26dd7f3fedc8de8160d38",
      "tree": "0358684e3551d67eb93cb80ae81ef391ba1a9091",
      "parents": [
        "c270de85cc0c398d9ce165592908d2740219a708"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Fri Jan 06 15:20:04 2017 -0800"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Wed Feb 08 06:23:45 2017 -0800"
      },
      "message": "AAPT2: Fix pseudolocalization to respect \u003cxliff:g\u003e\n\nThe XLIFF \u0027g\u0027 tag specifies content that should NOT be translated.\nAAPT2\u0027s pseudolocalization process should respect it.\n\nBug:34064599\nTest: make libandroidfw_tests\nChange-Id: Ice437d7f0ff246730ee04896fd035e2d846148fb\n"
    },
    {
      "commit": "08c9ca5228f70b8f60064d6056f426dfc3b9619a",
      "tree": "b4c3574b815c7872fb091063520339bd2b773f2b",
      "parents": [
        "af463961bc44c53fe35fe184a93b55d07273a676",
        "0091181f32f023282205f74806dfa5146bb7c75e"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Wed Feb 08 14:23:29 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 08 14:23:34 2017 +0000"
      },
      "message": "Merge \"Add ShadowShaderAnimation benchmark\""
    },
    {
      "commit": "929d6517dfd338f0d481dbe6587643d5aef27ec6",
      "tree": "b80a93b93946bd4e982b9f4abd97a4c3aa43feb3",
      "parents": [
        "c270de85cc0c398d9ce165592908d2740219a708"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Mon Jan 16 19:11:19 2017 -0800"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Wed Feb 08 06:04:52 2017 -0800"
      },
      "message": "AssetManager2: Add GetResourceId\n\nAdd ability to lookup a resource by name.\n\nTest: make libandroidfw_tests\nChange-Id: I262ba5ce4c9892458226fbdb44cf21f9877fb92d\n"
    },
    {
      "commit": "c03fdb3e3f567ebb4f5024c46dc31147a6a43a0f",
      "tree": "ed9fcbadce94b69eac26d29775bddfebdacd5dc5",
      "parents": [
        "c357e35897f9d39e6754e2627d884b291e2003a3",
        "e10971d903560488b6c7df5dc4935d631742e870"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Feb 08 10:24:24 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 08 10:24:28 2017 +0000"
      },
      "message": "Merge \"Fix capturing systrace while hwuimacro is running\""
    },
    {
      "commit": "c270de85cc0c398d9ce165592908d2740219a708",
      "tree": "6593cd55e5d7d285a26e883d54c03f8f5c68a049",
      "parents": [
        "e88e228a245e0d6414a39648bfc8fa574057803b",
        "636afc1877882dc9cf73b49f8a68c73cc418d8cd"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Feb 08 10:05:59 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 08 10:06:03 2017 +0000"
      },
      "message": "Merge \"Apply transfer function when rendering with linear textures\""
    },
    {
      "commit": "636afc1877882dc9cf73b49f8a68c73cc418d8cd",
      "tree": "4ae936ca5f5150b22a29b0be632be95354bbb749",
      "parents": [
        "9fe7e16399aa9739b63ce9add1d04fd8ef00678f"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Tue Feb 07 11:21:05 2017 -0800"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Tue Feb 07 22:30:34 2017 +0000"
      },
      "message": "Apply transfer function when rendering with linear textures\n\nRGBA16F bitmaps are always encoded in linear space, which means we must\napply the opto-electronic transfer function before we can render them\nin the framebuffer.\n\nSince our linear bitmaps are assumed to be scRGB, values can be negative.\nThe OETF is a slightly modified sRGB OETF:\n\nsign(x) * OETF_sRGB(abs(x))\n\nThis effectively mirrors the OETF over the negative domain.\n\nThis CL also removes the \"optimized\" shader generation path. With\ncurrent compilers, the optimized path doesn\u0027t do anything of value\nand makes ProgramCache difficult to maintain. Shader compilers inline\neverything and are really good at folding expressions and removing\nunused code.\n\nBug: 32984164\nTest: CtsUiRenderingTestCases\nChange-Id: Ieb458ad53574e3a8959aa6bccbbd2d1fe203cbc5\n"
    },
    {
      "commit": "e10971d903560488b6c7df5dc4935d631742e870",
      "tree": "07e7be55279cd236aff076bc5af91907eb531654",
      "parents": [
        "40eb0ba4277823ea794fb54096a621934e6f5dd1"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue Feb 07 15:31:03 2017 -0500"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue Feb 07 15:31:03 2017 -0500"
      },
      "message": "Fix capturing systrace while hwuimacro is running\n\nTest: manual; ran hwuimacro -c 10000 and started a systrace\nwhile it was running. verified trace tags showed up as\nexpected\n\nChange-Id: Iedc20c6825e77b76ad79660512b627201f61969f\n"
    },
    {
      "commit": "0091181f32f023282205f74806dfa5146bb7c75e",
      "tree": "d7b7b2a10694b4038cb515f0cb05c12811056448",
      "parents": [
        "49ddb3d558395dda71fcf0a37ac3f8bec386c11b"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Fri Feb 03 13:53:23 2017 -0800"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue Feb 07 19:49:22 2017 +0000"
      },
      "message": "Add ShadowShaderAnimation benchmark\n\nBug: 34809371\nTest: manual\n\nNew benchmark uses several levels of overdraw from just shadows to benchmark\nshadow shader performance.\n\nTessellation workload is minimal, due to simple rect caster shape.\n\nChange-Id: I760961e6d48d44ca61f4e8ebca5760175af34953\n"
    },
    {
      "commit": "49ddb3d558395dda71fcf0a37ac3f8bec386c11b",
      "tree": "4c28c237fa72ad260f62036fa7940fdf8d41acd8",
      "parents": [
        "a5082a3f67517dc4cf91598df1ae1e6bebff680a",
        "f6a409067c5df1593c8c6b94304c70220d37901c"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue Feb 07 19:48:30 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 07 19:48:35 2017 +0000"
      },
      "message": "Merge \"Add simple gradient and colormatrix benchmarks\""
    },
    {
      "commit": "3f57d7f7eb83ffd0e4d91f677a353fa6b0bc8332",
      "tree": "00a1726e4b7308decb5a954021064579cb91b2c9",
      "parents": [
        "1e2758256a391be23c537725f0a7785e4fb5b7d0",
        "9fe7e16399aa9739b63ce9add1d04fd8ef00678f"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Feb 07 19:26:57 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 07 19:27:02 2017 +0000"
      },
      "message": "Merge \"Gradients are now an absurd Chimera\""
    },
    {
      "commit": "6983bc40d72acbf06cd04818877cb3f5fea22886",
      "tree": "5d434aa1bf61004cbe4f80aeafd130b2a77b0fae",
      "parents": [
        "f6387d8a51ca7279b0573477293d3835acf42195"
      ],
      "author": {
        "name": "Stan Iliev",
        "email": "stani@google.com",
        "time": "Thu Feb 02 14:11:53 2017 -0500"
      },
      "committer": {
        "name": "Stan Iliev",
        "email": "stani@google.com",
        "time": "Tue Feb 07 09:18:17 2017 -0500"
      },
      "message": "Fix deadlock in render thread when Bitmap.prepareToDraw is invoked\n\nFix a deadlock with Skia pipelines, caused by calling\nBitmap::getSkBitmap from render thread.\n\nTest: built and booted an image. Ran recent apps activity.\nbug: 35060578\nbug: 34926691\nChange-Id: Iaf7957b955d938b722b153d72ad832ae5d50e86f\n"
    },
    {
      "commit": "f77921056d54b5eac8eb5e1d4dad31e2b9e30de4",
      "tree": "6244914385c0d4717cfe0e51321831f9960e2b26",
      "parents": [
        "fbffd434dfa3bcbd23062b35e94244a52a2c3ddd",
        "c3f131696111a066d9efd9c7c3e37566a2a9fb89"
      ],
      "author": {
        "name": "Sergei Vasilinetc",
        "email": "sergeyv@google.com",
        "time": "Mon Feb 06 21:48:58 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Feb 06 21:49:01 2017 +0000"
      },
      "message": "Merge \"Clean up deferredLayers only onGpuContextDestroyed.\""
    },
    {
      "commit": "1d5b9778bbd01ec0e9eea2a6d12fac7539fdda87",
      "tree": "14cec610291e474764eeba0a2bcfc53b5c99ba4a",
      "parents": [
        "60a5464029c4a208990d0f8f48608e8ca9807b49",
        "629fd3d48ba1dbedc6e84e91a26f72fb1fba0e22"
      ],
      "author": {
        "name": "Miao Wang",
        "email": "miaowang@google.com",
        "time": "Mon Feb 06 19:54:37 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Feb 06 19:54:42 2017 +0000"
      },
      "message": "Merge \"Remove uncessary dependency of libhwui\""
    },
    {
      "commit": "c3f131696111a066d9efd9c7c3e37566a2a9fb89",
      "tree": "5e30bafbaa5be1aa1c9eb3dab8919c29cdd00c17",
      "parents": [
        "cec9d8cee73aca31d255d44a50bcf0409cb43cc2"
      ],
      "author": {
        "name": "sergeyv",
        "email": "sergeyv@google.com",
        "time": "Mon Feb 06 11:45:14 2017 -0800"
      },
      "committer": {
        "name": "sergeyv",
        "email": "sergeyv@google.com",
        "time": "Mon Feb 06 11:45:14 2017 -0800"
      },
      "message": "Clean up deferredLayers only onGpuContextDestroyed.\n\nTest: manual\nbug:34919311\nChange-Id: I5488b0845ec3922424f5893943e4f42675dfc9fd\n"
    },
    {
      "commit": "41fed8cc15bc59a22b37e818ca6a9e4579a391f7",
      "tree": "84deb702fa2a3cd0504054595e3814d0cea007d1",
      "parents": [
        "915b594dbda904b80d5517d2481be8be41767d85",
        "30a75debb1c2623308f04d4e01f0ef3162ad7ac1"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Feb 06 19:18:42 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Feb 06 19:18:47 2017 +0000"
      },
      "message": "Merge \"Use new Skia DrawShadow API\""
    },
    {
      "commit": "30a75debb1c2623308f04d4e01f0ef3162ad7ac1",
      "tree": "c41ff75c0e21dd2b248afceafc0ab554e529be8b",
      "parents": [
        "4d600d150f60249995c2212cff5acc9d11cbfc80"
      ],
      "author": {
        "name": "Stan Iliev",
        "email": "stani@google.com",
        "time": "Tue Jan 24 17:24:27 2017 -0500"
      },
      "committer": {
        "name": "Stan Iliev",
        "email": "stani@google.com",
        "time": "Mon Feb 06 11:36:33 2017 -0500"
      },
      "message": "Use new Skia DrawShadow API\n\nUse new Skia DrawShadow API to draw shadows and remove unused code\nfrom HWUI.\n\nTest: Built and ran shadow macrobench tests.\nChange-Id: Ief86b03b7348367f8bae8c212d64d5a545eebaeb\n"
    },
    {
      "commit": "bccd58cde35f37aa271d97ae024c90b3db9f2106",
      "tree": "9ce9978cfe335699dc61288929dedf0690ee483b",
      "parents": [
        "268736e782b3408166161aae4d9eef71ee83053a",
        "4f70887d348a4eea433df39496a5fe53d64b439a"
      ],
      "author": {
        "name": "Greg Daniel",
        "email": "egdaniel@google.com",
        "time": "Mon Feb 06 16:21:56 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Feb 06 16:21:59 2017 +0000"
      },
      "message": "Merge \"Have Skia Vulkan backend support wait-for-gpu flag on tests\""
    },
    {
      "commit": "9fe7e16399aa9739b63ce9add1d04fd8ef00678f",
      "tree": "d457f1bdb2d767b9a8b7e0124bb0f9c620686363",
      "parents": [
        "7b6bcb6005c7e1d4b6ad1fec43e9e2dfad86663f"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Fri Feb 03 16:16:07 2017 -0800"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Fri Feb 03 16:56:46 2017 -0800"
      },
      "message": "Gradients are now an absurd Chimera\n\nAs of O, gradients are interpolated in linear space. This unfortunately\naffects applications that were expecting a certain behavior for the\nalpha ramp. This change attempts to get the best of both world: better\ncolor interpolation (in linear space) and the old alpha interpolation\n(in gamma space). This is achieved by applying the electro-optical\ntransfer function to the alpha channel; an idea so wrong it would\nmake any graphics programmer worth his salt weep in disgust.\n\nAs abhorrent this idea might be to me, it also acts as a faint\nbeacon of hope admist the unfathomable darkness that is Android\u0027s\ncolor management.\n\nAnd if you allow me another misguided metaphor, this change\nrepresents the flotsam I can cling onto in the hope to one day\nreach the bountiful shores of linear blending and accurate color\nmanagement. Would this change not fix the distress caused by its\npredecessors, I will have no choice but bow my head in shame until\nthe day I can finally devise an infallible plan.\n\nBug: 33010587\nTest: CtsUiRenderingTestCases\nChange-Id: I5397fefd7944413f2c820e613a5cba50579d4dd5\n"
    },
    {
      "commit": "f6a409067c5df1593c8c6b94304c70220d37901c",
      "tree": "0d2d0271987963c3c0448b75464dbc6b8a9de870",
      "parents": [
        "f0fac1d1cd5b57ab937b0d02c614502351e61718"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Fri Feb 03 16:19:54 2017 -0800"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Fri Feb 03 16:25:10 2017 -0800"
      },
      "message": "Add simple gradient and colormatrix benchmarks\n\nBug: 34809371\nTest: manual\n\nChange-Id: I3af38c835c43f7c4a1d2976c7263d37dd1dc7084\n"
    },
    {
      "commit": "4f70887d348a4eea433df39496a5fe53d64b439a",
      "tree": "fd89a90c3351f0a5d6f726c15304e42aef8978ec",
      "parents": [
        "8e332cc54b203a3fe7a014e506c3fcc07a60e539"
      ],
      "author": {
        "name": "Greg Daniel",
        "email": "egdaniel@google.com",
        "time": "Fri Feb 03 10:23:39 2017 -0500"
      },
      "committer": {
        "name": "Greg Daniel",
        "email": "egdaniel@google.com",
        "time": "Fri Feb 03 10:28:52 2017 -0500"
      },
      "message": "Have Skia Vulkan backend support wait-for-gpu flag on tests\n\nSo trying to mimic what the EglManager does in the fence call.\nTechnically there are two logical queues I could wait on for the device,\nthe graphics queue and the present queue. Waiting on the device waits\nfor both these queues to finish. It wasn\u0027t obvious to me if the EGL was\nwaiting for just graphics work or both queues, so I went for both (by\nwaiting on device). However, so far every device we\u0027ve seen in Vulkan\nhas the present and graphics queue combined on the physical device so\nwaiting for one or both should really be different.\n\nTest: Manual ran macrobench in skiavk and more realistic values compared\nto not waiting for gpu.\n\nChange-Id: I17cde70c677a9ad1b6bf9bc9ca4fd5f8f3b807e3\n"
    },
    {
      "commit": "16e211832e447af5f7bce1035d52445c865263ef",
      "tree": "847d5b2e1e49966c8ae0431a887218de27dcc21b",
      "parents": [
        "beef0ce5e121932330abd3eb6d1a2f0ce6097ded",
        "db92bb71d05caf674b527e6f479ddf276d1d7767"
      ],
      "author": {
        "name": "Sergei Vasilinetc",
        "email": "sergeyv@google.com",
        "time": "Fri Feb 03 01:08:23 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 03 01:08:26 2017 +0000"
      },
      "message": "Merge \"Check if layer is created in detachSurfaceTexture\""
    },
    {
      "commit": "dc5cd8b323b9d5a427cc44d3df8177a3de384bf4",
      "tree": "200c1e4345c1a364fa3e49061705abf324c18a8f",
      "parents": [
        "de3f962e8a89043827629c3f69d3db2375c48a4b",
        "0c40524953f3d36a880f91183302a2ea5c722930"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Thu Feb 02 21:48:12 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Feb 02 21:48:14 2017 +0000"
      },
      "message": "Merge \"AssetManager2: Add other support methods\""
    },
    {
      "commit": "db92bb71d05caf674b527e6f479ddf276d1d7767",
      "tree": "b769e2e0d7c9e93678445783a5559c9641f1ec09",
      "parents": [
        "fafdb7372fe0da277a32b47cff825dbb244e4af0"
      ],
      "author": {
        "name": "sergeyv",
        "email": "sergeyv@google.com",
        "time": "Thu Feb 02 12:57:30 2017 -0800"
      },
      "committer": {
        "name": "sergeyv",
        "email": "sergeyv@google.com",
        "time": "Thu Feb 02 12:57:30 2017 -0800"
      },
      "message": "Check if layer is created in detachSurfaceTexture\n\nTest: manual\nbug:34937475\nChange-Id: Iaab7a341917456b40427efd2746d33ddd88514d1\n"
    },
    {
      "commit": "f2ca8e030c4e65dcd9d7d021cca296fec85320b7",
      "tree": "a55334f37f89953d7ea52a6122c8d18dd7ba4d70",
      "parents": [
        "82c8e5c9602214e24dd5b6940d2c81bf1d4f6a2c",
        "9f4a82f5692831ad80f515fa831fddfdfe50b7b0"
      ],
      "author": {
        "name": "Sergei Vasilinetc",
        "email": "sergeyv@google.com",
        "time": "Thu Feb 02 07:27:09 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Feb 02 07:27:14 2017 +0000"
      },
      "message": "Merge \"Hardware bitmaps: Destroy texture ID generated for the copy\""
    },
    {
      "commit": "9f4a82f5692831ad80f515fa831fddfdfe50b7b0",
      "tree": "be9cc172081adb80deb94263edbd071f356b53de",
      "parents": [
        "a99952c18db3e40ea50eb36bf8978ac29cf1fbb3"
      ],
      "author": {
        "name": "sergeyv",
        "email": "sergeyv@google.com",
        "time": "Wed Feb 01 17:50:27 2017 -0800"
      },
      "committer": {
        "name": "sergeyv",
        "email": "sergeyv@google.com",
        "time": "Wed Feb 01 17:50:27 2017 -0800"
      },
      "message": "Hardware bitmaps: Destroy texture ID generated for the copy\n\nTest: manual\nbug:34807359\nChange-Id: Idb1ef2a2efcb3cf7fb96e2a1f0554a06e7cd0fc2\n"
    },
    {
      "commit": "0e177d32edf90ffe1a29c905fd51395f6ba91114",
      "tree": "1800126f5a1ab14e920a2ffe7238cbd2b5d67e36",
      "parents": [
        "2cf7b1f1425819c31a7ccd1c09f5bc9f3ab5c265",
        "3e9999bd866fac71c72e6b484a9836c87c328a08"
      ],
      "author": {
        "name": "Sergei Vasilinetc",
        "email": "sergeyv@google.com",
        "time": "Wed Feb 01 22:52:16 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 01 22:52:21 2017 +0000"
      },
      "message": "Merge \"Explicitly destroy Layer in DeferredLayerUpdater on destroyHardwareResources()\""
    },
    {
      "commit": "2cf7b1f1425819c31a7ccd1c09f5bc9f3ab5c265",
      "tree": "a2001aeb3c8ffae07055471b328d034d08e9be15",
      "parents": [
        "0fcdf4399e86ea3fb905b1298915afec46fb3be6",
        "83809fec686b47da73ee0aaa80d226de7e33aab9"
      ],
      "author": {
        "name": "Sergei Vasilinetc",
        "email": "sergeyv@google.com",
        "time": "Wed Feb 01 22:47:59 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 01 22:48:06 2017 +0000"
      },
      "message": "Merge \"Properly clear textures for Hardware Bitmaps\""
    },
    {
      "commit": "83809fec686b47da73ee0aaa80d226de7e33aab9",
      "tree": "9aae539b477c1b52f801c6276e6285058bc82cbb",
      "parents": [
        "a99952c18db3e40ea50eb36bf8978ac29cf1fbb3"
      ],
      "author": {
        "name": "sergeyv",
        "email": "sergeyv@google.com",
        "time": "Wed Feb 01 10:27:33 2017 -0800"
      },
      "committer": {
        "name": "sergeyv",
        "email": "sergeyv@google.com",
        "time": "Wed Feb 01 12:44:28 2017 -0800"
      },
      "message": "Properly clear textures for Hardware Bitmaps\n\nTest: manual  (Description in the bug)\nbug:34858530\nChange-Id: I13eb89077c43ca28436509a7af5b7c11374446c4\n"
    },
    {
      "commit": "e916e1741a3483ad076085e4a6d08a2eb39abe7d",
      "tree": "cc621603c4a22254fa599e45b5cf6942de6af8a2",
      "parents": [
        "27f4f4a57a0cd5ff37cb46291bec2c7623cbae15",
        "91627f61705a68cd18fdbce1b8190a2ffdec5f10"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Feb 01 20:14:00 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 01 20:14:04 2017 +0000"
      },
      "message": "Merge \"Fix incorrect comments\""
    },
    {
      "commit": "91627f61705a68cd18fdbce1b8190a2ffdec5f10",
      "tree": "744c029d7e0735e877a923a9dce25d80a3ba1372",
      "parents": [
        "a09a31f99f9d65e1100f8295c2b9db485fe68b07"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Wed Feb 01 09:59:02 2017 -0800"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Wed Feb 01 09:59:02 2017 -0800"
      },
      "message": "Fix incorrect comments\n\nBug: 33010587\nTest: comment only\nChange-Id: Icdfa79bac50545bb73f4c40727fe51780ef4a56d\n"
    },
    {
      "commit": "629fd3d48ba1dbedc6e84e91a26f72fb1fba0e22",
      "tree": "4476dce10614c530b33de9854e44192957c42ac7",
      "parents": [
        "ad3190beccf2369947bfb8b3cf8a33eccd6819ad"
      ],
      "author": {
        "name": "Miao Wang",
        "email": "miaowang@google.com",
        "time": "Tue Jan 31 17:26:52 2017 -0800"
      },
      "committer": {
        "name": "Miao Wang",
        "email": "miaowang@google.com",
        "time": "Tue Jan 31 17:26:52 2017 -0800"
      },
      "message": "Remove uncessary dependency of libhwui\n\n  - libRS.so is not directly used. It is accessed by libRScpp.so.\n\nTest: mm, and boot-up test on sailfish\nChange-Id: I5742d2ee3b34ef09bcb997524408affce1ace8fd\n"
    },
    {
      "commit": "0c40524953f3d36a880f91183302a2ea5c722930",
      "tree": "eb7a15ddd974e1263864902f9f3dd019a47343fc",
      "parents": [
        "a9285db08883dbbe7b5eb9276cb52b7e01b42aa3"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Fri Jan 13 20:47:26 2017 -0800"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Tue Jan 31 16:20:29 2017 -0800"
      },
      "message": "AssetManager2: Add other support methods\n\n- Add GetResourceConfigurations()\n- Add GetResourceLocales()\n- Add ResolveReference()\n- Add stub for GetResourceId()\n- Change LoadedArsc and ApkAssets factory method to return const\n\nTest: make libandroidfw_tests\nChange-Id: Ia797dc9381a523b1a3e7029048a413e544730379\n"
    },
    {
      "commit": "5703a0e4297eb98723899013bd210c25858e3c9d",
      "tree": "ea89e104458709e2617172b35943f06066994bec",
      "parents": [
        "f0ccd9bd0131a0a8f85aa07ea62996423860730c",
        "c6aada9c5789b2777b19c522d3cd5052bbe784a4"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jan 31 23:35:39 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 31 23:35:42 2017 +0000"
      },
      "message": "Merge \"LoadedArsc: Support feature splits.\""
    },
    {
      "commit": "65626b663aed769b912838875ef378dfe40e6043",
      "tree": "6e7be2fb0c2919b1dd545967e4e46289b12d29fb",
      "parents": [
        "7b552516aee86cadae2721f51c6087c0dfbdd937",
        "010b6a58c7d19ba2ef68295819fce00b37595dec"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jan 31 22:05:18 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 31 22:05:22 2017 +0000"
      },
      "message": "Merge \"Add UiBench jank and macrobench tests for saveLayer performance\""
    },
    {
      "commit": "010b6a58c7d19ba2ef68295819fce00b37595dec",
      "tree": "635c9c983220d2eecf3dd972ccd4875e98e17add",
      "parents": [
        "b3231029b5642474264b3d574fb7d5b68b0bfc57"
      ],
      "author": {
        "name": "Stan Iliev",
        "email": "stani@google.com",
        "time": "Fri Jan 27 14:30:23 2017 -0500"
      },
      "committer": {
        "name": "Stan Iliev",
        "email": "stani@google.com",
        "time": "Tue Jan 31 15:13:08 2017 -0500"
      },
      "message": "Add UiBench jank and macrobench tests for saveLayer performance\n\nCreate 2 jank tests and 1 macrobench that measure saveLayer\nperformance:\n- Fling a ListView, which has a vertical fading edge.\n- Draw a canvas with 20 saveLayer/restore interleaved with other\ndrawText and drawRect ops.\n\nTest: built and ran UiBench jank and macrobench tests.\nChange-Id: I5a50feb7431d597c92c7a49031505d41f397d175\n"
    },
    {
      "commit": "cf45c852977e5f68a0d67fca01f03b11c09e32ba",
      "tree": "93ef75be91423e483c4a65165512d5b045dd5e00",
      "parents": [
        "e9b8348027074996b08796816e0ce0998169a881",
        "9ff994d98846d24bc488939af6e7dc440149a4bc"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jan 31 05:46:23 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 31 05:46:27 2017 +0000"
      },
      "message": "Merge \"Introduce set/getFontVariationSettings.\""
    },
    {
      "commit": "5d6facc89dbe3dacb49fdca47d1297be98f6ccee",
      "tree": "c2f3cddafe1caf9cc9062002c6391ac90ba3d3df",
      "parents": [
        "f0fac1d1cd5b57ab937b0d02c614502351e61718",
        "00783be809c1176fa9e904b76b3d56f268dcc4da"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jan 31 00:51:53 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 31 00:51:56 2017 +0000"
      },
      "message": "Merge \"Don\u0027t count hw bitmap\u0027s textures in TextureCache\""
    },
    {
      "commit": "3e9999bd866fac71c72e6b484a9836c87c328a08",
      "tree": "5f4f3303c211e618bb8daed4b62f8ebfecccd530",
      "parents": [
        "df9a4f9a7c599ccd2348d429e6a6f0a5a415f780"
      ],
      "author": {
        "name": "sergeyv",
        "email": "sergeyv@google.com",
        "time": "Thu Jan 19 15:37:02 2017 -0800"
      },
      "committer": {
        "name": "sergeyv",
        "email": "sergeyv@google.com",
        "time": "Mon Jan 30 16:42:41 2017 -0800"
      },
      "message": "Explicitly destroy Layer in DeferredLayerUpdater on destroyHardwareResources()\n\nChange-Id: I0987104eabda9a2a302b9e765213aad48f93aea4\nTest: refactoring CL. Existing tests still pass\nbug:33753499\n"
    },
    {
      "commit": "00783be809c1176fa9e904b76b3d56f268dcc4da",
      "tree": "01eb1305e499d8dfa5ea9d973fd5b2a90c04d65f",
      "parents": [
        "df9a4f9a7c599ccd2348d429e6a6f0a5a415f780"
      ],
      "author": {
        "name": "sergeyv",
        "email": "sergeyv@google.com",
        "time": "Mon Jan 30 14:24:48 2017 -0800"
      },
      "committer": {
        "name": "sergeyv",
        "email": "sergeyv@google.com",
        "time": "Mon Jan 30 15:13:07 2017 -0800"
      },
      "message": "Don\u0027t count hw bitmap\u0027s textures in TextureCache\n\nTest: refactoring CL.\nbug: 34751775\nChange-Id: I0f7c8338817329a5c75cec4e8b944779587d7b7f\n"
    },
    {
      "commit": "3afd63778e401651a7a6fd721d6d795690916ab8",
      "tree": "d9b6cf4a86e9f8473f29cab0c60b396194075933",
      "parents": [
        "fda076a12ed641d5ab53933c4aac9e8063c580d0"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Jan 30 10:15:48 2017 -0800"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Jan 30 13:29:26 2017 -0800"
      },
      "message": "Switch how destroyHardwareResources works\n\ndestroyHardwareResources will now only force-destroy\nthe specific node it was called on, which are only\never the root nodes. Rely on onRemovedFromTree()\nto clean up resources for all other nodes.\n\nBug: 34736819\n\nTest: RenderNode.multiTreeValidity passes, manually\nverified fixes b/34736819\n\nChange-Id: I1c275ad6a98b63bf50f265602f09bffe3e1f169b\n"
    },
    {
      "commit": "9ff994d98846d24bc488939af6e7dc440149a4bc",
      "tree": "8db47dea9dee9a387d96a6f2a1e0a5ed47a41425",
      "parents": [
        "ac2d17857884b932a3d8bb4428d37311fd2bc568"
      ],
      "author": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Wed Nov 30 14:04:21 2016 -0800"
      },
      "committer": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Mon Jan 30 20:22:41 2017 +0900"
      },
      "message": "Introduce set/getFontVariationSettings.\n\nThis is 2nd attempt of I249d464f8cdaa56017a987588b94ed685aadeb58.\nThe original CL was reverted due to conflicting with another CL submitted\nbefore.\nNothing has changed except for following class name changes.\n\nHere is the original commit message of reverted change.\n\nThis CL enables developers to specify axis values to the underlying\nfont collection. The specification of the font variation settings is\nthe same as the CSS font-variation-settings attribute in CSS working\ndraft as of 2016-11-30.\n\nCode example: Here is an example to set width 100 and weight 1.5.\n\n  TextView tv \u003d (TextView) findViewById(R.id.textView);\n  tv.setFontVariationSettings(\"\u0027wdth\u0027 100, \u0027wght\u0027 1.5\");\n\nBug: 33062398\nTest: Manually done. Ran FrameworksGraphicsTests, CtsGraphicsTestCases\n      and CtsWidgetTestCases\n\nChange-Id: I9cdfbdecc87c995d805096883ef2652768c6c21e\n"
    },
    {
      "commit": "c6aada9c5789b2777b19c522d3cd5052bbe784a4",
      "tree": "e78d92b927ba7fb951c0898fe28957a19671a684",
      "parents": [
        "90572a4ab8ac393c57e896be3c608e634866ed38"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Fri Jan 13 15:34:14 2017 -0800"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Fri Jan 27 16:52:53 2017 -0800"
      },
      "message": "LoadedArsc: Support feature splits.\n\nTest: make libandroidfw_tests\nChange-Id: I278273e688da597f4af86dd55f87750501ef8154\n"
    },
    {
      "commit": "90572a4ab8ac393c57e896be3c608e634866ed38",
      "tree": "524319d2edfd555f3b637bd332f1a494bf4c1114",
      "parents": [
        "904aca762c7e1c1ac5c005134ca802dba0ceed5b",
        "da431a22da38f9c4085b5d71ed9a9c6122c6a5a6"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Fri Jan 27 22:30:22 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 27 22:30:24 2017 +0000"
      },
      "message": "Merge \"libandroidfw: Add new support for shared libraries\""
    },
    {
      "commit": "a0428f8dae7d1a6101df417abed86badc41177bf",
      "tree": "9e57350c30b3a52a724fb8bac77a265e7ed00a0c",
      "parents": [
        "4e816831e259d26400b4fcf56304a6f114816503",
        "b5544d0308613dbcfee5d27f26bda2248d0a5e33"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Fri Jan 27 00:13:16 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 27 00:13:20 2017 +0000"
      },
      "message": "Merge \"Temporarily enable GL validation\""
    }
  ],
  "next": "b5544d0308613dbcfee5d27f26bda2248d0a5e33"
}
