)]}'
{
  "log": [
    {
      "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": "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\""
    },
    {
      "commit": "b5544d0308613dbcfee5d27f26bda2248d0a5e33",
      "tree": "267582ab4c8ac41fcf646f5a4442b5251a11a6bf",
      "parents": [
        "85895792f0c95fb903a69f21e1495e67e250d816"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed Jan 25 15:09:37 2017 -0800"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed Jan 25 15:09:37 2017 -0800"
      },
      "message": "Temporarily enable GL validation\n\nBug: 34206215\nTest: none\nChange-Id: Ifc2855ca399f4ae42376349dd5c660f60b327c04\n"
    },
    {
      "commit": "2de950d5a8b47c7b4648ada1b1260ce4b7342798",
      "tree": "d374208f819ffd994c51f258b9732b231ba7d9a1",
      "parents": [
        "df7f28352029766755a4187786db12351ce843c6"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed Jan 25 10:58:30 2017 -0800"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed Jan 25 12:24:40 2017 -0800"
      },
      "message": "Overhaul RenderNode\u0027s DisplayList management\n\n* Move mValid to native\n* Have destroyHardwareResources destroy everything\n* Remove flaky mParentCount checks in setStaging\n* All tree updates have an internal observer to\n  ensure onRemovedFromTree() is a reliable signal\n* onRemovedFromTree() immediately releases resources\n  to avoid displaylist \"leaks\"\n\nTest: Unit tests for validity added \u0026 pass, manually\nverified that b/34072929 doesn\u0027t repro\n\nBug: 34072929\n\nChange-Id: I856534b4ed1b7f009fc4b7cd13209b97fa42a71c\n"
    },
    {
      "commit": "f54c76399a4173bb6c7e5411b53e14a712d75b47",
      "tree": "4d9e8af353c26ffdf703acb2efde2095eca878b4",
      "parents": [
        "8f3b34338aca7276a45033e362776678c2adf984",
        "5e4389823191aafff7422561f134dbdb391e0a2d"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 25 16:40:33 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 25 16:40:37 2017 +0000"
      },
      "message": "Merge \"use new clipbounds api\""
    },
    {
      "commit": "5e4389823191aafff7422561f134dbdb391e0a2d",
      "tree": "6b5be73aeb4cdcfed028451c238a4c5d8a140071",
      "parents": [
        "2bf3b1b2cf7cb32f9dd7f03fefc4393908b820fc"
      ],
      "author": {
        "name": "Mike Reed",
        "email": "reed@google.com",
        "time": "Wed Jan 25 08:23:25 2017 -0500"
      },
      "committer": {
        "name": "Mike Reed",
        "email": "reed@google.com",
        "time": "Wed Jan 25 13:26:41 2017 +0000"
      },
      "message": "use new clipbounds api\n\nAllows us to remove SK_SUPPORT_LEGACY_GETCLIPBOUNDS flag\n\nChange-Id: I7c6665b4eb67c58fe747c07b8b87d58fe9b10120\n"
    },
    {
      "commit": "68eb1ac342f30b77b6fdba98e67559c4858e3f74",
      "tree": "75a553902b4d3c3ca5b5ae7feef5947d94d00150",
      "parents": [
        "b2540e8d8d46a8eaa3f82ea36fb2bd60d53f77dc",
        "8b48e624457e438fcc2b6b9363329036ef2f7743"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 25 07:05:45 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 25 07:05:50 2017 +0000"
      },
      "message": "Merge \"Follow minikin::FontFamily constructor signature change.\""
    },
    {
      "commit": "6bb13da2789b2485a628e4fc077524b430661c82",
      "tree": "9e4b3765df56ebc451b3e2a77f007b6f5a055811",
      "parents": [
        "16382634fcc1c850b7c3b8f9646ac122bea818a1"
      ],
      "author": {
        "name": "Mårten Kongstad",
        "email": "marten.kongstad@sonymobile.com",
        "time": "Thu Jun 02 09:34:36 2016 +0200"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Tue Jan 24 20:26:51 2017 -0800"
      },
      "message": "Fix memory leak during idmap creation\n\nPlug a memory leak in AssetManager::createIdmap.\n\nBug: 31052947\nTest: use Valgrind and dummy native app\nChange-Id: I83af3a40516ed2d50d5a7c8ee175ed960fde9933\n"
    },
    {
      "commit": "e84ad491c82168228f042644285a2581fc619baf",
      "tree": "4c14b28f519d939da23578fc7b4935cfb5b1adb6",
      "parents": [
        "b7cab6a19096458a7fafa905eed52db83759b6c6",
        "4832745b84d6a358582f2264d22acacf25e01b07"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 25 01:20:23 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 25 01:20:28 2017 +0000"
      },
      "message": "Merge \"Add color mode to activity/window\""
    },
    {
      "commit": "4832745b84d6a358582f2264d22acacf25e01b07",
      "tree": "cde7e923e06892dfa7c9b1a10a10e8da91e007f1",
      "parents": [
        "a393ff7dc7e7e7002a400d37868e0d6c14507b43"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Mon Jan 23 17:03:35 2017 -0800"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Tue Jan 24 15:55:09 2017 -0800"
      },
      "message": "Add color mode to activity/window\n\nThe color mode lets an application request a wide color gamut for\na specific window. This will also be used in the future to request\nHDR. The color mode is currently either default (sRGB) or an undefined\nwide gamut color space chosen by the platform. These attributes could\nlater be used to choose a specific color space if we deem this important\nor useful.\n\nThis change also renames the various \"colorimetry\" attributes and\nconstants to \"color mode\" for consistency. These symbols were\nadded in O and can be safely renamed.\n\nTest: CtsColorModeTestCases\nBug: 32984164\nChange-Id: I4d4691dd12dbe3f3aa6a5cf893cff39aa16c739e\n"
    },
    {
      "commit": "02b0d4054755af5dde16910377099c0b8fbab200",
      "tree": "3e50d6d945cf4bc73530c1235125a11f30367ab9",
      "parents": [
        "fffa2eb0460dbb790d565b3e2a651b6a9fb7c9b9",
        "341480bef58ee40eceb1caa4d94c4a8d3934b132"
      ],
      "author": {
        "name": "Matt Sarett",
        "email": "msarett@google.com",
        "time": "Tue Jan 24 22:49:41 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 24 22:49:43 2017 +0000"
      },
      "message": "Merge \"Fix renderOverdraw() test\""
    },
    {
      "commit": "4f2a40ac9f9bfb12b4aef16fbaa59666400bcfeb",
      "tree": "6d5719f31c2e52438bf218522b38d6d145eb71b8",
      "parents": [
        "25ee47ff2408494f85ff6b9acbb509aef84cf80e",
        "efa38e38fbb5fc9395c7c622d3a32fa1ffde65d0"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jan 24 19:49:51 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 24 19:49:55 2017 +0000"
      },
      "message": "Merge \"Revert \"Workaround libmemunreachable lockup\"\""
    },
    {
      "commit": "efa38e38fbb5fc9395c7c622d3a32fa1ffde65d0",
      "tree": "4e3d1a32d81bf5653aef0fd63531b77d87d72838",
      "parents": [
        "553ae6ab071b1db5e783c8c02f9311b4969729f6"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue Jan 24 18:13:03 2017 +0000"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue Jan 24 18:13:03 2017 +0000"
      },
      "message": "Revert \"Workaround libmemunreachable lockup\"\n\nThis reverts commit 553ae6ab071b1db5e783c8c02f9311b4969729f6.\n\nChange-Id: I593b78f7073d84a5e16372849d27e943af65694c\nFixes: 34586922\n"
    },
    {
      "commit": "341480bef58ee40eceb1caa4d94c4a8d3934b132",
      "tree": "240be63fcab8e3f646f24889f0caea24a786e0c3",
      "parents": [
        "ec30d6e12fccf828c544e4c2a1ee27a4c765713b"
      ],
      "author": {
        "name": "Matt Sarett",
        "email": "msarett@google.com",
        "time": "Mon Jan 23 19:45:42 2017 -0500"
      },
      "committer": {
        "name": "Matt Sarett",
        "email": "msarett@google.com",
        "time": "Tue Jan 24 09:05:39 2017 -0500"
      },
      "message": "Fix renderOverdraw() test\n\nI\u0027m not sure why this test was modifies, but this\nrestores the test to the original version, which passes.\n\nTest: Passes unit test\n\nBUG:34467659\n\nChange-Id: I6699cf13d4b69301d57fa0cec9b24093e8263ba7\n"
    },
    {
      "commit": "8b48e624457e438fcc2b6b9363329036ef2f7743",
      "tree": "5a8f230de2c356f9d7a976b69e8b908f5120663d",
      "parents": [
        "78b09a00a875d62e055c0d206fb1128015b4a5f2"
      ],
      "author": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Sat Jan 07 15:33:38 2017 +0900"
      },
      "committer": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Tue Jan 24 15:10:29 2017 +0900"
      },
      "message": "Follow minikin::FontFamily constructor signature change.\n\nThis is 2nd attempt of Id10ca97f6f6f5bbe4999c1ad2736423a204d6e87.\nThe root caus of crash is due touching null pointer in nUnrefFamily.\nAfter above change, native object may not be created on error case.\nIn that case, nUnrefFamily can not be called. In addition to this issue\nthere is also memory leak on error case. This fixes it by introducing\nabortCreation method.\n\nAlso this contains fix of layout lib breakage done by jgaillard@.\nOriginally submitted by Ic8872a43993bcb0a157c5e3f0ce423af9b47f606\n\nHere is original commit message of reverted change.\n\nminikin::FontFamily no longer has addFont function, instead it accept\nvector of Fonts in its constructor. To follow this signature change,\nholding minikin::Font instance in native and build minikin::FontFamily\ninstance in FontFamily.freeze() method.\n\nBug: 34042446\nBug: 28119474\nBug: 34378805\nTest: hwui test has passed\nTest: m layoutlib layoutlib-tests\nChange-Id: Ic34ebaa8191273d4c9f49c43124f15a1da5f7b78\n"
    },
    {
      "commit": "2ba96eced0a0eb2c6e3c73ad8576cf394a6a9868",
      "tree": "0c15916c13a6b81076c3c5acff62688464c96c25",
      "parents": [
        "70a1a72eff12b157747e753b8d8fd15d6080bdcd",
        "47aa8d1477d1bacdb3b45e0463ef99dcf5c9cc09"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Jan 23 23:45:56 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jan 23 23:46:00 2017 +0000"
      },
      "message": "Merge \"Add tests for b/34598346\""
    },
    {
      "commit": "47aa8d1477d1bacdb3b45e0463ef99dcf5c9cc09",
      "tree": "5cf486aceeec31d4231365aa9fc796ba5287141c",
      "parents": [
        "553ae6ab071b1db5e783c8c02f9311b4969729f6"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Jan 23 11:20:37 2017 -0800"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Jan 23 14:07:53 2017 -0800"
      },
      "message": "Add tests for b/34598346\n\nTest: unit test passes\nBug: 34598346\nChange-Id: I7e5144aa875e42487718059cc06b86e32db28702\n"
    },
    {
      "commit": "65e8f0adf31f8af2fea5d2ab9bdbf95ecf693852",
      "tree": "21e6050a31f7de00b4b671aae8c8d299b659a872",
      "parents": [
        "f1d9a7e6e41a71266a27987bf813979e69066ed3",
        "553ae6ab071b1db5e783c8c02f9311b4969729f6"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Jan 23 21:16:50 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jan 23 21:16:55 2017 +0000"
      },
      "message": "Merge \"Workaround libmemunreachable lockup\""
    },
    {
      "commit": "2d31375d94e4170803615c457ef8c4d72815c725",
      "tree": "7141147d45f783f7ea69e98789246f2b9b632f58",
      "parents": [
        "2505b722477bb6f813349e2475af662c352faa9d",
        "c1db0e0ff701c81aa909789e3c6c4d3d5b3aca84"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Jan 23 20:37:11 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jan 23 20:37:16 2017 +0000"
      },
      "message": "Merge \"Remove all calls to SkCanvas::getClipStack from HWUI unit tests\""
    },
    {
      "commit": "553ae6ab071b1db5e783c8c02f9311b4969729f6",
      "tree": "7b5e3de36eceaa44a71c22405975ff5be5dedf4f",
      "parents": [
        "51c51df46c1d8bbbd946dc2dde429ae91b29d47e"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Jan 23 10:46:50 2017 -0800"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Jan 23 11:06:46 2017 -0800"
      },
      "message": "Workaround libmemunreachable lockup\n\nBug: 34586922\nTest: hwui_unit_tests completes\nChange-Id: Ia55f7bc49faf8a32624e2f16e2477eb12a261b07\n"
    },
    {
      "commit": "c1db0e0ff701c81aa909789e3c6c4d3d5b3aca84",
      "tree": "20858e2e6b86f39b7f7657473ce0de3285bbec47",
      "parents": [
        "27be018934e567eac322f9c873ca136ae7e09f08"
      ],
      "author": {
        "name": "Stan Iliev",
        "email": "stani@google.com",
        "time": "Mon Jan 23 13:47:35 2017 -0500"
      },
      "committer": {
        "name": "Stan Iliev",
        "email": "stani@google.com",
        "time": "Mon Jan 23 13:47:35 2017 -0500"
      },
      "message": "Remove all calls to SkCanvas::getClipStack from HWUI unit tests\n\nRefactor HWUI unit tests to not invoke SkCanvas::getClipStack,\nbecause this Skia API is going to be deprecated.\n\nTest: Build and ran sailfish-eng. Ran HWUI unit tests.\nChange-Id: Iac277aa26fbe9e2a0860cde2dd43732ed1c4c4e3\n"
    },
    {
      "commit": "51c51df46c1d8bbbd946dc2dde429ae91b29d47e",
      "tree": "4e3d1a32d81bf5653aef0fd63531b77d87d72838",
      "parents": [
        "34f04ffa0b9e42930f8cb753445e1f5f45cd11cc"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Jan 23 10:24:27 2017 -0800"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Jan 23 10:26:28 2017 -0800"
      },
      "message": "Add missing nothingToDraw() check\n\nFixes: 34598346\n\nPrior to 2874daa4d38bddd3a5f0edb3774d5e5884dd9554 we\nnever freed the resources of root nodes. Now that this is being\ndone we need to ensure that the backdrop has content before\nwe try to draw that content. All other nodes passed in\ndeferRenderNodeScene check that nothingToDraw() returns false\nbefore drawing them, but that check was missed on the backdrop\nnode.\n\nTest: manual. open calculator then long-press on recents\nChange-Id: I495749161b38b57278bdb60d5f872eeeb2b218d0\n"
    },
    {
      "commit": "27be018934e567eac322f9c873ca136ae7e09f08",
      "tree": "235f3b0238a13bfc933b7377d7b9827fd8e92abf",
      "parents": [
        "99695b0fc981097872281b2a17df3f58df48b92a",
        "98d251b10ece39190801177c637ff319bd21230a"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jan 20 14:31:36 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 20 14:31:41 2017 +0000"
      },
      "message": "Merge \"Refactor GLFunctorDrawable to use new SkCanvas API for clip region\""
    },
    {
      "commit": "a9da39cb645243e334505cd072488593521ea42c",
      "tree": "1175e59c043dde4cbd93323d95b25cb380ea00e8",
      "parents": [
        "f552a6f90d49120be291ab5a5b7def9b56b6fb3f",
        "c9ba55902123be5abcf2dcda5af9995be0b8d3d8"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jan 20 04:09:59 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 20 04:10:04 2017 +0000"
      },
      "message": "Merge \"Add wide color gamut and HDR resource qualifiers\""
    },
    {
      "commit": "c9ba55902123be5abcf2dcda5af9995be0b8d3d8",
      "tree": "953bf264c1f748816ad8ebc4898f580d163ce959",
      "parents": [
        "a2b1774d758b58fc5977f631eff76fa21d303906"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Wed Jan 18 16:34:42 2017 -0800"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Thu Jan 19 18:44:00 2017 -0800"
      },
      "message": "Add wide color gamut and HDR resource qualifiers\n\nBug: 32984164\nTest: Config_test, AaptConfig_test and aapt2_tests\nChange-Id: Ie9c82bfe2d36b1d6180ee223250ab5bb2ce90dd4\n"
    },
    {
      "commit": "c0d685b87aa544bc23c1ed1c01e88f6c04855f72",
      "tree": "efeaeba630a9cefaba926744082f8d52f2662c79",
      "parents": [
        "fdf9a1b7208a78eea7db3440b5df885c76049add"
      ],
      "author": {
        "name": "Siyamed Sinir",
        "email": "siyamed@google.com",
        "time": "Fri Jan 20 01:10:59 2017 +0000"
      },
      "committer": {
        "name": "Siyamed Sinir",
        "email": "siyamed@google.com",
        "time": "Fri Jan 20 02:01:25 2017 +0000"
      },
      "message": "Revert \"Follow minikin::FontFamily constructor signature change.\"\n\nThis reverts commit a0a4828614edfd633ab86f04408e7f4e55b491dd.\n\nBug: 34378805\nChange-Id: Icbdbfbde2efe8eaebbe4334a679e3b3247057388\n"
    },
    {
      "commit": "24fac986ecad9a4c8b7ccdf545abebbfc0532678",
      "tree": "8d9e19e723ec7cc6ac672ce6a8cb948261a8b61e",
      "parents": [
        "5bb4c96d43b31d1a79393cf54b8e3c3ce414bdef",
        "a3b9f2e3c66ec485f3b712560d52e31632a9cbe8"
      ],
      "author": {
        "name": "Siyamed Sinir",
        "email": "siyamed@google.com",
        "time": "Fri Jan 20 01:59:47 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 20 01:59:52 2017 +0000"
      },
      "message": "Merge \"Revert \"Introduce set/getFontVariationSettings.\"\""
    },
    {
      "commit": "a3b9f2e3c66ec485f3b712560d52e31632a9cbe8",
      "tree": "e0f0748744a484dc62fd942b3fc5b36f1b7c6f15",
      "parents": [
        "ba3028c1fc9fca2d45acc841557da2c9a83923bf"
      ],
      "author": {
        "name": "Siyamed Sinir",
        "email": "siyamed@google.com",
        "time": "Fri Jan 20 01:11:15 2017 +0000"
      },
      "committer": {
        "name": "Siyamed Sinir",
        "email": "siyamed@google.com",
        "time": "Fri Jan 20 01:13:23 2017 +0000"
      },
      "message": "Revert \"Introduce set/getFontVariationSettings.\"\n\nThis reverts commit ba3028c1fc9fca2d45acc841557da2c9a83923bf.\n\nBug: 34378805\nChange-Id: I8250c87af5d65fb45789632580be4ae1b8711372\n"
    },
    {
      "commit": "1f9f11007db09bbbc156965e77b10de82a32a544",
      "tree": "e715a9edb691da38726c2c5487625bd35b05ec94",
      "parents": [
        "12375e9e0d14868cf63c0d6584c7a7d9440c30c4",
        "d5083f6f6b9bc76bbe64052bcec639eee752a321"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 19 23:40:02 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 19 23:40:06 2017 +0000"
      },
      "message": "Merge \"Move StringPiece to libandroidfw\""
    },
    {
      "commit": "98d251b10ece39190801177c637ff319bd21230a",
      "tree": "544736930dae43e7ee48677d856db19156e2de7f",
      "parents": [
        "4779e9970e744538fe9c30127bcd2d495686343e"
      ],
      "author": {
        "name": "Stan Iliev",
        "email": "stani@google.com",
        "time": "Thu Jan 19 18:08:38 2017 -0500"
      },
      "committer": {
        "name": "Stan Iliev",
        "email": "stani@google.com",
        "time": "Thu Jan 19 18:08:38 2017 -0500"
      },
      "message": "Refactor GLFunctorDrawable to use new SkCanvas API for clip region\n\nRefactor GLFunctorDrawable::onDraw to get SkCanvas clip region\nwith new Skia API (getClipStack is going to be deprecated).\n\nTest: Built and ran angler-userdebug. Ran CTS WebView clip tests.\nChange-Id: Ia11e3f3d64d5c33802b7a8f296f213ef39a69905\n"
    },
    {
      "commit": "2d00c0952eba704f2226cf3d264f708c72a2746b",
      "tree": "9a76a384322308f8bf8f28c84ac7e68e20e041be",
      "parents": [
        "f07d408798bf383991a5a994313c12151456dfa3",
        "9bddb4841371de1d83affeddef12b5bca3e69647"
      ],
      "author": {
        "name": "Roozbeh Pournader",
        "email": "roozbeh@google.com",
        "time": "Wed Jan 18 17:03:32 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 18 17:03:35 2017 +0000"
      },
      "message": "Merge \"Update locale data from in-tree ICU\""
    },
    {
      "commit": "57b8eb3da0c4692ac4f39a9c73aa090af475d14a",
      "tree": "4c1c42bf3f4d6a383189f18f7a600a0863584e4c",
      "parents": [
        "9ecde449454100f62c725c3ef544f99726d0e971",
        "98c78dad1969e2321cfee2085faa55d95bba7e29"
      ],
      "author": {
        "name": "Greg Daniel",
        "email": "egdaniel@google.com",
        "time": "Wed Jan 18 16:13:00 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 18 16:13:04 2017 +0000"
      },
      "message": "Merge \"Update hwui_unit_tests to support running with Vulkan backend.\""
    },
    {
      "commit": "98c78dad1969e2321cfee2085faa55d95bba7e29",
      "tree": "49183cc1b7b819b2f8084bbf814a50ca3bd12cf4",
      "parents": [
        "45ec62ba72c5017fae7d8baab20bfb0d4c99c627"
      ],
      "author": {
        "name": "Greg Daniel",
        "email": "egdaniel@google.com",
        "time": "Wed Jan 04 14:45:56 2017 -0500"
      },
      "committer": {
        "name": "Greg Daniel",
        "email": "egdaniel@google.com",
        "time": "Wed Jan 18 09:12:31 2017 -0500"
      },
      "message": "Update hwui_unit_tests to support running with Vulkan backend.\n\nAdded Macros for RENDERTHREAD_TESTS which run these tests using specific backends.\nRENDERTHREAD_TESTS - Runs OpenGL, SkiaGL, and SkiaVulkan\nRENDERTHREAD_SKIA_TESTS - Runs SkiaGL and SkiaVulkan\nRENDERTHREAD_OPENGL_TESTS - Runs OpenGL\n\nTest: manual running of hwui_unit_tests\n\nChange-Id: Ia7420ee7a38803a15e2d58394d14b38cae8208d3\n"
    },
    {
      "commit": "d5083f6f6b9bc76bbe64052bcec639eee752a321",
      "tree": "29b5dfb74c7e9b12164ced408315b0ad8d5cf527",
      "parents": [
        "04e7b6c6de620406348142ba9dd65bad094e264b"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Mon Jan 16 15:07:21 2017 -0800"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Tue Jan 17 18:55:51 2017 -0800"
      },
      "message": "Move StringPiece to libandroidfw\n\nlibandroidfw needs to make use of StringPiece, so\nmove it to libandroidfw and update all code referencing\nStringPiece in aapt2.\n\nTest: make libandroidfw_tests libaapt2_tests\nChange-Id: I68d7f0fc7c651b048d9d1f5e7971f10ef5349fa1\n"
    },
    {
      "commit": "fdaa9c58c9c1961862561b260164d380e3b17363",
      "tree": "6e6c8cf3c94ae5e2cb422672bbd2b5ecaa41a588",
      "parents": [
        "8bd15d1df27f5bd6790955af0db47a78d3ca93ba",
        "7ad1110ecd6a840fcd2895c62668828a1ca029c6"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Tue Jan 17 23:58:32 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 17 23:58:36 2017 +0000"
      },
      "message": "Merge \"New implementation of AssetManager/ResTable\""
    },
    {
      "commit": "1a6cd84d64cce1263958d827f8c7c90c531e5de6",
      "tree": "b33b253667152ca2e882b680d5e8c4e7c4d00153",
      "parents": [
        "d5b7c452f90563a4e78620780922fea08ff66d05",
        "c2d9470aa9d92be3ffb998ecbbff157b94fdee12"
      ],
      "author": {
        "name": "Ben Wagner",
        "email": "bungeman@google.com",
        "time": "Tue Jan 17 17:10:03 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 17 17:10:05 2017 +0000"
      },
      "message": "Merge \"Remove SkDevice.h includes.\""
    },
    {
      "commit": "9bddb4841371de1d83affeddef12b5bca3e69647",
      "tree": "f5df5991e8191929e4b52a19654dc2d23b735c4a",
      "parents": [
        "383679bc1b6fe33d80dcb9578f7b62f1e914a3ee"
      ],
      "author": {
        "name": "Roozbeh Pournader",
        "email": "roozbeh@google.com",
        "time": "Fri Jan 13 17:37:04 2017 -0800"
      },
      "committer": {
        "name": "Roozbeh Pournader",
        "email": "roozbeh@google.com",
        "time": "Fri Jan 13 17:37:04 2017 -0800"
      },
      "message": "Update locale data from in-tree ICU\n\nAlso add back script information for Yiddish old code (ji) that was\nremoved in ICU.\n\nBug: 26756576\nTest: none\nChange-Id: Ia785f86bf0407aeed6134ef9d44e504494256da2\n"
    },
    {
      "commit": "9013325c3a6f34f6a44c1b5f20a6981e37089afb",
      "tree": "4d4118745b578e7279626aea103e1e73619fd7e5",
      "parents": [
        "e446c98bd1b79bcf1fb21cf59a8ec594c5fd5c23",
        "1a70573a683cd930b21c8e3f17cd4a9f37e5dfd2"
      ],
      "author": {
        "name": "Zak Cohen",
        "email": "zakcohen@google.com",
        "time": "Fri Jan 13 23:14:57 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 13 23:15:00 2017 +0000"
      },
      "message": "Merge changes from topic \u0027vrmode\u0027\n\n* changes:\n  Set ui mode in UiModeManagerService to vrheadset when VR mode is enabled.\n  Introduce new UI_MODE_TYPE_VR_HEADSET and qualifier.\n"
    },
    {
      "commit": "c2d9470aa9d92be3ffb998ecbbff157b94fdee12",
      "tree": "de0314b17cfabb783ad2e058384d6b5caad5fcd0",
      "parents": [
        "96b39666a7fb7d2a3ce22c36f62edbd92a2f73a8"
      ],
      "author": {
        "name": "Ben Wagner",
        "email": "bungeman@google.com",
        "time": "Fri Jan 13 17:01:19 2017 -0500"
      },
      "committer": {
        "name": "Ben Wagner",
        "email": "bungeman@google.com",
        "time": "Fri Jan 13 17:03:13 2017 -0500"
      },
      "message": "Remove SkDevice.h includes.\n\nSkDevice.h is being removed from Skia. This removes these already unused\nincludes which mention this file.\n\nTest: refactoring CL. Existing unit tests still pass.\n\nChange-Id: I8340a5822ad2b75c54fe0dca1303ceab9bbee805\n"
    },
    {
      "commit": "383ac409df65269d5fff247a86fa6ac0d90d2863",
      "tree": "8cd07920150caea3095bbc17830a20f08fd245e0",
      "parents": [
        "423f949594386aeb0a38b5d79a6b71af63c3a83b",
        "a192a8ced65ceea8bfe44f0eac6a394cbf80d936"
      ],
      "author": {
        "name": "Roozbeh Pournader",
        "email": "roozbeh@google.com",
        "time": "Fri Jan 13 01:53:11 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 13 01:53:15 2017 +0000"
      },
      "message": "Merge \"Treat Latin American locales specially\""
    },
    {
      "commit": "6f773a0d8717162f81ff21d943baaa539a2d6c7e",
      "tree": "ea99b80bd35011ad16e6c8380e4200fcdf7ee6bc",
      "parents": [
        "4391fae30e29371673e3de947f344f9b1073dc12"
      ],
      "author": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Wed Sep 28 16:15:30 2016 -0700"
      },
      "committer": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Thu Jan 12 20:29:11 2017 +0000"
      },
      "message": "Replace cutils/log.h and android/log.h with log/log.h\n\nTest: compile\nBug: 34250038\nChange-Id: I42185a879beaa9bb244f53a968800392b854ac45\n"
    },
    {
      "commit": "610fbb3afd8d23fbc1eb8e09114f9d1afbfb3bb9",
      "tree": "0dede770e3adcfa97d4841148c77519a7361f396",
      "parents": [
        "7c31e6aa23a9594b0fbfe4104469282d9e1d9196",
        "eec27d51d2d8dae2ac54a11229b55cd1da4e84cf"
      ],
      "author": {
        "name": "Ben Wagner",
        "email": "bungeman@google.com",
        "time": "Thu Jan 12 18:41:48 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 12 18:41:51 2017 +0000"
      },
      "message": "Merge \"Use FatVector instead of SkAutoMalloc in VulkanManager.\""
    },
    {
      "commit": "22221f6981a935cded7e4d2f91935e8941294b8b",
      "tree": "ab6a6e4f30dcb7d42b8a71219f194e6558e1fdd8",
      "parents": [
        "49a43304251ba22abd9e479ab96dda93e513ecd8",
        "173215d1b20b70908a9d1807f1372bd95b7ad5f1"
      ],
      "author": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Thu Jan 12 17:22:56 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 12 17:23:01 2017 +0000"
      },
      "message": "Merge \"resolve merge conflicts of ec7e2a164c37 to master\""
    },
    {
      "commit": "eec27d51d2d8dae2ac54a11229b55cd1da4e84cf",
      "tree": "d9512b68c3fbd7a132187e11645d04272eff5acc",
      "parents": [
        "ba5124b48bff2455c089e803ea6ffcc197a26c51"
      ],
      "author": {
        "name": "Ben Wagner",
        "email": "bungeman@google.com",
        "time": "Wed Jan 11 15:32:07 2017 -0500"
      },
      "committer": {
        "name": "Ben Wagner",
        "email": "bungeman@google.com",
        "time": "Thu Jan 12 11:52:31 2017 -0500"
      },
      "message": "Use FatVector instead of SkAutoMalloc in VulkanManager.\n\nSkia is looking to make SkAutoMalloc private and will be moving it.\nUsing FatVector instead will make this code both less dependent on Skia\ninternals and more performant.\n\nTest: refactoring CL. Existing unit tests still pass.\n\nChange-Id: If9de10059775b75e1ab89078eacede2e20e91299\n"
    },
    {
      "commit": "173215d1b20b70908a9d1807f1372bd95b7ad5f1",
      "tree": "f9dd70a25c2ca5ae7c766dd5615b1f7af5af3f3e",
      "parents": [
        "e86e6d75959787389fcc9b51082b0f33c4553fcd",
        "ec7e2a164c3792fbaab74f6a9eab7c3cb06296e2"
      ],
      "author": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Thu Jan 12 08:27:11 2017 -0800"
      },
      "committer": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Thu Jan 12 08:28:30 2017 -0800"
      },
      "message": "resolve merge conflicts of ec7e2a164c37 to master\n\nTest: compile\nBug: 26552300\nBug: 31289077\nChange-Id: I49c6e41b79061e2b3c0352e3ac8fa5ebb152b6f5\n"
    },
    {
      "commit": "ec7e2a164c3792fbaab74f6a9eab7c3cb06296e2",
      "tree": "e95590278fba647ff13b377f4669d408616365b1",
      "parents": [
        "4103219402225588b4d2387a2070d0433d8924b4",
        "6dacea63d9923d6f451095b7d7b2f203ba7e960e"
      ],
      "author": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Thu Jan 12 15:59:48 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jan 12 15:59:48 2017 +0000"
      },
      "message": "Merge \"Replace cutils/log.h and log/logger.h with android/log.h or log/log.h (part deux)\" am: 2225a0640b am: d1740f0f5b\nam: 6dacea63d9\n\nChange-Id: Ife229cc450dbbb5f43941fcd1b08b86f0e41a779\n"
    },
    {
      "commit": "6dacea63d9923d6f451095b7d7b2f203ba7e960e",
      "tree": "c9607be5287092e1d4dd97527418094c7abb46ce",
      "parents": [
        "95322ffdde2acb6a699d2f3dac529ae88f951c62",
        "d1740f0f5b3b22fc8e8348ef8eccc7efb4e44c7f"
      ],
      "author": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Thu Jan 12 15:46:20 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jan 12 15:46:20 2017 +0000"
      },
      "message": "Merge \"Replace cutils/log.h and log/logger.h with android/log.h or log/log.h (part deux)\" am: 2225a0640b\nam: d1740f0f5b\n\nChange-Id: I78430cd21cf1186ccc2b48ee4ee8a9b07decde5e\n"
    },
    {
      "commit": "ba3028c1fc9fca2d45acc841557da2c9a83923bf",
      "tree": "1accfd45ea89fd4ccbd4e1e2b3816ac36e799690",
      "parents": [
        "e4e375c7493a06af89151b7cbd44cf07930d521b"
      ],
      "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": "Thu Jan 12 18:11:03 2017 +0900"
      },
      "message": "Introduce set/getFontVariationSettings.\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\nChange-Id: I249d464f8cdaa56017a987588b94ed685aadeb58\n"
    },
    {
      "commit": "e4e375c7493a06af89151b7cbd44cf07930d521b",
      "tree": "e0f0748744a484dc62fd942b3fc5b36f1b7c6f15",
      "parents": [
        "0c43b66a1a449835e754d202d97c2fbab038e6c6",
        "a0a4828614edfd633ab86f04408e7f4e55b491dd"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 12 07:43:49 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 12 07:43:53 2017 +0000"
      },
      "message": "Merge \"Follow minikin::FontFamily constructor signature change.\""
    },
    {
      "commit": "da431a22da38f9c4085b5d71ed9a9c6122c6a5a6",
      "tree": "7fc684c1ec3c653ff98bdc8eff50addc081a02e1",
      "parents": [
        "7ad1110ecd6a840fcd2895c62668828a1ca029c6"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Thu Dec 29 16:08:16 2016 -0500"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Wed Jan 11 17:20:36 2017 -0800"
      },
      "message": "libandroidfw: Add new support for shared libraries\n\nThis adds support for shared resource libraries in the new\nResTable/AssetManager implementation.\n\nThe dynamic package map encoded in resources.arsc is parsed\nand stored with LoadedArsc, and combined to form a resolved table\nin AssetManager2.\n\nBenchmarks show that this implementation is an order of magnitude\nfaster on angler-userdebug (make libandroidfw_benchmarks).\n\nTest: libandroidfw_tests\nChange-Id: I57c80248728b63b162bf8269ac9495b53c3e7fa0\n"
    },
    {
      "commit": "a192a8ced65ceea8bfe44f0eac6a394cbf80d936",
      "tree": "e8188ef2b11a50e0052cb7af40749fadad32dcea",
      "parents": [
        "51d34bf06aa67ab5b29c5541e777505ad37907d0"
      ],
      "author": {
        "name": "Roozbeh Pournader",
        "email": "roozbeh@google.com",
        "time": "Tue Jan 10 15:24:32 2017 -0800"
      },
      "committer": {
        "name": "Roozbeh Pournader",
        "email": "roozbeh@google.com",
        "time": "Wed Jan 11 15:52:08 2017 -0800"
      },
      "message": "Treat Latin American locales specially\n\nDue to legacy reasons, Android translations of European Spanish were\nkept under \u0027es\u0027, while Latin American Spanish translations were kept\nunder \u0027es-US\u0027. The combination of this, and the new locale\npreference rules in Nougat, resulted in \u0027es\u0027 winning over \u0027es-US\u0027 for\nall Latin American locales, since \u0027es\u0027 was a direct ancestor, while\n\u0027es-US\u0027 was just a fallback.\n\nThe changes in Nougat had assumed that app developers would put Latin\nAmerican Spanish translations under \u0027es-419\u0027, but that could create a\nbackward-compatibility problem under older Android versions that did\nnot support three-digit region codes properly.\n\nThis CL keeps the Nougat logic and its locale parent tree, but\nspecial-cases es-US and es-MX to be treated as equivalents of es-419\nin cases where they are present and es-419 is not.\n\nBug: 31545805\nBug: 34126460\nTest: unit tests are included\nChange-Id: Iab26f41294587ee044685a5a6560520c7cbb06f7\n"
    },
    {
      "commit": "96bf5985d5a360568832fd26b6d5b44236c9343e",
      "tree": "e4169954071c7ca56d38acc8891a44161c59b417",
      "parents": [
        "dfe8f5dc13f39b87ac6107c1a3b24db9b601597b"
      ],
      "author": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Wed Sep 28 16:15:30 2016 -0700"
      },
      "committer": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Wed Jan 11 15:30:30 2017 -0800"
      },
      "message": "Replace cutils/log.h and log/logger.h with android/log.h or log/log.h\n(part deux)\n\nTest: compile\nBug: 26552300\nBug: 31289077\nChange-Id: I7417936c4d3666608fccfe51a312c90ecefba2fb\n"
    },
    {
      "commit": "7ad1110ecd6a840fcd2895c62668828a1ca029c6",
      "tree": "f9f11b0849333b1bbcb37b76170787414c92ddbc",
      "parents": [
        "e2489c67e1f17938556a29197eeff9221caddd35"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Fri Oct 28 16:39:15 2016 -0700"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Wed Jan 11 13:30:57 2017 -0800"
      },
      "message": "New implementation of AssetManager/ResTable\n\nThe multiwindow model and Resources-per-activity\nmodel that came in N puts greater demands on AssetManagers.\nThey are created whenever window dimensions change, which\ncan be frequently. There is a need to be able to cheaply\ncreate a new AssetManager for each Activity, which shares\na lot of underlying state.\n\nIn order to make the creation of AssetManagers cheap,\nwe need a new implementation of the native AssetManager\nand ResTable to support immutable representations of\nAPKs. This new data structure/class is ApkAssets.\n\nApkAssets have the same functionality of an AssetManager, except\nthat they operate on a single APK, and they do not do any caching.\nOnce loaded, they are immutable.\n\nApkAssets will be exposed as a Java object, with its implementation in\nnative code. The existing Java StringBlock will be owned by ApkAssets,\nwhich means that Strings can be shared across AssetManagers.\n\nApkAssets can be cached by the ResourcesManager. Creating an AssetManager\nrequires only a list of ApkAssets and a configuration.\n\nAssetManager2 (named with the suffix \u00272\u0027 for now while transitioning\nto the new implementation) caches bags that are accessed.\n\nSince ApkAssets are expected to be kept around longer, they do more validation\nof the resource table, which cause slower load times. Measured on an angler-userdebug,\nloading the framework assets takes 11ms with ApkAssets, and 2ms with the old\nAssetManager implementation.\n\nThe tradeoff is that there does not need to be any security checks once an ApkAssets\nis loaded, and regular resource retrieval is faster. Measured on an angler-userdebug,\naccessing resource (android:string/ok) with many locales takes 18us with AssetManager2,\nand 19us with AssetManager (this is per resource, so these add up).\n\nTest: make libandroidfw_tests\nChange-Id: Id0e57ee828f17008891fe3741935a9be8830b01d\n"
    },
    {
      "commit": "4a07b95746fe794ec5411aad9f5334178fb641b4",
      "tree": "c6b8b18bc0cf1508dc7b0c894e8a695d4a8d76cc",
      "parents": [
        "59011d0f6f073a761eef165f2044e47e54b58ffb",
        "624ad836ec7f174369df30219099260b951b7ef4"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 11 21:19:55 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 11 21:20:02 2017 +0000"
      },
      "message": "Merge \"Fix Skia merge by fixing API mismatch.\""
    },
    {
      "commit": "ba5124b48bff2455c089e803ea6ffcc197a26c51",
      "tree": "5fd0c861ec8249de813d5c0f55b79df02006c97d",
      "parents": [
        "6b74aba3d8c224d66edb0ab164a0d07f8d951de3",
        "41282b7629714b397b43c81c8c25e9d15e2bb935"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 11 20:55:05 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 11 20:55:09 2017 +0000"
      },
      "message": "Merge \"Fix dirty Z prop\""
    },
    {
      "commit": "624ad836ec7f174369df30219099260b951b7ef4",
      "tree": "bb2d54949138b674b05397849e764e0a4fcc8804",
      "parents": [
        "772ff11cb5edc111447ff41bb72e050cbc9b1d59"
      ],
      "author": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Wed Jan 11 11:09:48 2017 -0500"
      },
      "committer": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Wed Jan 11 14:57:34 2017 -0500"
      },
      "message": "Fix Skia merge by fixing API mismatch.\n\nTest: compile\nChange-Id: Ie524af03fd3c85cceac13abdcdd9af8ef6ca6bb9\n"
    },
    {
      "commit": "1a6acdbb86c3e72bdb0a4dcab3bda58cbc4ea34c",
      "tree": "1b243f434a14a25dc0eb39097293c3f27b74a54a",
      "parents": [
        "3c6f28aa5968b1edb823495efa15e7358de5261e"
      ],
      "author": {
        "name": "Zak Cohen",
        "email": "zakcohen@google.com",
        "time": "Mon Dec 12 15:21:21 2016 -0800"
      },
      "committer": {
        "name": "Zak Cohen",
        "email": "zakcohen@google.com",
        "time": "Wed Jan 11 11:44:47 2017 -0800"
      },
      "message": "Introduce new UI_MODE_TYPE_VR_HEADSET and qualifier.\n\nBug: 30989383\nTest: Unit test for aapt2\nChange-Id: I66dc65af6327b94fed74538bee08cada0b8be4fa\n"
    },
    {
      "commit": "41282b7629714b397b43c81c8c25e9d15e2bb935",
      "tree": "098776dc3248ff92f43ea5ffb211c1aa7108be99",
      "parents": [
        "bede012069321f7e1a264ac3ed55f45f39102627"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed Jan 11 11:26:43 2017 -0800"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed Jan 11 11:26:48 2017 -0800"
      },
      "message": "Fix dirty Z prop\n\nTest: none\nChange-Id: I886d50e58d6f404c6d19860a3032ca1b2854e073\n"
    },
    {
      "commit": "6efc30e1b71862d3dc63235e4e482b9cd0e185ab",
      "tree": "225649a04d0591400a200b7a989449144bc7c1f8",
      "parents": [
        "fe0c0e05be16f59ea06a87ed9ba20fd0a8fac788",
        "45ec62ba72c5017fae7d8baab20bfb0d4c99c627"
      ],
      "author": {
        "name": "Greg Daniel",
        "email": "egdaniel@google.com",
        "time": "Wed Jan 11 19:01:49 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 11 19:01:52 2017 +0000"
      },
      "message": "Merge \"Add support for dummy draws for Vulkan webview and texture views.\""
    },
    {
      "commit": "63b18b3fda9e413047bc57c4023991ab897b6e5b",
      "tree": "8f5df1fd9427ac3dc3ab05fa7e1dfd540ac3d62f",
      "parents": [
        "b82e176b5580e76a2f336a292eb1b6947d091680",
        "8cd3edfa15cc9cdbffa935d19ab894426b08d174"
      ],
      "author": {
        "name": "Greg Daniel",
        "email": "egdaniel@google.com",
        "time": "Wed Jan 11 19:00:31 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 11 19:00:34 2017 +0000"
      },
      "message": "Merge \"Break Layer class into Gl and Vulkan subclasses\""
    },
    {
      "commit": "db15537e6e0d35c7ed3b1bef45e421760be70683",
      "tree": "a37853e5f3889f478cbcd204b46d1c8c640215f2",
      "parents": [
        "505d8262ab8702fea19c926bdff4d66bbbaa766a",
        "082a1721b5165420e11319b98eefaa35d0feb844"
      ],
      "author": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Wed Jan 11 08:30:03 2017 -0800"
      },
      "committer": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Wed Jan 11 08:30:17 2017 -0800"
      },
      "message": "resolve merge conflicts of 082a1721b516 to master\n\nTest: compile\nBug: 26552300\nBug: 31289077\nChange-Id: I17f178f425975c1c0dbd48091d25b101956d505e\n"
    },
    {
      "commit": "082a1721b5165420e11319b98eefaa35d0feb844",
      "tree": "bc3c1b7e76fb41a950cd988903496e761b5c1d66",
      "parents": [
        "46c39f6c3640dabc3e5eb5d37460f0b3d0622da6",
        "ef8ccc8510d2c66c4807f15962c3d53235af5fc5"
      ],
      "author": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Wed Jan 11 15:45:46 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jan 11 15:45:46 2017 +0000"
      },
      "message": "Merge \"Replace cutils/log.h and log/logger.h with log/log.h\" am: e7fcbcb991 am: 6143cbf1e5\nam: ef8ccc8510\n\nChange-Id: If6673f44c7d08960f3a0a86703cebf577bd21f1b\n"
    },
    {
      "commit": "ef8ccc8510d2c66c4807f15962c3d53235af5fc5",
      "tree": "eeed237443ea2350067ec9501fde2d07c65b2f39",
      "parents": [
        "d544a4c682232f5bd3ae5d6eb5a11c978ddcf6aa",
        "6143cbf1e5ab5e879044748c497e05b36ad4c36a"
      ],
      "author": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Wed Jan 11 15:40:24 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jan 11 15:40:24 2017 +0000"
      },
      "message": "Merge \"Replace cutils/log.h and log/logger.h with log/log.h\" am: e7fcbcb991\nam: 6143cbf1e5\n\nChange-Id: Id192d8dd973fe9e70acab72bae9856bc8a62ac75\n"
    },
    {
      "commit": "e7fcbcb9919e8f1c0fc5935b8a6aeb0b0dec9700",
      "tree": "5ead0dab24f15b6ae2c483d1eb2810477ae9c7f8",
      "parents": [
        "216303cdb60412525a716f4df22140b1a439a4a3",
        "52eb4e01a49fe2e94555c000de38bbcbbb13401b"
      ],
      "author": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Wed Jan 11 15:24:10 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 11 15:24:11 2017 +0000"
      },
      "message": "Merge \"Replace cutils/log.h and log/logger.h with log/log.h\""
    },
    {
      "commit": "a0a4828614edfd633ab86f04408e7f4e55b491dd",
      "tree": "e7cd850537d7ee795530e664484f24b5e7ee9171",
      "parents": [
        "3b6bcfb65d3a869ac36f5fea9a78820e1268470a"
      ],
      "author": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Sat Jan 07 15:33:38 2017 +0900"
      },
      "committer": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Wed Jan 11 17:57:59 2017 +0900"
      },
      "message": "Follow minikin::FontFamily constructor signature change.\n\nminikin::FontFamily no longer has addFont function, instead it accept\nvector of Fonts in its constructor. To follow this signature change,\nholding minikin::Font instance in native and build minikin::FontFamily\ninstance in FontFamily.freeze() method.\n\nTest: hwui test passed\nChange-Id: Id10ca97f6f6f5bbe4999c1ad2736423a204d6e87\n"
    },
    {
      "commit": "d645ac4d10cf4c987dfef10ed56676fc8f436a4f",
      "tree": "824aec6c388bbd815de571e34b031fd84dcf59b4",
      "parents": [
        "b11f148145e9174e560face0ed5bee1cad69666e",
        "68dce922af4f3611fc5e6bfaf5eaa76d5db262f8"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed Jan 11 01:41:03 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jan 11 01:41:03 2017 +0000"
      },
      "message": "Merge \"Fix a use-of-uninitialized-value warning.\" am: 95ef9ec5b1 am: 44e14d0d2b am: 5f3ed9b7de\nam: 68dce922af\n\nChange-Id: Id1c35f315618663a6139c2729871cdfd02fe451f\n"
    },
    {
      "commit": "68dce922af4f3611fc5e6bfaf5eaa76d5db262f8",
      "tree": "9b77364894aa032d1f601949a5c9e8edb999ed34",
      "parents": [
        "11765b3fcc776ca93eb9cf7b024a7c09b7d7555c",
        "5f3ed9b7dec34ea9cdced3b16ee7b7094f8b09aa"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed Jan 11 01:30:59 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jan 11 01:30:59 2017 +0000"
      },
      "message": "Merge \"Fix a use-of-uninitialized-value warning.\" am: 95ef9ec5b1 am: 44e14d0d2b\nam: 5f3ed9b7de\n\nChange-Id: I6e35191f4ddda2590eae4cfac9af5c781d0e493b\n"
    },
    {
      "commit": "5f3ed9b7dec34ea9cdced3b16ee7b7094f8b09aa",
      "tree": "47220bfde379a4c7278a1f534a5702f0aecdd9c0",
      "parents": [
        "1d67d022fb5f49ce88bae26d1175c1f391b025d6",
        "44e14d0d2b90c92bcd82badd354bace522d5f8f4"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed Jan 11 01:21:30 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jan 11 01:21:30 2017 +0000"
      },
      "message": "Merge \"Fix a use-of-uninitialized-value warning.\" am: 95ef9ec5b1\nam: 44e14d0d2b\n\nChange-Id: I5e5243c75f446d46bb81252583cfa46e47d60309\n"
    },
    {
      "commit": "95ef9ec5b11d7e00281e35af94461ad9eb5fcab6",
      "tree": "d7de4e30a445770d474a34ffca2d19556b8b8f84",
      "parents": [
        "0b74a1dabb4829e277fd64fe3d1893fe22f02a18",
        "a483173c78fb453b73308a9b44ce54fb3878ed0e"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed Jan 11 00:57:34 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 11 00:57:35 2017 +0000"
      },
      "message": "Merge \"Fix a use-of-uninitialized-value warning.\""
    },
    {
      "commit": "a483173c78fb453b73308a9b44ce54fb3878ed0e",
      "tree": "f7a669a151ddaa68c77c990ccd6f8bc4244fbbb5",
      "parents": [
        "55dc66dde47a3a84c387352d88fbda429dd3d077"
      ],
      "author": {
        "name": "George Burgess IV",
        "email": "gbiv@google.com",
        "time": "Tue Jan 10 15:33:57 2017 -0800"
      },
      "committer": {
        "name": "George Burgess IV",
        "email": "gbiv@google.com",
        "time": "Tue Jan 10 15:33:57 2017 -0800"
      },
      "message": "Fix a use-of-uninitialized-value warning.\n\nThis warning was generated by the static analyzer:\nwarning: The left expression of the compound assignment is an\nuninitialized value. The computed value will also be garbage\n        *mDirtyMask |\u003d animator-\u003edirtyMask();\n\nThis can be fixed by initializing dirtyMask before using it in\nAnimateFunctor.\n\nBug: None\nTest: Static analyzer no longer complains about this.\nChange-Id: I892749079cf93a012f1bed059a3f0c8bbaed9d7e\n"
    },
    {
      "commit": "45ec62ba72c5017fae7d8baab20bfb0d4c99c627",
      "tree": "ad2314dad22323b16837f7ec219e1bdef3e2290c",
      "parents": [
        "8cd3edfa15cc9cdbffa935d19ab894426b08d174"
      ],
      "author": {
        "name": "Greg Daniel",
        "email": "egdaniel@google.com",
        "time": "Wed Jan 04 14:27:00 2017 -0500"
      },
      "committer": {
        "name": "Greg Daniel",
        "email": "egdaniel@google.com",
        "time": "Tue Jan 10 15:54:14 2017 -0500"
      },
      "message": "Add support for dummy draws for Vulkan webview and texture views.\n\nTest: manual testing\nChange-Id: Iaec8c3a34367673c281665ff6c6e97d1ce532265\n"
    },
    {
      "commit": "8cd3edfa15cc9cdbffa935d19ab894426b08d174",
      "tree": "289ec13531b91be5adf6306d8d70434bc756b2c1",
      "parents": [
        "d14cafc27255e0ed44665a0975a57c487b841ab1"
      ],
      "author": {
        "name": "Greg Daniel",
        "email": "egdaniel@google.com",
        "time": "Mon Jan 09 14:15:41 2017 -0500"
      },
      "committer": {
        "name": "Greg Daniel",
        "email": "egdaniel@google.com",
        "time": "Tue Jan 10 15:05:07 2017 -0500"
      },
      "message": "Break Layer class into Gl and Vulkan subclasses\n\nTest: manual testing\nChange-Id: Ibd2beed39de3ac6da7448e96496253cfe427dfbb\n"
    },
    {
      "commit": "cfc07d4b2be8c93204b4f224ca3bc44f6329bee2",
      "tree": "44698e1830f9bf36bbc5f20d10c63a6ee53317f5",
      "parents": [
        "4892f7d98f09edf7fcbfaa9b2f81618416b4565a",
        "43818c45a46480504f1a96ba60d7d58981e16c49"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue Jan 10 00:49:35 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jan 10 00:49:35 2017 +0000"
      },
      "message": "Merge \"Support EGL_KHR_partial_update without EGL_EXT_buffer_age\" am: f66126c828 am: 620d4c24de\nam: 43818c45a4\n\nChange-Id: Ia093688d4c9fc2e923daf5da6d5b6d67c6b56975\n"
    },
    {
      "commit": "43818c45a46480504f1a96ba60d7d58981e16c49",
      "tree": "c408b3522e6747ea89f746554c67bf183bf88a2d",
      "parents": [
        "4962a3829f8c39f0eac702f4d9b54ae3ae6642dc",
        "620d4c24de3da563c886856a8fa1406e0970a1ac"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue Jan 10 00:44:29 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jan 10 00:44:29 2017 +0000"
      },
      "message": "Merge \"Support EGL_KHR_partial_update without EGL_EXT_buffer_age\" am: f66126c828\nam: 620d4c24de\n\nChange-Id: I4fdb8ecba5a08f712871d3b99e0286c61f6d0806\n"
    },
    {
      "commit": "1deac99c557d4be757c266e066a0d614c1959474",
      "tree": "0d09d18cfc736bc705908101ea36f4b3704fa9ca",
      "parents": [
        "ccda81e58f8456a19b02573d6787f11729904a7b"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue Sep 27 14:45:28 2016 -0700"
      },
      "committer": {
        "name": "Jesse Hall",
        "email": "jessehall@google.com",
        "time": "Mon Jan 09 14:35:37 2017 -0800"
      },
      "message": "Support EGL_KHR_partial_update without EGL_EXT_buffer_age\n\nBug: 31334677\nTest: manual \u0026\u0026 hwuimacro --onscreen partialdamage\n\nChange-Id: I9b346b4053ec12c8a78a143a4dc0e708c44888a2\n"
    },
    {
      "commit": "52eb4e01a49fe2e94555c000de38bbcbbb13401b",
      "tree": "a8bcb3cefc94c7366632782f10bfe03880bf189c",
      "parents": [
        "ccda81e58f8456a19b02573d6787f11729904a7b"
      ],
      "author": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Wed Sep 28 16:15:30 2016 -0700"
      },
      "committer": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Mon Jan 09 14:31:34 2017 -0800"
      },
      "message": "Replace cutils/log.h and log/logger.h with log/log.h\n\nTest: compile\nBug: 26552300\nBug: 31289077\nChange-Id: I578b15b48f0fc2807a92abbc69a377c3d2191496\n"
    },
    {
      "commit": "c543713babea6bcb83401726f70a3f25344131fe",
      "tree": "c69d65c5bb1c4038a5c7d6aae7960c09b172deb2",
      "parents": [
        "bede012069321f7e1a264ac3ed55f45f39102627",
        "b29b16e5423fe7deab8ebf3da512c6d2192f19b5"
      ],
      "author": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Mon Jan 09 18:01:47 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jan 09 18:01:50 2017 +0000"
      },
      "message": "Merge \"Remove clipRegion from the public API.\""
    },
    {
      "commit": "1198e13594e850ba3e3fe92bd08513cb0eb02248",
      "tree": "4436089f59039e8eb89a62b892edc695e88e3a61",
      "parents": [
        "09e3c9b78cf6670e26fcc23d3f9ea59ca5e741d0",
        "06d3e8fec7e2b29f99d755bee849023d88957953"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Jan 07 02:20:14 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Jan 07 02:20:17 2017 +0000"
      },
      "message": "Merge \"libandroidfw: Revert null check in ApplyStyle\""
    },
    {
      "commit": "06d3e8fec7e2b29f99d755bee849023d88957953",
      "tree": "328055c7a9632e9660e836d4dfd0cfcc0450700e",
      "parents": [
        "0a454c39cb5bc03cd646546aa3b8baaed1962178"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Thu Jan 05 17:03:55 2017 -0800"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Fri Jan 06 16:51:48 2017 -0800"
      },
      "message": "libandroidfw: Revert null check in ApplyStyle\n\nThe out parameter `out_indices` is expected to be non-null\nand so the extra null check adds a cost to performance\nand opens the door to misusing the API by not supplying\n`out_indices`.\n\nTest: make libandroidfw_tests\nChange-Id: Ie66fd837c5e24ec2838156e7b67f54c15cd27933\n"
    }
  ],
  "next": "770e0b500793bce45442b5f403913d14017df4e8"
}
