)]}'
{
  "log": [
    {
      "commit": "777138625627f6452980549dbf46026d8fbdcc30",
      "tree": "ccdd3de92af14086566c113107c5e1872336973f",
      "parents": [
        "7ec96c4f7979322fac84630e6a42351de70ca4d3",
        "3d2135931cb05db77490e7f151d5badaa9337fa3"
      ],
      "author": {
        "name": "Matt Sarett",
        "email": "msarett@google.com",
        "time": "Tue Mar 28 17:37:05 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 28 17:37:13 2017 +0000"
      },
      "message": "Merge \"Add SkiaBehaviorTest for SkBlurDrawLooper\""
    },
    {
      "commit": "cd56408bd946e3f4d995c85d78b3dab111a9cabb",
      "tree": "0fda9a2d3d7c91c9fabeaaae37ec5ecb6cd19c6e",
      "parents": [
        "d9f5d75d468bbe79487a5a093d3d90281f81d0d1",
        "23c38a9ed9c28a9fda438e7d30532aad7a3844f7"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Mar 28 13:35:50 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 28 13:35:53 2017 +0000"
      },
      "message": "Merge \"Update VectorDrawables cache at frame start\""
    },
    {
      "commit": "2c6ac0ead0b1e35333011e20bbc43d22d9906981",
      "tree": "362a0a24200a10403d535ba4acf1490801528255",
      "parents": [
        "6e42a1d0ce86dda0b69dcfeed9c1804db1531680",
        "2f944482ece3aba2068ac71cd9c5067e4bc8424c"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Mar 28 00:41:08 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 28 00:41:11 2017 +0000"
      },
      "message": "Merge \"Add missing assert that task isn\u0027t queued\""
    },
    {
      "commit": "55bea5e30808856eb039d74e2fa7e06ee0dd05e7",
      "tree": "c6c474df1147a89443c5f68911a21876f819bf57",
      "parents": [
        "52b716df852d1190b282f0393c24803ffd56059f",
        "1b7184f8d206505804042833a3825a3b8a9649dc"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Mar 27 23:30:18 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 27 23:30:22 2017 +0000"
      },
      "message": "Merge \"Add a few asserts for possible corruption cases\""
    },
    {
      "commit": "23c38a9ed9c28a9fda438e7d30532aad7a3844f7",
      "tree": "50c757670e0691327a730a8fc457f1cd7135594b",
      "parents": [
        "4110be3a153daed2d62a549a36e9f92986addf29"
      ],
      "author": {
        "name": "Stan Iliev",
        "email": "stani@google.com",
        "time": "Thu Mar 23 00:12:50 2017 -0400"
      },
      "committer": {
        "name": "Stan Iliev",
        "email": "stani@google.com",
        "time": "Mon Mar 27 18:43:34 2017 -0400"
      },
      "message": "Update VectorDrawables cache at frame start\n\nDraw VectorDrawables in GPU backed surface. Render VD cache\nat the beginning of the frame to avoid context switching.\n\nTest: CTS graphics tests pass.\nChange-Id: Ia14e0ec4049c3fa87f03547fbda44043bf8dd793\n"
    },
    {
      "commit": "1b7184f8d206505804042833a3825a3b8a9649dc",
      "tree": "4c14412bcccfe7b4da3c467f4ce32ac7266aa812",
      "parents": [
        "48a153e57032fccf9ea7dac728d60738c3c848d2"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Mar 27 14:47:46 2017 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Mar 27 14:47:46 2017 -0700"
      },
      "message": "Add a few asserts for possible corruption cases\n\nBug: 36502346\nTest: builds \u0026 boots\nChange-Id: Id96a26a30e4a8c6f51a68bf07cfe6bd6d07c244e\n"
    },
    {
      "commit": "2f944482ece3aba2068ac71cd9c5067e4bc8424c",
      "tree": "1a603ac13c0fadc45b630348de25691ca6f7bd67",
      "parents": [
        "48a153e57032fccf9ea7dac728d60738c3c848d2"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Mar 27 14:34:28 2017 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Mar 27 21:38:09 2017 +0000"
      },
      "message": "Add missing assert that task isn\u0027t queued\n\nProbably won\u0027t fix anything but this assert is in queue()\nbut not queueAtFront() and inserting a task twice is Really Bad.\n\nBug: 36139852\nTest:  ¯\\_(ツ)_/¯\nChange-Id: Ida0f829eecfdd46c17c36b816528c49d12b7cf29\n"
    },
    {
      "commit": "81ff6ee47a9373430e4c8f30bbe5129ca48643bd",
      "tree": "a8a617c42953e0cd0d7c6a16be117257881e7d5e",
      "parents": [
        "b03314dad82dbfa19906947df20699e4c8b2fc83",
        "48f9bb6254324006a4595f4576c28498a4aaf5d2"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Mar 27 18:36:23 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 27 18:36:28 2017 +0000"
      },
      "message": "Merge \"Register functor draw correctly\""
    },
    {
      "commit": "48f9bb6254324006a4595f4576c28498a4aaf5d2",
      "tree": "8515c14731d2ade67f5b8961e3d2af906b33186e",
      "parents": [
        "1087bd9f350fe80a584b4685f0abd149d49c86ac"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Fri Mar 24 17:00:39 2017 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Fri Mar 24 17:12:19 2017 -0700"
      },
      "message": "Register functor draw correctly\n\nBug: 36602041\nTest: existing tests still pass\n\nChange-Id: I9f385da89e9e49e562031578a02f13a68697e0df\n"
    },
    {
      "commit": "bbf038bc5ee8adac6c52fd2fd4c66bbdaba89a43",
      "tree": "f8190fd5603f7c91e9bcea494e7170f29382d5b6",
      "parents": [
        "27a01ef0632fc31d558d6cb91c98e6eb8457eb33",
        "cc5a731fd725a4687625c93cf8490b63ce99884f"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Mar 24 22:25:16 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 24 22:25:20 2017 +0000"
      },
      "message": "Merge \"Remove \"Allow persistent changes to the vendor overlay theme\"\""
    },
    {
      "commit": "3d2135931cb05db77490e7f151d5badaa9337fa3",
      "tree": "c96262e451a485ede8d35239d250b2e690b48bb8",
      "parents": [
        "1087bd9f350fe80a584b4685f0abd149d49c86ac"
      ],
      "author": {
        "name": "Matt Sarett",
        "email": "msarett@google.com",
        "time": "Fri Mar 24 16:18:42 2017 -0400"
      },
      "committer": {
        "name": "Matt Sarett",
        "email": "msarett@google.com",
        "time": "Fri Mar 24 16:18:55 2017 -0400"
      },
      "message": "Add SkiaBehaviorTest for SkBlurDrawLooper\n\nTest: This is a test.\n\nChange-Id: Ib14087168300eea97b9188f134b1cea6c35b3858\n"
    },
    {
      "commit": "3c01a07fff19c5166274de5960935875ea89e455",
      "tree": "4c2e0f07efa9f06774cff5ae41e6ba397602e887",
      "parents": [
        "c439456ac212ec5201624bd7dd57814726650814"
      ],
      "author": {
        "name": "Robert Phillips",
        "email": "robertphillips@google.com",
        "time": "Thu Mar 23 11:24:40 2017 -0400"
      },
      "committer": {
        "name": "Robert Phillips",
        "email": "robertphillips@google.com",
        "time": "Thu Mar 23 12:29:39 2017 -0400"
      },
      "message": "Update RenderNodeDrawableTests to new onNewImageSnapshot API\nTest: does it compiles\n\nChange-Id: I55e3d7e2e59bfde88357fd455fe567d07c8a26b7\n"
    },
    {
      "commit": "cc5a731fd725a4687625c93cf8490b63ce99884f",
      "tree": "ec19afff7b21bc39f932ae59a6c494c5b66e8c62",
      "parents": [
        "ad63bafad002ea9b88091a9760a4760fb53943d7"
      ],
      "author": {
        "name": "Jason Monk",
        "email": "jmonk@google.com",
        "time": "Thu Mar 23 11:13:22 2017 -0400"
      },
      "committer": {
        "name": "Jason Monk",
        "email": "jmonk@google.com",
        "time": "Thu Mar 23 11:25:59 2017 -0400"
      },
      "message": "Remove \"Allow persistent changes to the vendor overlay theme\"\n\nThis reverts commit 2dc804be11444565e3d1d151c2a693db3ade94c0.\nIt also removes the related calls from UiModeManager.\n\nFixes: 32721178\nTest: make \u0026 flash\nChange-Id: Id371bccec611155cc6910e46b3277c3d27fc1c79\n"
    },
    {
      "commit": "442c8226aafdad13d535cb831639253603caa796",
      "tree": "926d42d081cdc2a9eb40fe19b56b62c57265f9d7",
      "parents": [
        "86e4497982e5f4d356e12b2ecf4e454fba7272c7",
        "2b53748a2139ff069fd6cff16e145fc784fdc5b3"
      ],
      "author": {
        "name": "Yunlian Jiang",
        "email": "yunlian@google.com",
        "time": "Wed Mar 22 00:36:30 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Mar 22 00:36:30 2017 +0000"
      },
      "message": "Merge \"Fix warning: Potential leak of memory pointed to by \u0027set\u0027\" am: 58ba53bd53 am: 0889a8a070\nam: 2b53748a21\n\nChange-Id: Icec70d3e3efef0eea9c117911821dfd05bcb2ced\n"
    },
    {
      "commit": "0889a8a070a3efca70b0284b8df7145e82c7cc4f",
      "tree": "2b95cec99ac0dc2704af1723fc3e3f16848d9855",
      "parents": [
        "4ff81206e05880943dc34af4b4e23f644f06bde3",
        "58ba53bd53d08c8d23f8fa338aa4c4bb6bc86c91"
      ],
      "author": {
        "name": "Yunlian Jiang",
        "email": "yunlian@google.com",
        "time": "Wed Mar 22 00:21:57 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Mar 22 00:21:57 2017 +0000"
      },
      "message": "Merge \"Fix warning: Potential leak of memory pointed to by \u0027set\u0027\"\nam: 58ba53bd53\n\nChange-Id: I7186dc35fb7f4a3c226e35447ce9c748164e7bf8\n"
    },
    {
      "commit": "58ba53bd53d08c8d23f8fa338aa4c4bb6bc86c91",
      "tree": "a117080b7ca7f2c58ac5a4e6f6d666099d87aa7e",
      "parents": [
        "c6c19bd6c0f52c90a4571590f28b246d4258076f",
        "a7645bd9478afa463e9708fbc0b91ec51b3f4bf3"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Mar 22 00:17:32 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Mar 22 00:17:33 2017 +0000"
      },
      "message": "Merge \"Fix warning: Potential leak of memory pointed to by \u0027set\u0027\""
    },
    {
      "commit": "d9770c3c6c5b6a4fc7fa8774cf041e1ed1623119",
      "tree": "46e38e8eda245fd69c3f1ebf1c2da7f82d97425a",
      "parents": [
        "5c9fb3c5271b3e602d0d018a5bcfd3d6dbb98d9c"
      ],
      "author": {
        "name": "Robert Phillips",
        "email": "robertphillips@google.com",
        "time": "Mon Mar 20 13:44:46 2017 -0400"
      },
      "committer": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Tue Mar 21 15:33:33 2017 +0000"
      },
      "message": "Update SkiaPipelineTests.cpp to use new onNewImageSnapshot signature\nTest: code compiles \u0026 test continues to succeed\n\nhttps://skia-review.googlesource.com/c/9882/ (Remove budgeted parameter \nfrom SkSurface::makeImageSnapshot (take 2)) seems to have stuck so this \nshould be safe to land.\n\nChange-Id: I9e6fdcc8debe7964e9522f7acd8829b54bc90986\n"
    },
    {
      "commit": "2c64d5739b444b8ffe6283d8c703ad920fad7a95",
      "tree": "576f6070039a93797e5a2a641d5d6be8851d439d",
      "parents": [
        "a9031fe3b563ff529f5dface2ccd65695c655317",
        "cc29a5dde1ef0a3cf0fcec10eb9d37d9e8fa3afb"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Mar 21 13:29:16 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 21 13:29:24 2017 +0000"
      },
      "message": "Merge \"Modify VectorDrawable to scale path through canvas matrix\""
    },
    {
      "commit": "1f4497c9c0cc0524765a0a48bb87040f8e15506c",
      "tree": "6c86564e9eda522fe5327749b8412bc808763199",
      "parents": [
        "60ec4506f71650c7283efe899c05a3270f3404b0",
        "ed69ce84bdfa5ba82008a9b66485ef71c953657a"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Tue Mar 21 03:54:10 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 21 03:54:16 2017 +0000"
      },
      "message": "Merge changes I8c710af6,Iedf30212\n\n* changes:\n  libandroidfw: Fix mass logspam of ResourceTypes warnings\n  NativeActivity JNI: Retain VM reference to AssetManager\n"
    },
    {
      "commit": "ed69ce84bdfa5ba82008a9b66485ef71c953657a",
      "tree": "a255aa92ea253c3cc2ec575279d4e28adfca8c2a",
      "parents": [
        "5c690d55dd2d0286db1ba3331a64769c07636ff8"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Mon Mar 20 10:55:01 2017 -0700"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Mon Mar 20 14:51:13 2017 -0700"
      },
      "message": "libandroidfw: Fix mass logspam of ResourceTypes warnings\n\nAn overlay was incorrectly leaking its own resources into the\nframework resource package, which caused warnings for every app\nthat tried to access framework resources (all of them).\n\nThis change skips including any resources that are not overlaying\nanything (not present in IDMAP).\n\nBug: 36256974\nTest: make libandroidfw_tests\nChange-Id: I8c710af6849bb848938825aacca02799ee96c003\n"
    },
    {
      "commit": "da3ab1a2dd2e3fa84cef277d8c7ff9e43e15ba23",
      "tree": "b418caf82c89b7a8c8400127e0f140a077864dc3",
      "parents": [
        "12b8ff31a2c7b5416afd258e6f55f0b48cd22cd5",
        "871cd2dd6074544bd41a84ff38255d81a392546a"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Mar 20 19:23:04 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 20 19:23:08 2017 +0000"
      },
      "message": "Merge \"use SkVertices::Builder in drawBitmapLattice override new virtual onDrawVerticesObject\""
    },
    {
      "commit": "cc29a5dde1ef0a3cf0fcec10eb9d37d9e8fa3afb",
      "tree": "3212df1c8e0fad9cd218829804b498ab51f5d27f",
      "parents": [
        "f87e2344880fde52ec0b619c0bb91fdfb29c0fc4"
      ],
      "author": {
        "name": "Stan Iliev",
        "email": "stani@google.com",
        "time": "Wed Mar 15 16:37:10 2017 -0400"
      },
      "committer": {
        "name": "Stan Iliev",
        "email": "stani@google.com",
        "time": "Mon Mar 20 11:49:51 2017 -0400"
      },
      "message": "Modify VectorDrawable to scale path through canvas matrix\n\nApply the path matrix to the canvas instead of creating a new path.\nDelete logic that scales the stroke, because this is done through\nthe matrix as well. Merge/delete some functions.\n\nBug: 36392701\nTest: CTS graphics tests pass with minor changes in 6 golden images.\nQuick settings and settings app drawables are OK. Vector icon app\ndraws identical paths.\nChange-Id: If623bc0a535fad95a2839f79bd997c016bcd9d4d\n"
    },
    {
      "commit": "95502300efffd29686f2c9bc4cc1b12edd323a1c",
      "tree": "41831f9bc9f6a519ec71215b1938f83c1dafed83",
      "parents": [
        "10df3fe76fc2311049bb748b17570f08ceb0553c",
        "3aeda5c5c47ae29197e8b8b665749cb6cb449e19"
      ],
      "author": {
        "name": "Ben Wagner",
        "email": "bungeman@google.com",
        "time": "Mon Mar 20 14:17:48 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 20 14:17:56 2017 +0000"
      },
      "message": "Merge \"Use access directly instead of sk_exists.\""
    },
    {
      "commit": "871cd2dd6074544bd41a84ff38255d81a392546a",
      "tree": "fa234148087908607ddd7cb22f57df7c57d9eb71",
      "parents": [
        "96f6a1a7d60147eb51db5e18aa52b7d084b9f64e"
      ],
      "author": {
        "name": "Mike Reed",
        "email": "reed@google.com",
        "time": "Fri Mar 17 10:15:52 2017 -0400"
      },
      "committer": {
        "name": "Mike Reed",
        "email": "reed@google.com",
        "time": "Mon Mar 20 08:40:12 2017 -0400"
      },
      "message": "use SkVertices::Builder in drawBitmapLattice\noverride new virtual onDrawVerticesObject\n\nTest:  CtsGraphicsTestCases\n\nChange-Id: I38e3ee0aa2a1ee9c11474c2c5d648ee5fca20d78\n"
    },
    {
      "commit": "10eb1455b9047084261442392f00235ec023eec2",
      "tree": "6b6254e6a2285d00e9a9d91e3ab193f08c88a92d",
      "parents": [
        "cdf3dc290b131986794d1909d9a58e2edf3da64e",
        "0e25d9ae776053d9186200f2f698faea45313cb6"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Fri Mar 17 23:19:04 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 17 23:19:13 2017 +0000"
      },
      "message": "Merge changes from topic \u0027configForSplit\u0027\n\n* changes:\n  libandroidfw: Search all packages for an identifier\n  AAPT2: Finish support for feature splits\n  Add support for configForSplit\n"
    },
    {
      "commit": "3aeda5c5c47ae29197e8b8b665749cb6cb449e19",
      "tree": "484ebb22d38340ac6f31604418884f202841d7ee",
      "parents": [
        "13a8b797552d80b6d8bf6a210dcf3b89ff504a16"
      ],
      "author": {
        "name": "Ben Wagner",
        "email": "bungeman@google.com",
        "time": "Fri Mar 17 17:22:01 2017 -0400"
      },
      "committer": {
        "name": "Ben Wagner",
        "email": "bungeman@google.com",
        "time": "Fri Mar 17 17:22:01 2017 -0400"
      },
      "message": "Use access directly instead of sk_exists.\n\nSkia would like to move SkOSFile and make it private spi. This appears\nto be the only place SkOSFile is used outside Skia, and using access\nhere directly is more apropriate.\n\nTest: Simple inline refactor, built and ran. Changes test code only.\nChange-Id: Ib76c180bb3bccc54c20dcadc842837e3e8270929\n"
    },
    {
      "commit": "08153e655afbc5ba010f04077fa282e23abcd5fd",
      "tree": "d84b34fe45c5c54cd9c479c99b652eb6824124ba",
      "parents": [
        "ffe0bbbf604583e092d340e898875b10feeabfc4",
        "cd2eb91c40e71b278585e1fb099db614dab94655"
      ],
      "author": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Fri Mar 17 00:41:12 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 17 00:41:16 2017 +0000"
      },
      "message": "Merge \"Remove usage of deprecated makeImageSnapshot parameter Test: Does it compile?\""
    },
    {
      "commit": "0e25d9ae776053d9186200f2f698faea45313cb6",
      "tree": "30083398e936182005dd624b1ea0171b18840dc1",
      "parents": [
        "b0c47ef8779e445865e63355ab66265461e1f2a3"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Fri Mar 10 15:14:27 2017 -0800"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Thu Mar 16 15:45:16 2017 -0700"
      },
      "message": "libandroidfw: Search all packages for an identifier\n\nIn order to allow multiple packages with the same package name, but\ndifferent package ID, we need to keep searching packages until the\nresource is found.\n\nBug: 30999713\nTest: make libandroidfw_tests\nChange-Id: If4540e12731ca18a18e9e550a9bf248606a586c5\n"
    },
    {
      "commit": "f596ba9375d1c5b70df7d6b8d3ac8a8b1a6fceaf",
      "tree": "dbc0a690564236282a263860926f268a0091a8c8",
      "parents": [
        "2257285aef5e5b8d43567a40ef7c813c1ec344ad",
        "6183c97e5f317ad52ad16fe50e40129e2c7b2150"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Mar 16 21:15:12 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 16 21:15:15 2017 +0000"
      },
      "message": "Merge \"Bowing my head in shame, going back to gamma interpolated gradients\""
    },
    {
      "commit": "6183c97e5f317ad52ad16fe50e40129e2c7b2150",
      "tree": "3b0d5ed72a57fa5d10567aff1ecb5174b7b4340b",
      "parents": [
        "0d86d7ebc2b83f0bdd28bb99e57289215947f2e0"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Thu Mar 16 12:24:55 2017 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Thu Mar 16 12:29:03 2017 -0700"
      },
      "message": "Bowing my head in shame, going back to gamma interpolated gradients\n\nFrankengradients (linearly interpolated RGB, gamma interpolated alpha) look\nfantastic but unfortunately create sligh compatibility issues. For instance,\na gradient from 0xffea1030 to 0x00ea1030 (opaque to alpha, with a single\ncolor) blended on top of 0xff101010 would not look the same as a single\nopaque gradient from 0xffea1030 to 0xff101010. The difference is hardly\nnoticeable on simple gradients but it could cause confusion amongst app\ndevelopers. Their life is hard enough as it is, let\u0027s be good to them.\n\nMy crusade against the gamma world is not over and one day I shall\nbe the victor. I am patience.\n\nBug: 35485208\nTest: UiRendering.ShaderTests, UiRendering.GradientTests, manual testing\nChange-Id: I8204e60cdf0a6b12dfe22638d30ca9622687000e\n"
    },
    {
      "commit": "cd2eb91c40e71b278585e1fb099db614dab94655",
      "tree": "1e1429b711e4c64f4e6bcf1dd47e549e334e3962",
      "parents": [
        "0730328885aeb56390f7952be27af6e9ce5b9e2c"
      ],
      "author": {
        "name": "Robert Phillips",
        "email": "robertphillips@google.com",
        "time": "Thu Mar 16 14:42:00 2017 -0400"
      },
      "committer": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Thu Mar 16 19:13:39 2017 +0000"
      },
      "message": "Remove usage of deprecated makeImageSnapshot parameter\nTest: Does it compile?\n\nChange-Id: Ia51ad621daa3409f65b2f3e4d5691891271918a2\n"
    },
    {
      "commit": "9e8f05f77d53020fe1c506778476e8039cd603c8",
      "tree": "519c36588524b548680f6e1fa107dfbfef3129c5",
      "parents": [
        "587b60282e4d9f9cb4bd02df0bb13e69d098b0db",
        "0d86d7ebc2b83f0bdd28bb99e57289215947f2e0"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Mar 16 17:41:40 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 16 17:41:43 2017 +0000"
      },
      "message": "Merge \"Improve dithering of alpha gradients\""
    },
    {
      "commit": "0d86d7ebc2b83f0bdd28bb99e57289215947f2e0",
      "tree": "82ec8c3a46ab66d222dba295b60ed2b57a5c1a46",
      "parents": [
        "1176f7b2b097a25db3b0150e92e60b446a9952c9"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Wed Mar 15 20:38:11 2017 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Wed Mar 15 20:38:11 2017 -0700"
      },
      "message": "Improve dithering of alpha gradients\n\nBug: 32984164\nTest: CtsUiRenderingTestCases\nChange-Id: Ic728725845befd3c52cc7b043d5c6f8e33fcfcd2\n"
    },
    {
      "commit": "26fddcd74252bdda95dd7c3f819353e79c622012",
      "tree": "767a4bb83b872155040d8f507b03b8d1cb16df1b",
      "parents": [
        "5fff20cac1da9a6105673fb1e4fc49e2e3f269e9"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Mar 15 14:17:22 2017 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Mar 15 14:19:40 2017 -0700"
      },
      "message": "Get rid of LinearTransform\n\nA copy of LinearTransform is moved here.\n\nThis reverts commit b80f086f69a4bc2e51d1f94ae58d7ba6b20514c4.\n\nTest: compile/run\nBug: treble cleanup\nChange-Id: I435cac1f57ded10d434e4354985ad1a1bd3841f3\n"
    },
    {
      "commit": "402a384ac83338b5ec4c04dde3c9ba969de51c0f",
      "tree": "6cec60f924626d4690b7148d7f8284f3f11987c0",
      "parents": [
        "3ff3dde601f9cec0e4ee72265e4e6ac22fd6d1dc",
        "51218e80f70601193e43d90aaf1599a7f6d11062"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Mar 15 17:34:16 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 15 17:34:21 2017 +0000"
      },
      "message": "Merge \"Pass FontCollection to doLayout\u0027s argument instead of ctor\""
    },
    {
      "commit": "51218e80f70601193e43d90aaf1599a7f6d11062",
      "tree": "901c4d2cf6dc02af36eedfe9268349d935c01146",
      "parents": [
        "64e93531b0b2db10a581e30d6e7e758d98950151"
      ],
      "author": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Tue Mar 14 15:45:29 2017 -0700"
      },
      "committer": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Tue Mar 14 16:56:10 2017 -0700"
      },
      "message": "Pass FontCollection to doLayout\u0027s argument instead of ctor\n\nTest: minikin_unit_tests\nTest: minikin_stress_tests\nBug: 36223724\nChange-Id: I55aca62eab4df0c138fec764d616984b50bd73f1\n"
    },
    {
      "commit": "95e8afbb5e1ff795f7601eea916b299943f4c429",
      "tree": "9a366da6c54272d5fde09bbb87b39641bd4a7df6",
      "parents": [
        "0b404b49a036c88a419afd64434846651698f555",
        "4f641d1e4586b027969052cc0ad6b65c1158e72e"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue Mar 14 23:35:23 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 14 23:35:29 2017 +0000"
      },
      "message": "Merge \"Revert \"Change behavior of setBitmap to cleanly reset the canvas - identity matrix - no save stack - wide-open clip\"\""
    },
    {
      "commit": "4f641d1e4586b027969052cc0ad6b65c1158e72e",
      "tree": "4da95a435728ba30d78fcd3f208f07cae47c7d91",
      "parents": [
        "269f989fbf198b17994baf9141c4640aeaf34b4e"
      ],
      "author": {
        "name": "Tony Mantler",
        "email": "nicoya@google.com",
        "time": "Tue Mar 14 22:36:14 2017 +0000"
      },
      "committer": {
        "name": "Tony Mantler",
        "email": "nicoya@google.com",
        "time": "Tue Mar 14 22:40:31 2017 +0000"
      },
      "message": "Revert \"Change behavior of setBitmap to cleanly reset the canvas - identity matrix - no save stack - wide-open clip\"\n\nhttps://buganizer.corp.google.com/issues/36218535\n\nThis reverts commit 269f989fbf198b17994baf9141c4640aeaf34b4e.\n\nChange-Id: Ib2473e4fce90c9abaa39eea2b77082ae26197b80\n"
    },
    {
      "commit": "b73ea72723aba116f0ad1701f755ab869c2b0aad",
      "tree": "7c4f8ea8790900556b47e942296f855baf5fdaea",
      "parents": [
        "1f5c182162b36c71494f269faffbe4b2ee483919",
        "b80f086f69a4bc2e51d1f94ae58d7ba6b20514c4"
      ],
      "author": {
        "name": "Ian Pedowitz",
        "email": "ijpedowitz@google.com",
        "time": "Tue Mar 14 08:15:38 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 14 08:15:42 2017 +0000"
      },
      "message": "Merge \"Revert \"remove LinearTransform from libutils\"\""
    },
    {
      "commit": "b80f086f69a4bc2e51d1f94ae58d7ba6b20514c4",
      "tree": "02a4e752a1aef463f0bcd3846f1f8f89c5b79d00",
      "parents": [
        "d4d6167f614a9001d9827a8634a26b5e9445a22c"
      ],
      "author": {
        "name": "Ian Pedowitz",
        "email": "ijpedowitz@google.com",
        "time": "Tue Mar 14 08:09:17 2017 +0000"
      },
      "committer": {
        "name": "Ian Pedowitz",
        "email": "ijpedowitz@google.com",
        "time": "Tue Mar 14 08:11:32 2017 +0000"
      },
      "message": "Revert \"remove LinearTransform from libutils\"\n\nThis reverts commit d4d6167f614a9001d9827a8634a26b5e9445a22c.\n\nBug: 36206160\nTest:  Fugu compiles, didn\u0027t before the revert\nChange-Id: I2b0d3a05546ee2605555a9aa7ae028f2baeaf439\n"
    },
    {
      "commit": "a813413a6e4bc4d0995f994f770bb909369684c3",
      "tree": "e2d337256e9f462a01977f498aac4490889594f2",
      "parents": [
        "3fcba6afdedc1e2b8f7638b7269d756e31b96223",
        "d4d6167f614a9001d9827a8634a26b5e9445a22c"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Mar 13 22:06:09 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 13 22:06:15 2017 +0000"
      },
      "message": "Merge \"remove LinearTransform from libutils\""
    },
    {
      "commit": "d4d6167f614a9001d9827a8634a26b5e9445a22c",
      "tree": "c6a6b408918d91824fc19458e1f4cc00610d0361",
      "parents": [
        "0b8c8133c8259b0584450eae894a330154d1a769"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Mar 13 12:26:06 2017 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Mar 13 13:36:52 2017 -0700"
      },
      "message": "remove LinearTransform from libutils\n\nthis was the only client.\n\nTest: compile\nBug: cleanup for treble\nChange-Id: Ibe2308d5fffb18c398db47e27d0123d629f675fe"
    },
    {
      "commit": "9b0a5d191960668e6884b85588f4d9f31c662153",
      "tree": "2ac33d157ac08e3327e319d04ef99d2e5e1da0f1",
      "parents": [
        "fa71ecb08aef3a7fd200de5a54f912f251ed16d1",
        "a0a74d5f8ee1dbd04772ffb1775d045ce6b5934b"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Mar 13 19:19:28 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 13 19:19:34 2017 +0000"
      },
      "message": "Merge \"use _deprecated suffix for deprecated clipops\""
    },
    {
      "commit": "a0a74d5f8ee1dbd04772ffb1775d045ce6b5934b",
      "tree": "50da252e550baf17945b40815cdb79661f4f3953",
      "parents": [
        "f26f346a27d72d34d1bd0c9a9f96e9fc3e619847"
      ],
      "author": {
        "name": "Mike Reed",
        "email": "reed@google.com",
        "time": "Mon Mar 13 13:26:00 2017 -0400"
      },
      "committer": {
        "name": "Mike Reed",
        "email": "reed@google.com",
        "time": "Mon Mar 13 17:38:16 2017 +0000"
      },
      "message": "use _deprecated suffix for deprecated clipops\n\nAllows skia to remove legacy flag for older names\n- SK_SUPPORT_EXOTIC_CLIPOPS\n- SK_SUPPORT_LEGACY_CLIPOP_EXOTIC_NAMES\n\nTest: CtsGraphicsTestCases\n\nChange-Id: I78478d94d059641a9381579cae6d28f9f0685ad1\n"
    },
    {
      "commit": "1965d2898c25e8688dd9d412da08038bb1ebc0ea",
      "tree": "f4b5c683413eedd536d69032059d1c3bbd692f73",
      "parents": [
        "764edd7627c3aecbd1bd59e6963c1058589e782f",
        "269f989fbf198b17994baf9141c4640aeaf34b4e"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Mar 13 17:32:56 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 13 17:33:05 2017 +0000"
      },
      "message": "Merge \"Change behavior of setBitmap to cleanly reset the canvas - identity matrix - no save stack - wide-open clip\""
    },
    {
      "commit": "269f989fbf198b17994baf9141c4640aeaf34b4e",
      "tree": "977866c16b51bb806514f88f909ee879fe469c82",
      "parents": [
        "f26f346a27d72d34d1bd0c9a9f96e9fc3e619847"
      ],
      "author": {
        "name": "Mike Reed",
        "email": "reed@google.com",
        "time": "Wed Mar 01 11:32:53 2017 -0500"
      },
      "committer": {
        "name": "Mike Reed",
        "email": "reed@google.com",
        "time": "Mon Mar 13 15:39:57 2017 +0000"
      },
      "message": "Change behavior of setBitmap to cleanly reset the canvas\n- identity matrix\n- no save stack\n- wide-open clip\n\nBehavior around the new bitmap is the same.\n\nTests : CtsGraphicsTestCases\n\nChange-Id: Ieaf8c2a1b96262ed33940dd852a86089eb93efdb\n"
    },
    {
      "commit": "7d73fc2303805a207e67eeee750c961618fb0e6b",
      "tree": "fd76aeae797463e2e9758f62f402a217a060dc49",
      "parents": [
        "a3b642a854c8ea85e06ef87fe6ebf51b4e0dbd52"
      ],
      "author": {
        "name": "Stan Iliev",
        "email": "stani@google.com",
        "time": "Wed Sep 28 18:14:24 2016 -0400"
      },
      "committer": {
        "name": "Stan Iliev",
        "email": "stani@google.com",
        "time": "Mon Mar 13 10:16:08 2017 -0400"
      },
      "message": "Add a new macrobench to test layer resize\n\nCreate a new HWUI macrobench to test hardware layer resize code path.\n\nTest: Executed the new test on bullhead device with \"adb shell\n/data/benchmarktest64/hwuimacro hwlayersize --onscreen --wait-for-gpu -c\n1000\".\n\nChange-Id: I9ed411d76ac3d51339a69add8ab1843c3256994a\n"
    },
    {
      "commit": "cfdfd997bd3aa8e32d9d1eefddb1d5921c1db5ee",
      "tree": "a4a072ac5836189adcb9afc572142abaf9822165",
      "parents": [
        "6698ff30c41a6142bcc08149bd3169859ea638fc",
        "d5c7dd6da810a6b89151b337bea79fd817e6b72a"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Mar 10 05:15:18 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 10 05:15:21 2017 +0000"
      },
      "message": "Merge \"Modify SurfaceView to use SurfaceFlinger child surfaces.\""
    },
    {
      "commit": "0c1563d3dd35969e293ebde116c74b8938046758",
      "tree": "7f83d88742d616fb987a03bd449a41a74eb149ee",
      "parents": [
        "af0c4233263b925f4929a5960334ade81d4515b5",
        "d7f13f84f8aefcad10ccb83aad794f1864623642"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Mar 09 21:42:58 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 09 21:43:01 2017 +0000"
      },
      "message": "Merge \"Prematurely optimizing a Path.\""
    },
    {
      "commit": "d7f13f84f8aefcad10ccb83aad794f1864623642",
      "tree": "9813d857a486c52607d3a900bd5975ffcfcf93a8",
      "parents": [
        "748bf77274f6b1badc18c0f2b2f9e54fb7f282e8"
      ],
      "author": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Thu Mar 09 13:08:27 2017 -0500"
      },
      "committer": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Thu Mar 09 13:59:23 2017 -0500"
      },
      "message": "Prematurely optimizing a Path.\n\nIf the path had an inverse fill type we were incorrectly\nconverting ovals and roundRects to their primitive form\nwithout checking to ensure the path was not inverse fill.\n\nThis CL removes these optimizations as they happen internally\nwithin Skia.\n\nBug: 34245907\nTest: verified broken app is fixed and that skia has existing tests\nChange-Id: I8c1ff6522ae19fc6c21520adc7e9bc2473a8a4ad\n"
    },
    {
      "commit": "d5c7dd6da810a6b89151b337bea79fd817e6b72a",
      "tree": "900f90bfc47d999d7e74bc4b4cd7dda3ac523320",
      "parents": [
        "cf8a98af481923bc61db347fdf053ea6e9152731"
      ],
      "author": {
        "name": "Robert Carr",
        "email": "racarr@google.com",
        "time": "Wed Mar 08 10:39:30 2017 -0800"
      },
      "committer": {
        "name": "Robert Carr",
        "email": "racarr@google.com",
        "time": "Wed Mar 08 17:36:10 2017 -0800"
      },
      "message": "Modify SurfaceView to use SurfaceFlinger child surfaces.\n\nHere we have SurfaceView bypass the WindowManager and speak\ndirectly to SurfaceFlinger using child surfaces. We also\nimplement some logic in the WM to handle child surfaces\nin various Surface replacement scenarios.\n\nFor those following along in the revert Saga, this\nalso includes the follow up CLs to the original CL.\n- Surface inset calculation\n- Animation fixes.\n\nThe error causing the revert was an incorrect JNI signature\naround deferTransactionUntilSurface. I\u0027ve noted it inline.\n\nBug: 28858420\nBug: 31518219\nBug: 34888808\nBug: 35588318\nBug: 35396882\nTest: Existing tests still pass (except for the ones that don\u0027t and will be deleted).\nChange-Id: Ie56b6f7ab16f32d7fc459b8eba26594337ad55de\n"
    },
    {
      "commit": "2bd7d98fe844ebd6632a55eee9abf6d18651caf5",
      "tree": "1a47e7dc53683c35820bf11931cbef05fc410e82",
      "parents": [
        "62dd27ab3b11e8aba5b50d4edc799b628702fe3b"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Feb 27 19:34:45 2017 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Mar 08 23:12:06 2017 +0000"
      },
      "message": "fallout from getting rid of IGraphicBufferAlloc\n\nTest: compiled \u0026 run\nBug: cleanup\nChange-Id: I1590105d3abef985c2ae7c1a03cdf5fd2ec4bef9"
    },
    {
      "commit": "07be4d67813bdda4479e0e5a482f76b3f52160e7",
      "tree": "9f0aaedbb183f62f96aedaddebae788d2e010f97",
      "parents": [
        "a76761d55c714b1d859dabcdbb689a567c7366ab",
        "5aec7b90310ba05f9816fd89030ba41ce48c568e"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Mar 08 06:28:06 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 08 06:28:11 2017 +0000"
      },
      "message": "Merge \"Revert \"Modify SurfaceView to use SurfaceFlinger child surfaces.\"\""
    },
    {
      "commit": "5aec7b90310ba05f9816fd89030ba41ce48c568e",
      "tree": "8c2f21ab63ec54660403a1ebe9a4c7776312da71",
      "parents": [
        "a851664403a6ddad6e3a8fbd71410c9948161dd4"
      ],
      "author": {
        "name": "Wonsik Kim",
        "email": "wonsik@google.com",
        "time": "Tue Mar 07 17:15:50 2017 -0800"
      },
      "committer": {
        "name": "Wonsik Kim",
        "email": "wonsik@google.com",
        "time": "Wed Mar 08 01:52:19 2017 +0000"
      },
      "message": "Revert \"Modify SurfaceView to use SurfaceFlinger child surfaces.\"\n\nThis reverts commit cd4aeef88052571365d4e193a2c41e2e6d145491.\n\nBug: 36027342\nBug: 36015884\nChange-Id: Ifd5b69caf64d65a8cd6570b7fe1fb6abe90e30b8\n"
    },
    {
      "commit": "f4f093c52c295c97f14eb6b84e45af326c01d7de",
      "tree": "c8537f54f75057ebf3bb566e3150b61e6681886c",
      "parents": [
        "6587430d6f942ae9f6d66aabfd3748f6dd50be86",
        "7de2f9c73fbe93bfb7dff3c046cf7a3137599f6c"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Mar 08 00:42:57 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 08 00:43:00 2017 +0000"
      },
      "message": "Merge \"Reinstate codes to enable RRO on system server\""
    },
    {
      "commit": "7ef25b78941ded7e1d757dc42897529a02fa10a3",
      "tree": "7f273441eda4caa0213b74f77388de25f01edc0e",
      "parents": [
        "31b0486d1b3bef3d84759299442146d054665505",
        "efb4b06493fe7b1604c762a448b13c7af2845a8d"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Mar 07 18:37:09 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 07 18:37:13 2017 +0000"
      },
      "message": "Merge \"Add ColorSpace information on Bitmap\""
    },
    {
      "commit": "3cad2c33ee161f84f44a6d796fba0292ef47931e",
      "tree": "1e695aa202c6591e6982079a110f3ac5767e0cc7",
      "parents": [
        "877f51ae882b6d647e4d4400811429988d05b2ba",
        "49b403dc9c47ada51c8e5b883347682a868515f8"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue Mar 07 17:53:19 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 07 17:53:22 2017 +0000"
      },
      "message": "Merge \"Workaround arc textures drawing outside of bounds\""
    },
    {
      "commit": "efb4b06493fe7b1604c762a448b13c7af2845a8d",
      "tree": "310d40716decb7686065339226534dac0bb35faa",
      "parents": [
        "4f357c081260c5bb36498169eb698adf7089899c"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Mon Feb 27 11:00:04 2017 -0800"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Mon Mar 06 19:33:25 2017 -0800"
      },
      "message": "Add ColorSpace information on Bitmap\n\nThis is the first step toward interpreting color spaces at render time.\n\nBug: 32984164\nTest: BitmapColorSpaceTest in CtsGraphicsTestCases\n\nChange-Id: I0164a18f1ed74a745874fe5229168042afe27a04\n"
    },
    {
      "commit": "49b403dc9c47ada51c8e5b883347682a868515f8",
      "tree": "1bc4b9b604b1e7f0ff468b2e67958bc07d916f9f",
      "parents": [
        "1e92e7fbfc128a3103e98f12d579ae01d027e2a4"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Mon Mar 06 13:51:43 2017 -0800"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Mon Mar 06 13:51:44 2017 -0800"
      },
      "message": "Workaround arc textures drawing outside of bounds\n\nFixes: 34077513\nTest: hwui unit tests passing\n\nThis fixes an issue where drawArc operations would cause artifacts by\ndrawing outside of the clip / screen damage area. We now more\nconservatively clip drawArc operations specifically, as they tend to\ndraw into the outer parts of their path textures more than other\noperations.\n\nA more long term fix would involve alignment between draw operation\nsizing (in terms of what\u0027s resolved in a BakedOpState), and\nPathTexture sizing (which currently conservatively expands beyond\nstroked op bounds).\n\nChange-Id: I5aff39cc04382323b457b159974032f5f371251a\n"
    },
    {
      "commit": "4d7094dc998b4765cb73c6ec26e61a6cc0df030f",
      "tree": "8591e81826218bc34a1e2af492e0ebb3f32da2f6",
      "parents": [
        "df2870df9ae6e5dbb7acfe3d5fd840a3317b0e66",
        "1344c034c537f5335b44eae69715b07c1f94d555"
      ],
      "author": {
        "name": "Tom Cherry",
        "email": "tomcherry@google.com",
        "time": "Mon Mar 06 20:14:37 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Mar 06 20:14:37 2017 +0000"
      },
      "message": "Merge \"Check for spurious wake ups\" am: 3a3cd0a27f am: c2dcebe6e6\nam: 1344c034c5\n\nChange-Id: I8ffc749ab6fbd825ce238fff4ba1d12609585c04\n"
    },
    {
      "commit": "df2870df9ae6e5dbb7acfe3d5fd840a3317b0e66",
      "tree": "0b25318bf65a84bb9cf9cb4f9cb59ec375395a3e",
      "parents": [
        "a3d279fa4b258498f3b7ee678e546a82e76cdaaf",
        "136fd0764faf7a588b4a1b479d7a8cc6fe18fcc6"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Mar 06 20:01:13 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 06 20:01:17 2017 +0000"
      },
      "message": "Merge \"AAPT2: Fix parsing ResTable_type\""
    },
    {
      "commit": "c2dcebe6e631f499d75c57bfe24eccbb0129c863",
      "tree": "9ad20416b36b4b248442ceb44bccfcbaad38932b",
      "parents": [
        "4ddee9722dd47060570b11a7ae9f4c20358fc079",
        "3a3cd0a27f98a360fad69030eedacd0d863586b4"
      ],
      "author": {
        "name": "Tom Cherry",
        "email": "tomcherry@google.com",
        "time": "Mon Mar 06 19:57:18 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Mar 06 19:57:18 2017 +0000"
      },
      "message": "Merge \"Check for spurious wake ups\"\nam: 3a3cd0a27f\n\nChange-Id: Ia445070278f5a80c85b48e06ddf614d462db45af\n"
    },
    {
      "commit": "b85f02e9add59192b4d45ec3b52f9c01747edfc2",
      "tree": "2825ddaad0e103c1861af72ae5c675aedc0cb309",
      "parents": [
        "272fe5c33866ccc9f590e8fa383f7d96577f8068",
        "46c6f4c5ea7846fee4e6ef40c035ef2bee1adcbb"
      ],
      "author": {
        "name": "Roozbeh Pournader",
        "email": "roozbeh@google.com",
        "time": "Mon Mar 06 19:19:06 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 06 19:19:11 2017 +0000"
      },
      "message": "Merge \"Frameworks support for hyphenation for various complex cases\""
    },
    {
      "commit": "46c6f4c5ea7846fee4e6ef40c035ef2bee1adcbb",
      "tree": "e6253cb71f611b2726e3f25f790acbe3e8c5b2a9",
      "parents": [
        "195bbc6d5e4e01000eed1ab80a0b7c146c1062ac"
      ],
      "author": {
        "name": "Roozbeh Pournader",
        "email": "roozbeh@google.com",
        "time": "Tue Feb 21 12:18:31 2017 -0800"
      },
      "committer": {
        "name": "Roozbeh Pournader",
        "email": "roozbeh@google.com",
        "time": "Fri Mar 03 15:34:42 2017 -0800"
      },
      "message": "Frameworks support for hyphenation for various complex cases\n\nThis adds better support for Arabic script languages, Armenian,\nCatalan, Hebrew, Kannada, Malayalam, Polish, Tamil, and Telugu by\nadding various hyphenation types and edits appropriate for the\nlocales.\n\nThe actual implementations are in Minikin. This CL takes care of the\nchanges needed in frameworks, to support different end-of-line and\nstart-of-line hyphen edits.\n\nTwo bugs in TextLine.java are also fixed:\n\n1. Where hyphen edits on non-spanned texts were not eliminated in\nhandleRun() when they should have. This had manifested itself in\ndouble hyphenation in some bidi paragraphs.\n\n2. Some no op assignments and comparions around the change for the\nabove bug are removed.\n\nTest: thorough manual testing for various cases\nBug: 19756624\nBug: 19950445\nBug: 19955011\nBug: 25623243\nBug: 26154469\nBug: 26154471\nBug: 33387871\nBug: 33560754\nBug: 33752592\nBug: 33754204\nChange-Id: I48c047d1f6a75c39a78a6ea38a0a3282f63326ec\n"
    },
    {
      "commit": "f1e54c9a1cb294096dcf361eb9511a4baa2f51fc",
      "tree": "b3da83c4366807cb5ebae922a6212f2ae7af709e",
      "parents": [
        "e096df0063f9b22af1bf9159e4b6056c1c5c70f0",
        "cd4aeef88052571365d4e193a2c41e2e6d145491"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Mar 03 22:45:20 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 03 22:45:24 2017 +0000"
      },
      "message": "Merge \"Modify SurfaceView to use SurfaceFlinger child surfaces.\""
    },
    {
      "commit": "136fd0764faf7a588b4a1b479d7a8cc6fe18fcc6",
      "tree": "91f7316861e5d879a627bd00578170791889c528",
      "parents": [
        "485c0feea53199b1d43db8782073044c846424c4"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Fri Mar 03 13:50:21 2017 -0800"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Fri Mar 03 14:01:09 2017 -0800"
      },
      "message": "AAPT2: Fix parsing ResTable_type\n\nResTable_type\u0027s size changes due to it containing\nResTable_config. Make sure we check for the minimum size\nrequired to read it.\n\nBug: 35861796\nTest: Manual (don\u0027t have an integration test harness setup yet)\nChange-Id: Ifb0cd1d732625f59835c8ed0449adb78129636de\n"
    },
    {
      "commit": "cd4aeef88052571365d4e193a2c41e2e6d145491",
      "tree": "5c4a115dafe671bcd3b200013c73328243488a92",
      "parents": [
        "1ec752f2dac36b2bf32a9d3fdf5f1f022a09228c"
      ],
      "author": {
        "name": "Robert Carr",
        "email": "racarr@google.com",
        "time": "Fri Mar 03 10:48:11 2017 -0800"
      },
      "committer": {
        "name": "Robert Carr",
        "email": "racarr@google.com",
        "time": "Fri Mar 03 13:06:59 2017 -0800"
      },
      "message": "Modify SurfaceView to use SurfaceFlinger child surfaces.\n\nHere we have SurfaceView bypass the WindowManager and speak\ndirectly to SurfaceFlinger using child surfaces. We also\nimplement some logic in the WM to handle child surfaces\nin various Surface replacement scenarios.\n\nFor those following along in the revert Saga, this\nalso includes the follow up CLs to the original CL.\n- Surface inset calculation\n- Animation fixes.\n\nThe error causing revert was a deferTransactionUntil(-1)...-1\ncast to uint, defer transaction until MAX_UINT.\n\nBug: 28858420\nBug: 31518219\nBug: 34888808\nBug: 35588318\nBug: 35396882\nTest: Existing tests still pass (except for the ones that don\u0027t and will be deleted).\nChange-Id: Ib37236950a1dd3c4f9f4b58fd41ef9003c0557ef\n"
    },
    {
      "commit": "792fb3252f6460acfd82c4e5d7536ca6b787a0e0",
      "tree": "ff594d42d5f79ace8de6e98992c11684141a1c12",
      "parents": [
        "1937bfabeb9e1c5fcc7e9972c55e75d1b7d3e62c"
      ],
      "author": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Fri Mar 03 14:02:09 2017 -0500"
      },
      "committer": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Fri Mar 03 14:24:58 2017 -0500"
      },
      "message": "Use SkPaint.nothingToDraw instead of PaintUtils helper.\n\nThe PaintUtils helper is now shared between all pipelines and was\nmissing a quick reject test for drawLoopers which are used in\nview.setShadowLayer and supported in the Skia pipelines.\n\nBug: 35809097\nTest: added hwui unit test and verified in DocumentsUI app\nChange-Id: I3c4a988f1c42b7f421f78ac3659af1daee910ea2\n"
    },
    {
      "commit": "115d2dbf9313a02be01cbef0df966741186ed79b",
      "tree": "cab27a58b169ca2eda5b89dc2767d98a80342b69",
      "parents": [
        "b5144655c20e4362087c3797d17838a4d54fe7b3",
        "8009012644c56eff42408731ea60467565bfef80"
      ],
      "author": {
        "name": "Rob Carr",
        "email": "racarr@google.com",
        "time": "Fri Mar 03 01:16:25 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 03 01:16:28 2017 +0000"
      },
      "message": "Merge \"Revert \"SurfaceView: Include surfaceInsets in position calculation\"\""
    },
    {
      "commit": "8009012644c56eff42408731ea60467565bfef80",
      "tree": "14e17d2b6d476a6cb67fc7149c48f0b8b3417e06",
      "parents": [
        "8c31e1db2a2cea4278503d6b9b27bca87946ef36"
      ],
      "author": {
        "name": "Rob Carr",
        "email": "racarr@google.com",
        "time": "Fri Mar 03 01:15:36 2017 +0000"
      },
      "committer": {
        "name": "Rob Carr",
        "email": "racarr@google.com",
        "time": "Fri Mar 03 01:15:36 2017 +0000"
      },
      "message": "Revert \"SurfaceView: Include surfaceInsets in position calculation\"\n\nThis reverts commit 8c31e1db2a2cea4278503d6b9b27bca87946ef36.\n\nChange-Id: Id25f493ca272878c2105f9cd302db1e05284998d\n"
    },
    {
      "commit": "4f357c081260c5bb36498169eb698adf7089899c",
      "tree": "e99bc9de8d07837ede6c9871614b62fe931fe698",
      "parents": [
        "72a489c035dd536cd13c0a87fc74e9b45da43cae",
        "fc29f7acd1352efa97269b5f3856eb879d5cfd53"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Mar 02 23:16:24 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 02 23:16:27 2017 +0000"
      },
      "message": "Merge \"Fix potential use-after-free in LayerUpdateQueue\""
    },
    {
      "commit": "e1c54d53f1fcb04337e6fc5654e24fddb52edc02",
      "tree": "2d74e8d17fd39399af0b18df585f83e437bb06e3",
      "parents": [
        "eea3e49b44c10e185c44be7f1c34562a688aa99d",
        "ea1fe9b9d6ff9f0a543489979a0a909acc9ea564"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Mar 02 22:45:31 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 02 22:45:35 2017 +0000"
      },
      "message": "Merge \"Update SkiaDisplayList to use the modified SkLiteDL\""
    },
    {
      "commit": "7de2f9c73fbe93bfb7dff3c046cf7a3137599f6c",
      "tree": "d1db83724b9bc9f6e3dd82856d71675f65ed4a39",
      "parents": [
        "cb0629eaa1a63684b1e6dbb366d42e80a26a5da9"
      ],
      "author": {
        "name": "Jaekyun Seok",
        "email": "jaekyun@google.com",
        "time": "Thu Mar 02 12:45:10 2017 +0900"
      },
      "committer": {
        "name": "Jaekyun Seok",
        "email": "jaekyun@google.com",
        "time": "Fri Mar 03 07:23:23 2017 +0900"
      },
      "message": "Reinstate codes to enable RRO on system server\n\nTest: building succeeded and tested with sailfish\nBug: 35742444\nChange-Id: I99d0f1d097525d3eb46255d6cf823f6ae2a02385\n"
    },
    {
      "commit": "fc29f7acd1352efa97269b5f3856eb879d5cfd53",
      "tree": "bca5e58917a15e5f3ee37aed0dd3823c8e941c80",
      "parents": [
        "d632305e376c899f6d5cbcaa441350c310b9fe44"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu Mar 02 13:23:16 2017 -0800"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu Mar 02 13:30:15 2017 -0800"
      },
      "message": "Fix potential use-after-free in LayerUpdateQueue\n\nChange-Id: I090af2191576175b165a9db574a80123c16f0778\nFixes: 26548204\nTest: Builds \u0026 hwui unit tests pass\n"
    },
    {
      "commit": "ea1fe9b9d6ff9f0a543489979a0a909acc9ea564",
      "tree": "d3756d96996affb4ab248f212fb7b17291e14329",
      "parents": [
        "23e6ad0edab63091181f87b1b42ba931570c5496"
      ],
      "author": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Wed Mar 01 13:02:43 2017 -0500"
      },
      "committer": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Thu Mar 02 15:28:19 2017 -0500"
      },
      "message": "Update SkiaDisplayList to use the modified SkLiteDL\n\nSkLiteDL is no longer refcounted or a subclass of SkDrawable.\n\nTest: on device testing in SkiaGL mode\nChange-Id: I9ad53d764a26ab382d80d54908325962f2075802\n"
    },
    {
      "commit": "8c31e1db2a2cea4278503d6b9b27bca87946ef36",
      "tree": "b2fe7249d219ea97a192db9a43fed0a4b8a661b8",
      "parents": [
        "555bf41049bbc387d920704f7a1f23314bc84986"
      ],
      "author": {
        "name": "Robert Carr",
        "email": "racarr@google.com",
        "time": "Wed Mar 01 12:02:05 2017 -0800"
      },
      "committer": {
        "name": "Robert Carr",
        "email": "racarr@google.com",
        "time": "Thu Mar 02 10:38:40 2017 -0800"
      },
      "message": "SurfaceView: Include surfaceInsets in position calculation\n\nPreviously the WM was taking care of this.\n\nFixes: 35588318\nFixes: 34888808\nTest: Manual\nChange-Id: I8b48d89f830bbef43b0132d191b29552e9c35702\n"
    },
    {
      "commit": "298a146754e35cbc650aa991ebff1a41eefdbe80",
      "tree": "8c1c847d9c42f13460e3d09e84435f9d4ce2195e",
      "parents": [
        "3e64003641c376573f4809aae79febd0187be81e"
      ],
      "author": {
        "name": "Tom Cherry",
        "email": "tomcherry@google.com",
        "time": "Tue Feb 28 14:07:09 2017 -0800"
      },
      "committer": {
        "name": "Tom Cherry",
        "email": "tomcherry@google.com",
        "time": "Tue Feb 28 14:19:44 2017 -0800"
      },
      "message": "Check for spurious wake ups\n\nCondition::wait() can spuriously wake up, so we must guard it with\nanother check to ensure that a given wake was truly due to having\nbeen signaled.\n\nBug: 34592766\nTest: Boot bullhead\nChange-Id: Iaa5a0ca6186aea50c51e2c402ef95d7ba861be92\n"
    },
    {
      "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\""
    }
  ],
  "next": "df1742ed47da1e9b61afeae16fa448d5302a8aa0"
}
