)]}'
{
  "log": [
    {
      "commit": "cd68212f0821e75081375a5af5ef5fce6e45e167",
      "tree": "6613bd6e1c4077530c40ed63742c31b02dc4b987",
      "parents": [
        "0b26adbb8b42168d4fc5ef240b1e2730fcfd5c61"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue Aug 09 12:09:03 2016 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue Aug 09 12:11:13 2016 -0700"
      },
      "message": "Make updateSurface non-blocking\n\nBug: 30442298\n\nWe already do this for initialize(), fix\nit so that update() is parallel with the\nUI thread as well.\n\nShaves ~7ms off of the 99th percentile on\nNotificationShade open \u0026 close\n\nChange-Id: I1791df495453fb9e1e12362c68e3d20e837e62be\n"
    },
    {
      "commit": "a9bef431490a89cbb73fa8f9147f1d7b8a29bbd5",
      "tree": "1bd619c8979ec1f2dd4906352ba2ee229341a7d2",
      "parents": [
        "369c6ebf0282334e7fa0c9248cd46953bd06dfbd",
        "3c53ec51efd4bbc3f06cc63dd8efe186e3fb168f"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Mon Aug 08 23:44:07 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Aug 08 23:44:08 2016 +0000"
      },
      "message": "Merge \"Prevent EndLayerOps when Begin was rejected\" into nyc-mr1-dev"
    },
    {
      "commit": "3c53ec51efd4bbc3f06cc63dd8efe186e3fb168f",
      "tree": "08487bafd3c33df8afcf5a0047e261aced569c4c",
      "parents": [
        "a6b1a9485cd02ebec1173a7755164e678dc095ec"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Mon Aug 08 15:15:57 2016 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Mon Aug 08 15:15:58 2016 -0700"
      },
      "message": "Prevent EndLayerOps when Begin was rejected\n\nbug:30537130\n\nBeginLayerOps were being rejected in a way that allowed the associated\nEndLayerOps to still be recorded. This was a violation of DisplayList\ncontent expectations, and caused crashes in FrameBuilder when trying to\nplay these DisplayLists back.\n\nChange-Id: I531b840aa5c4ffb1ee458da3f4b366978eaeafbe\n"
    },
    {
      "commit": "18e08a0170a429929e4b974143ecd0d6603b332c",
      "tree": "8cdcb0a0f6a7616539ec989fdea57d9a0b8b0063",
      "parents": [
        "5a3e33a82a36d22a39f0efd743b259256c9fad54"
      ],
      "author": {
        "name": "Doris Liu",
        "email": "tianliu@google.com",
        "time": "Mon Aug 08 12:47:20 2016 -0700"
      },
      "committer": {
        "name": "Doris Liu",
        "email": "tianliu@google.com",
        "time": "Mon Aug 08 19:57:34 2016 +0000"
      },
      "message": "Fix infinite AVD not running\n\nThis CL fixed an integer overflow error caused by using integer literal\nwhen it should be a float literal that defines a double.\n\nBUG:30739855\nChange-Id: If2bdb0eb7a2e93d28434bfe72ec11e8f1f2a1eda\n"
    },
    {
      "commit": "295d81c360ff56554b6c8c1adc0f9e2a38eca67c",
      "tree": "3dfccbaba20a577ed9de96798bb69b0d17e1e8ec",
      "parents": [
        "867f6d5dd544f995036f11bf56c869e50f447263",
        "70e89c9c376bf5bb20498c5c952cf665b2cd7375"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Aug 08 14:52:04 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Aug 08 14:52:05 2016 +0000"
      },
      "message": "Merge \"Ensure Dequeue/Queue duration is always set\" into nyc-mr1-dev"
    },
    {
      "commit": "7ae119ebff1389d97fb0fb85871922b56d97970f",
      "tree": "e16813113270195a33a559b9a84fe52a28230849",
      "parents": [
        "26d4ab07d57d4bc9cc9e873b9030ee0aa607229e",
        "6725d581eb3c13591a4ff276413dbfa0fc13e739"
      ],
      "author": {
        "name": "Doris Liu",
        "email": "tianliu@google.com",
        "time": "Sat Aug 06 01:07:14 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Aug 06 01:07:15 2016 +0000"
      },
      "message": "Merge \"Remove animation value change from push staging\" into nyc-mr1-dev"
    },
    {
      "commit": "70e89c9c376bf5bb20498c5c952cf665b2cd7375",
      "tree": "7dcc509bd14579306d43fc3e279becf5c8a6df01",
      "parents": [
        "b11cc6cbd370a991eea4d9fecaa1f0eee5f9002f"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Fri Aug 05 10:50:36 2016 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Fri Aug 05 10:50:36 2016 -0700"
      },
      "message": "Ensure Dequeue/Queue duration is always set\n\nBug: 30662749\nChange-Id: I35a4c26ce78536fc7a506ec2f92a8b9eecb12ec2\n"
    },
    {
      "commit": "f7167e8f286cff91dec01fdf617bf568f1d100e6",
      "tree": "f58d8288ef2ea02fdc8408dcc31e789c543983f8",
      "parents": [
        "6f20514185f836bbab48fe3867d3b249da573ec9"
      ],
      "author": {
        "name": "Doris Liu",
        "email": "tianliu@google.com",
        "time": "Wed Aug 03 17:54:28 2016 -0700"
      },
      "committer": {
        "name": "Doris Liu",
        "email": "tianliu@google.com",
        "time": "Fri Aug 05 01:44:20 2016 +0000"
      },
      "message": "Support repeatMode \u003d reverse in AVD\n\nBUG: 30641232\nChange-Id: I34c823a0a45c8441873a9b467275174c5529994b\n"
    },
    {
      "commit": "6725d581eb3c13591a4ff276413dbfa0fc13e739",
      "tree": "ce97c8ce9603ec7398683532e8e7e042e2c627dc",
      "parents": [
        "6bcf0cdf37cb13aebfaf17b757401d025a4a35e1"
      ],
      "author": {
        "name": "Doris Liu",
        "email": "tianliu@google.com",
        "time": "Thu Aug 04 13:20:17 2016 -0700"
      },
      "committer": {
        "name": "Doris Liu",
        "email": "tianliu@google.com",
        "time": "Thu Aug 04 22:43:07 2016 +0000"
      },
      "message": "Remove animation value change from push staging\n\nThis CL ensures that animation values are only updated during\nanimation pulses.\n\nThis CL also includes the revert of\nhttps://googleplex-android-review.git.corp.google.com/#/c/1285913/\n\nBUG: 30659748\n\nChange-Id: Iadc84462dc61157efd3c18a23767bba9faf00f6e\n"
    },
    {
      "commit": "d58230c7f708a70e2ab76c12e28916188056fc52",
      "tree": "eb0ed1aeff881016d61d8ef0cb8133d3c330da66",
      "parents": [
        "c9682ab5b508a242f0d569857ee9f6a3b82578de"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed Aug 03 10:28:10 2016 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed Aug 03 10:28:10 2016 -0700"
      },
      "message": "Fix RNA crash\n\nBug: 30632377\nChange-Id: I5d53fba0f469553ae90bebad1482ef28965dd853\n"
    },
    {
      "commit": "a3c35852a16b368164fcc2c7b679ef9dcb4d62d3",
      "tree": "b4464ba74899ada463c32f375acbfa258ac4a370",
      "parents": [
        "f77b6620d14a84d7112e3ab014c65f26a1b24787",
        "b51b2864e8ee58cad1b1880a3424112587a6e9e9"
      ],
      "author": {
        "name": "Doris Liu",
        "email": "tianliu@google.com",
        "time": "Tue Aug 02 20:36:19 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Aug 02 20:36:20 2016 +0000"
      },
      "message": "Merge \"Ensure layer update include the dirty rect from AVD\" into nyc-mr1-dev"
    },
    {
      "commit": "0cf4d47a4094a43984a5215ab1a283b0fdcf87a8",
      "tree": "e71bf27bc7805f7f3965b295772d447e8c0cbb89",
      "parents": [
        "0d8f164cdea03c8b114d6627c821fbcbae0ec298",
        "c82e879e563ad692cabf19f61a08559c6220171e"
      ],
      "author": {
        "name": "Doris Liu",
        "email": "tianliu@google.com",
        "time": "Tue Aug 02 18:08:04 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Aug 02 18:08:05 2016 +0000"
      },
      "message": "Merge \"Put VD animators on paused list when RT stops drawing\" into nyc-mr1-dev"
    },
    {
      "commit": "65ddb154c75126bbef8bf03494e6fd0d98ee0127",
      "tree": "584954a6e87f852a81261fed6ecae594fab8c919",
      "parents": [
        "c1b853ebfba7b8ff67919bb43dd73c80074d1a3b"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue Aug 02 09:38:26 2016 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue Aug 02 09:38:26 2016 -0700"
      },
      "message": "Fix FrameMetricsObserver crash\n\nBug: 30587465\n\nSomeday maybe the technology will exist to\nallow sharing a simple constant between\nJava and C++, but today is not that day.\n\nChange-Id: I17694746cb8712058133cd5ea10c47b9909f740b\n"
    },
    {
      "commit": "b51b2864e8ee58cad1b1880a3424112587a6e9e9",
      "tree": "eab6df7b7ee52a20c73368d1848aad798c69ad6a",
      "parents": [
        "a2f247e6a63eefc70866202abbec0e3af3768695"
      ],
      "author": {
        "name": "Doris Liu",
        "email": "tianliu@google.com",
        "time": "Mon Aug 01 19:56:47 2016 -0700"
      },
      "committer": {
        "name": "Doris Liu",
        "email": "tianliu@google.com",
        "time": "Tue Aug 02 03:01:48 2016 +0000"
      },
      "message": "Ensure layer update include the dirty rect from AVD\n\nBUG: 30166063\nChange-Id: Ia14a2fe3c653e0172a28b4ef22f5171ccf7390c1\n"
    },
    {
      "commit": "e733f862f06dd4fa9a84741ea94866fc2bc2f14e",
      "tree": "21ec6b9b66ff3c48c99768cfd13af7e7b6f0ef13",
      "parents": [
        "afc7e8e9bac644ce2226080800d37b0c31ce83ad",
        "4387190d8ec9fe4e953fcfeb093a644b82cf85ed"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Aug 02 01:07:18 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Aug 02 01:07:19 2016 +0000"
      },
      "message": "Merge \"Eliminate recents upload jank\" into nyc-mr1-dev"
    },
    {
      "commit": "4387190d8ec9fe4e953fcfeb093a644b82cf85ed",
      "tree": "c717cbed2691386f68b6c97ba09d64ac85137871",
      "parents": [
        "fbd93027e4f8024642271652e490653a4d0c2b55"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Aug 01 14:39:24 2016 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Aug 01 16:36:14 2016 -0700"
      },
      "message": "Eliminate recents upload jank\n\nBug: 30342017\n\nUpload recents thumbnails in the\ndead gaps between frames instead of\nat the start of a frame. This eliminates\njank caused by the large texture\nupload.\n\nChange-Id: I507cd286d199109c7a9a1511d68ba5ab5d28069f\n"
    },
    {
      "commit": "882d515cd54627f320269aa2d744f1c9f1a75c71",
      "tree": "e152f732fad7c83aab9b7b4176aee8b41ba1a5f2",
      "parents": [
        "fbd93027e4f8024642271652e490653a4d0c2b55"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Aug 01 14:41:08 2016 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Aug 01 14:52:25 2016 -0700"
      },
      "message": "Fix null deref crash\n\nBug: 30560152\nChange-Id: Ic4bae380e27de5bea80cec484e83d205e078ec43\n"
    },
    {
      "commit": "c82e879e563ad692cabf19f61a08559c6220171e",
      "tree": "52afc004a494c4185fca4cef1bace8df200cc6fa",
      "parents": [
        "7dd40cd4117cb7cf57d37f04088e4c55be423c1c"
      ],
      "author": {
        "name": "Doris Liu",
        "email": "tianliu@google.com",
        "time": "Fri Jul 29 16:45:24 2016 -0700"
      },
      "committer": {
        "name": "Doris Liu",
        "email": "tianliu@google.com",
        "time": "Mon Aug 01 21:42:15 2016 +0000"
      },
      "message": "Put VD animators on paused list when RT stops drawing\n\nWhen we stop scheduling for new frames on RenderThread, we should\nput the running animations on pause, rather than purge the list\nof the running animations, such that in the next full\nsync, the animations that were paused will continue to run.\n\nBUG: 30226711\nChange-Id: I36ff6f5d26ffa7999f60ca0ff676a35157577dc2\n"
    },
    {
      "commit": "34921ac1104e155682c6e807856e3e06f756c8f3",
      "tree": "3849b0be75da60ade46611e4ac69f86294a9275b",
      "parents": [
        "66e7752ad15f761d09155976b37cb94fc36937d9",
        "2d5b8d73929a38b019c6b6276d4a19542b990f0c"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jul 29 16:25:49 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 29 16:25:51 2016 +0000"
      },
      "message": "Merge \"Teach JankTracker about new swap behaviors\" into nyc-mr1-dev"
    },
    {
      "commit": "2d5b8d73929a38b019c6b6276d4a19542b990f0c",
      "tree": "d0224acca3391c34e4b2c33aac2bc8c685bea93b",
      "parents": [
        "255ad67b2e61c5ac407c5ef539275b4de99186b4"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu Jul 28 15:36:11 2016 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Fri Jul 29 07:56:02 2016 -0700"
      },
      "message": "Teach JankTracker about new swap behaviors\n\nBug: 30440166\n\nIf we are using HWC2, there\u0027s a change in timing\nwhen in triple buffering with the pipelined offsets.\nThis changes JankTracker to recognize that and silently\nerase that from the total duration\n\nChange-Id: Ib1fd4209070f17dbd2baed707c8cf73fb11c3cf2\n"
    },
    {
      "commit": "abf66de14702c1d8262be29c426f707cc74667af",
      "tree": "b508072b900bd2e032c64691b9be1d80bd3f3724",
      "parents": [
        "3a45979ab0ee4973a1ff5845943121e542ff7960",
        "a3d795a34a786bbe8b5027f70df36b81328109c2"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu Jul 28 19:59:12 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 28 19:59:13 2016 +0000"
      },
      "message": "Merge \"Drop less aggressively\" into nyc-mr1-dev"
    },
    {
      "commit": "a3d795a34a786bbe8b5027f70df36b81328109c2",
      "tree": "c4e8767cf647ddf5ad349bddbd62af5c09050d64",
      "parents": [
        "255ad67b2e61c5ac407c5ef539275b4de99186b4"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed Jul 27 19:28:05 2016 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed Jul 27 19:28:05 2016 -0700"
      },
      "message": "Drop less aggressively\n\nBug: 30342762\n\nFrame dropping was too frequent and would trigger\nduring normal triple buffering steady state. Bump\nthe threshold to drop from 3ms stall to 6ms stall.\n\nChange-Id: I5c1faeaabf0d02323a28e697a4af4105fbcf1c53\n"
    },
    {
      "commit": "aa54b4e0da675439c969b1da5ad918b8da5b944a",
      "tree": "d2d1c64c263607d258043f9846fe431b814d209a",
      "parents": [
        "4f0d7aad58ec1f5d0bc0e9ac1b3ee327a32426cc",
        "7c7052dd9bbfb2d98112975f7cbd2655212bf85b"
      ],
      "author": {
        "name": "Doris Liu",
        "email": "tianliu@google.com",
        "time": "Wed Jul 27 21:14:11 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 27 21:14:12 2016 +0000"
      },
      "message": "Merge \"Run animation *after* property sync\" into nyc-mr1-dev"
    },
    {
      "commit": "004d140042368f92a537aa55a2f476a4f4377ff9",
      "tree": "a7b22445bd1ed8080d1e532c73de338bc0ac94c7",
      "parents": [
        "b36d734e7bdb8759c60dc9d909b267706d15ab15",
        "814ee6a9218aa339a4757b2c0ba1ad268f8dbc8a"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Wed Jul 27 16:37:36 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 27 16:37:37 2016 +0000"
      },
      "message": "Merge \"Reject fully transparent paint-fill ops at record time\" into nyc-mr1-dev"
    },
    {
      "commit": "814ee6a9218aa339a4757b2c0ba1ad268f8dbc8a",
      "tree": "579a0b5fe4a17a1eabd22eccf2896bcf67ea7c61",
      "parents": [
        "2f8bf1f024a63041693ff2a1e04269b2cbff8b36"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue Jul 26 16:22:50 2016 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue Jul 26 16:22:51 2016 -0700"
      },
      "message": "Reject fully transparent paint-fill ops at record time\n\nbug:30342762\n\nAvoids unnecessary work for each transparent operation.\n\nChange-Id: I80b1eeca34ae32249433fde55e9fe93d02c411db\n"
    },
    {
      "commit": "7c7052dd9bbfb2d98112975f7cbd2655212bf85b",
      "tree": "627df0cb7d3aae32a4997e7ca7eae0192b450894",
      "parents": [
        "eaa6d6b2c940ca4f76698cbbc5031657066065dc"
      ],
      "author": {
        "name": "Doris Liu",
        "email": "tianliu@google.com",
        "time": "Mon Jul 25 17:19:24 2016 -0700"
      },
      "committer": {
        "name": "Doris Liu",
        "email": "tianliu@google.com",
        "time": "Tue Jul 26 00:42:56 2016 +0000"
      },
      "message": "Run animation *after* property sync\n\nVectorDrawable contains properties that can be mofidied from both\nUI thread and RenderThread. The two sets of properties are synced\nduring prepareTree. Previously VD animations ran before prepareTree,\nas a result, during prepareTree the property sync overwrote some\nof the animatable properties. In other words, the first frame of\nthe animation wasn\u0027t correct. An example is in battery saver mode\nwhen the animation only has one frame to animate (0-duration), the\nend result looked wrong.\n\nThis CL moves the VD animation to after prepareTree to solve the\nproblem mentioned above. Meanwhile, in order to signal which\nVD will be animated so as to have them properly damaged, all VDs\nwith running animators are marked dirty.\n\nBug: 30226711\nChange-Id: I831dae9abb2908876c935b9be4c11dfd09452d5c\n"
    },
    {
      "commit": "433a19e8bf92accb834f703f91650bc8de776073",
      "tree": "c79198534b8a622c5c087537a735deee156b8ad0",
      "parents": [
        "8c8d752851b849d40f033701c1fa203d4945a43d",
        "3163568806f2f1c360f93772453f4b0b3a9b2e47"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Thu Jul 21 00:26:14 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 21 00:26:15 2016 +0000"
      },
      "message": "Merge \"Change swap chain stuffed detection logic\" into nyc-mr1-dev"
    },
    {
      "commit": "3163568806f2f1c360f93772453f4b0b3a9b2e47",
      "tree": "42c85718d3f12b8738934b1caa13297fd17a80b7",
      "parents": [
        "2f8bf1f024a63041693ff2a1e04269b2cbff8b36"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue Jul 19 17:59:12 2016 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Wed Jul 20 16:47:03 2016 -0700"
      },
      "message": "Change swap chain stuffed detection logic\n\nbug:29771461\nbug:29413700\nbug:30181577\n\nChanges frame interval gap detection to look for wider gaps, as they\nwere incorrectly firing all the time.\n\nAlso adds a 500ms minimum gap between frames dropped because of stuffed\nswap chain, to prevent dropping too often.\n\nChange-Id: If16ed637d54bf37015704be102c5c2e3731a0824\n"
    },
    {
      "commit": "f8bc27d9683e4089cdfd778dcb61ae67f44665b7",
      "tree": "d9601e641544206c9e08f9ce605bca0578bf7f52",
      "parents": [
        "39abe33b501a3763c966cc946cfcef8458c68ae4",
        "1c9977b762b4bac46b4470f04c898bfd17da5d90"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jul 20 17:21:33 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 20 17:21:35 2016 +0000"
      },
      "message": "Merge \"Rename color transform to color mode and persist the value.\" into nyc-mr1-dev"
    },
    {
      "commit": "ffde6274f7acb988ce181454b4d5abe3cef483b5",
      "tree": "de0670c03042e37915338ff913346fcbdf18940d",
      "parents": [
        "117cf8de912f4a58e94ffa535ae33d7a3ade7953"
      ],
      "author": {
        "name": "Tim Murray",
        "email": "timmurray@google.com",
        "time": "Mon Jul 18 14:11:28 2016 -0700"
      },
      "committer": {
        "name": "Tim Murray",
        "email": "timmurray@google.com",
        "time": "Mon Jul 18 15:35:36 2016 -0700"
      },
      "message": "add tracepoint for when the display chain is stuffed\n\nbug 30173296\n\nChange-Id: I7845542d4e5c19ccb7c3ee6498cc2d70278b5397\n"
    },
    {
      "commit": "1c9977b762b4bac46b4470f04c898bfd17da5d90",
      "tree": "873eaf21a809a670356737f459f9b4dc37aef1f6",
      "parents": [
        "142c4f7a9f16f3cfdf5c8cc5e185b8738f94c80f"
      ],
      "author": {
        "name": "Michael Wright",
        "email": "michaelwr@google.com",
        "time": "Tue Jul 12 13:30:10 2016 -0700"
      },
      "committer": {
        "name": "Michael Wright",
        "email": "michaelwr@google.com",
        "time": "Mon Jul 18 19:49:18 2016 +0100"
      },
      "message": "Rename color transform to color mode and persist the value.\n\nAlso, standardize on a set of possible modes for the displays to\nenter and separate the configuration of the color mode from the\nconfiguration of the display mode.\n\nBug: 29044347\n\nChange-Id: I6af0a7d1f11bc72d4cefc380f115c1fb00788864\n"
    },
    {
      "commit": "06f13cba5f1b67837674a46b90bf09f85669153f",
      "tree": "a6c17f00bd47f93d0bf5f82829f0783a281dd7cb",
      "parents": [
        "538b836e05776e5a98d568997ff8d173a3e0f5dc",
        "0658435096a26067c0183e0a977c9ae0af1cc006"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Fri Jul 15 00:02:25 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 15 00:02:26 2016 +0000"
      },
      "message": "Merge \"Fix rotated clip regions\" into nyc-mr1-dev"
    },
    {
      "commit": "0658435096a26067c0183e0a977c9ae0af1cc006",
      "tree": "4c4cea9509a917bfb2bf2c25d3b3204a951043c2",
      "parents": [
        "55c7c9c2d4fd9cf3295eb7a4602adf87425b1945"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Thu Jul 14 14:24:16 2016 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Thu Jul 14 14:37:08 2016 -0700"
      },
      "message": "Fix rotated clip regions\n\nbug: 26562461\nfixes: 30109912\n\nSeekBar clips out the area of the thumb when drawing its track. This\ncreates a clip region, since a rect has been subtracted.\n\nThis changes region transform support in computing final clip to\nproperly support any rect-to-rect transform (such as 90 degree rotation)\nwhen applying a clip region.\n\nChange-Id: Ib3bbc52637e59e00b3a7e7d5c4c40555e26c578b\n"
    },
    {
      "commit": "98980cdfff34d1cace1ab60fa54e248c0ee8bc8e",
      "tree": "820318d9282bc0e59105051beb2794fa69718a76",
      "parents": [
        "0b4750165ee3270225fcc99e3ffc49ce69f83e48"
      ],
      "author": {
        "name": "Doris Liu",
        "email": "tianliu@google.com",
        "time": "Tue Jul 12 18:48:52 2016 -0700"
      },
      "committer": {
        "name": "Doris Liu",
        "email": "tianliu@google.com",
        "time": "Wed Jul 13 19:09:25 2016 +0000"
      },
      "message": "Fix use-after-free in vector drawable animation\n\nAdded a strong pointer to hold reference to VD in the animation,\nso that VD will not be released before animation is finished/destroyed.\n\nBUG: 29438210\nChange-Id: I311cd83043f988640de44f637cb474baada9b5ca\n"
    },
    {
      "commit": "e3e481df762747c5f01bbd1503800fa29457fc1b",
      "tree": "d8aa5a01bcc5150999b472c0be25dcb1f98374d9",
      "parents": [
        "377a8dd1e4909aa78d57ae3eb4ce885a7bad61c0"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Mon Jul 11 12:20:51 2016 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Mon Jul 11 19:26:18 2016 +0000"
      },
      "message": "Avoid throwing when 0 size layer requested\n\nbug:30032790\n\nChange-Id: I8553af0d0b0d59fea6535d03479c4e7134a9f4f9\n"
    },
    {
      "commit": "a96d445aef1456398410e41e9c29d9181287edc5",
      "tree": "162d5d702a4cae4fc647284043cdcab530b496dc",
      "parents": [
        "a1b026ea2e18473656c91e67207afc44b9c373b9",
        "33eb07f5759b85a5617f8057d8a335019c7d24dd"
      ],
      "author": {
        "name": "Tim Murray",
        "email": "timmurray@google.com",
        "time": "Thu Jul 07 20:29:22 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 07 20:29:24 2016 +0000"
      },
      "message": "Merge changes from topic \u0027fifo\u0027 into nyc-mr1-dev\n\n* changes:\n  Add new mode for SCHED_FIFO on UI and RenderThreads.\n  Add isThreadInProcess.\n"
    },
    {
      "commit": "33eb07f5759b85a5617f8057d8a335019c7d24dd",
      "tree": "4f8d38df24b8c7c42cffd760fa1ef654b253c859",
      "parents": [
        "b89970e0fb11b71592e10570d387eac3bbb6f6d6"
      ],
      "author": {
        "name": "Tim Murray",
        "email": "timmurray@google.com",
        "time": "Fri Jun 10 10:03:20 2016 -0700"
      },
      "committer": {
        "name": "Tim Murray",
        "email": "timmurray@google.com",
        "time": "Thu Jul 07 12:55:31 2016 -0700"
      },
      "message": "Add new mode for SCHED_FIFO on UI and RenderThreads.\n\nAdd a new mode, controlled by sys.use_fifo_ui property, that enables the\ntop app\u0027s UI and RenderThread to be SCHED_FIFO. This eliminates almost\nall jank due to scheduling competition with non-UI critical\nthreads. This mode may not be suitable for all devices.\n\nbug 24503801\n\nChange-Id: I7b8a31830ad80f7efa00236928d5476998ed4e00\n"
    },
    {
      "commit": "0def73aac5956d82a065fd75e90eac4c58418e03",
      "tree": "f09c94a473b78cfad353eaae7995d3c2ba21ad29",
      "parents": [
        "da68f0614c50f1dce4bde8bad6fccd2a8573ad51"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Fri Jul 01 16:19:13 2016 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed Jul 06 17:00:43 2016 -0700"
      },
      "message": "Consider queue \u0026 dequeue times for should draw\n\nBug: 29413700\n\nChange-Id: I4b27b077af569e3c60c57b0e11501e9f3af70579\n"
    },
    {
      "commit": "82457c51176855b9be0b441010870093a6feb414",
      "tree": "d00581f5984e6fd6cd150b53bb4af90d0d5df69f",
      "parents": [
        "6401217532e5357549988182b90bea28a86691e2"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Wed Jun 29 16:22:27 2016 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Wed Jun 29 16:22:28 2016 -0700"
      },
      "message": "Handle post-record-time clipPath scaling\n\nbug:29547149\n\nChange-Id: I268210b240d2d8e08638114715f9622840fc02f7\n"
    },
    {
      "commit": "754ea612ec74d0bb13bfef0e88f9684a72a28db2",
      "tree": "04b40f4e3a81d4c05bf91060ff2d79da44698e8e",
      "parents": [
        "fb20170c0fae7ff17573b45c944a844cf1269929",
        "e4f6d968f51ba3bb867e8e124dca97b7e9c3fea5"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue Jun 28 17:33:26 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 28 17:33:27 2016 +0000"
      },
      "message": "Merge \"Fix savelayer rounding\" into nyc-mr1-dev"
    },
    {
      "commit": "e4f6d968f51ba3bb867e8e124dca97b7e9c3fea5",
      "tree": "771e222006ec14788074953cb571f2d0ad51c66c",
      "parents": [
        "defa943074f40b4fa729cc95d2c1a95fe62eb7e4"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Mon Jun 27 16:30:27 2016 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue Jun 28 09:53:04 2016 -0700"
      },
      "message": "Fix savelayer rounding\n\nbug:29456451\n\nChange-Id: I8022163d2c004510da5db74efdca27582484224d\n"
    },
    {
      "commit": "8701bff9bacd033ecade271c9f30ef5d734e8cc0",
      "tree": "915f6c0c457eeb0f372fa1a1d3421e26ddcf8f24",
      "parents": [
        "30a2b43f6d0531c393f21b0d91885aa4ceba4f85",
        "7b570deea65bc7ac417a26ce3e4103bcef30e957"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jun 28 01:26:42 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 28 01:26:43 2016 +0000"
      },
      "message": "Merge \"Fix SurfaceViewPositionListener race bugs\" into nyc-mr1-dev"
    },
    {
      "commit": "11858f170acb1a89905047bbf0039e0582a5b4d2",
      "tree": "f98097366d7123b7647db95639b5b3d488d545aa",
      "parents": [
        "611093b1a1b6e838912f221123bfb39d91f50080",
        "48cde353eb7b6bd8f4ff335da0e04fcd390cf0da"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Jun 27 22:28:41 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Jun 27 22:28:41 2016 +0000"
      },
      "message": "Merge \\\"Add missing roundOut for layer damage\\\" into nyc-dev\nam: 48cde353eb\n\nChange-Id: I99532e6b7992452523c4fb0716a7161c06b92950\n"
    },
    {
      "commit": "48cde353eb7b6bd8f4ff335da0e04fcd390cf0da",
      "tree": "13dbab9b16ead0ae8bb374db390f5a2c2c64566c",
      "parents": [
        "45e83338e525070702c12d68d904107989f439f9",
        "ac046387be01e586ab29519adb6d865381efa37f"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Jun 27 22:22:40 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 27 22:22:41 2016 +0000"
      },
      "message": "Merge \"Add missing roundOut for layer damage\" into nyc-dev"
    },
    {
      "commit": "ac046387be01e586ab29519adb6d865381efa37f",
      "tree": "d8b9996de60c44cde0b67ce7e3b41006d1d31554",
      "parents": [
        "95fbc2de1b378f3d77385839c5535a5b6b3b5d06"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Jun 27 15:13:54 2016 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Jun 27 15:18:26 2016 -0700"
      },
      "message": "Add missing roundOut for layer damage\n\nfixes: 29771171\n\nThis is a regression from HWUI_NEW_OPS, a roundOut\nwas missing in the new path that was in the old one\n\nChange-Id: Ibf223d550bb5525781864dd9b7f7cd6d73adb98b\n"
    },
    {
      "commit": "45e83338e525070702c12d68d904107989f439f9",
      "tree": "90f133d5beb9bced81c89bf7ca3cb46f64aab6a6",
      "parents": [
        "06b1d786e9360f7e577e16a0b9af6cd8b9bc9b82"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Fri Jun 24 13:53:37 2016 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Mon Jun 27 21:06:35 2016 +0000"
      },
      "message": "Round unclipped saveLayers\n\nfixes: 29456451\n\nChange-Id: I2be8b47c46936e75071ad0819a718f72b96cbd2b\n(cherry picked from commit d5a90114128f4d3d528f1a0e93651496c968f940)\n"
    },
    {
      "commit": "7b570deea65bc7ac417a26ce3e4103bcef30e957",
      "tree": "6e19b0c299e7bf7da395cddbe5f0d2384af5b28a",
      "parents": [
        "157c6811de9bec883dfc802481bd07e64ca7ce59"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Jun 27 13:27:23 2016 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Jun 27 13:35:13 2016 -0700"
      },
      "message": "Fix SurfaceViewPositionListener race bugs\n\nBug: 29628138\n\n1: Make windowPositionLost synchronous as that\u0027s\nwhat the Java side was expecting\n\n2: Make the listener ref counted as otherwise\nthere\u0027s a race condition with the GC, which could\nend up with use-after-frees\n\n3: Ensure that all position updates are invoked\nprior to frame completion\n\nChange-Id: Iedbc017f611ba2878a49b4586612f79249ca2fe3\n"
    },
    {
      "commit": "d5a90114128f4d3d528f1a0e93651496c968f940",
      "tree": "aab3530574d0b3284dc2b8fe167a3650f34dbb4c",
      "parents": [
        "015c8a3ac0d25a85899f433bc9b0af6c3dc849fc"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Fri Jun 24 13:53:37 2016 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Fri Jun 24 14:14:45 2016 -0700"
      },
      "message": "Round unclipped saveLayers\n\nfixes: 29456451\n\nChange-Id: I2be8b47c46936e75071ad0819a718f72b96cbd2b\n"
    },
    {
      "commit": "c470466d7c89b55d8c5a13d79076fa2f8d624da1",
      "tree": "0217a6def380ef1817fdf91a6f279c6801277d12",
      "parents": [
        "33657640ec420968dd97e68bbe84556fbdb86d87"
      ],
      "author": {
        "name": "Doris Liu",
        "email": "tianliu@google.com",
        "time": "Thu Jun 23 10:34:17 2016 -0700"
      },
      "committer": {
        "name": "Doris Liu",
        "email": "tianliu@google.com",
        "time": "Fri Jun 24 00:01:39 2016 +0000"
      },
      "message": "Fix NPE for checking for whether animators should play together\n\nBUG: 29586505\nChange-Id: Ic2a67d51d2ac8d5bfb11ed7773c7c7e413cc28c7\n"
    },
    {
      "commit": "2d30d672499a61287b6e20cf3065eee4ec2bc9ea",
      "tree": "b57a59afcfa23fbc69a83d0bfb88f9a3bfb462d4",
      "parents": [
        "8011f5ed1ce3374bf6ce0d4952df54dc923a2b2e",
        "fc275d244e5827641b45f444557bec202ac5560a"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Sat Jun 18 02:22:54 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Jun 18 02:22:54 2016 +0000"
      },
      "message": "Merge \\\"Avoid re-calculating vsync mid-frame\\\" into nyc-dev\nam: fc275d244e\n\nChange-Id: I295b6e60a7b2fdcdce3692e74fe54755845132e0\n"
    },
    {
      "commit": "d11b5e6661ba922cf7b4e02cf72373ea634bb8fe",
      "tree": "bd5c536903d87f8b3aa3a7c7509e7a70b6e0e572",
      "parents": [
        "fc275d244e5827641b45f444557bec202ac5560a",
        "34bf49e4de4c1994b5d9c19166606bc9b7ad1b9c"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Jun 18 02:07:04 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Jun 18 02:07:05 2016 +0000"
      },
      "message": "Merge \"DO NOT MERGE Move SurfaceView offscreen if the app stops drawing it\" into nyc-dev"
    },
    {
      "commit": "501ff9acfe9dd656c1fb6d82ec0533c3244fd88b",
      "tree": "c71f77127da361e21665c127f6c880c7cc65c4ab",
      "parents": [
        "6bc33b07f43b6568be9920905083c20b879a97b1"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Fri Jun 17 12:57:12 2016 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Fri Jun 17 20:44:43 2016 +0000"
      },
      "message": "Avoid re-calculating vsync mid-frame\n\nFixes: 29072773\n\nBy using computeFrameTime AnimationContext would\npotentially end up modifying the latest vsync if\na very-slow frame was received from the UI thread.\n\nThis could potentially desync animations that were\nRT \u0026 UI thread \u0027synchronized\u0027, but more significantly\nit would confuse the swap chain which tries to only\ndraw one frame per vsync causing unneccessary frame\ndrops.\n\nChange-Id: Ibd2ec3157ce32fee1eec8d56837c45a35e622895\n"
    },
    {
      "commit": "34bf49e4de4c1994b5d9c19166606bc9b7ad1b9c",
      "tree": "656d9ffaf35caf3ea3a71faf8c06915dcd93919d",
      "parents": [
        "dd65ee628f95a2e9d74bc23d000c000b2d834a53"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu Jun 16 15:36:13 2016 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Fri Jun 17 20:26:10 2016 +0000"
      },
      "message": "DO NOT MERGE Move SurfaceView offscreen if the app stops drawing it\n\nBug: 29360411\nChange-Id: Iefb9d7a9dafb34a2b4f79130a2a8b5a7cf7de906\n(cherry picked from commit aa6e84f21ddf89ea649a3f00044bc23adfe86978)\n"
    },
    {
      "commit": "aa6e84f21ddf89ea649a3f00044bc23adfe86978",
      "tree": "b0654d9dfee0cfa15bad5f56835521f6191d1bc2",
      "parents": [
        "18c57b5cd546120ccbc9cce80758813244af6d37"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu Jun 16 15:36:13 2016 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Fri Jun 17 10:23:54 2016 -0700"
      },
      "message": "Move SurfaceView offscreen if the app stops drawing it\n\nBug: 29360411\nChange-Id: Iefb9d7a9dafb34a2b4f79130a2a8b5a7cf7de906\n"
    },
    {
      "commit": "1dda5b39d46104cd592b5e1f66000fde0c2d7af6",
      "tree": "f9d9b46b0287bb9e53c80712ff3cd6c0b4f42a6a",
      "parents": [
        "9b464f651bf590c1deea6d5d922093255cdb22b4",
        "464bda8a2bd4ec61ec0ac9ba1e9a90ca4c5f8890"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Wed Jun 15 22:47:58 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jun 15 22:47:58 2016 +0000"
      },
      "message": "Merge \\\"ResourcesManager: Allow managed addition of library asset paths\\\" into nyc-dev\nam: 464bda8a2b\n\nChange-Id: I0609c73c4f36b48970bba83b6ea5bd95e6c2d956\n"
    },
    {
      "commit": "464bda8a2bd4ec61ec0ac9ba1e9a90ca4c5f8890",
      "tree": "c0d3c56582cd109bf69a31c84055d5241d39b0ea",
      "parents": [
        "8e8fb7dda0bcc944e72e2dd324fb51bf6a44519b",
        "25f48886b2bc2f4edc65d80ff836561853b7ed50"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Wed Jun 15 22:35:25 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 15 22:35:26 2016 +0000"
      },
      "message": "Merge \"ResourcesManager: Allow managed addition of library asset paths\" into nyc-dev"
    },
    {
      "commit": "25f48886b2bc2f4edc65d80ff836561853b7ed50",
      "tree": "b9e486ce46482b01c5edcdddf2206e4e5f019a08",
      "parents": [
        "d749245b88456fcec8be1b93528e179d3a2d61aa"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Tue Jun 14 11:05:23 2016 -0700"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Wed Jun 15 12:00:18 2016 -0700"
      },
      "message": "ResourcesManager: Allow managed addition of library asset paths\n\nThis allows WebView to add itself to the ResourcesManager and\nremain their even after configuration changes and multi-window\nchanges.\n\nBug:29112218\nChange-Id: I2cb131ae2c61fb58c48babafdd46c1882be96aa9\n"
    },
    {
      "commit": "fc4c59a10cfd3cdbecf83657b74fbcedc70d3ada",
      "tree": "a6833e8c3549b78e48302907bd9b4e0b87aa0db7",
      "parents": [
        "31e9b4c8c7e420ff96ed1ed32416f1f543e14ab8",
        "5b4ff21a749dbe2e8990fc1000eb1e2694c04e4f"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue Jun 14 14:54:18 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jun 14 14:54:18 2016 +0000"
      },
      "message": "Merge \\\"Redraw if dirty during stopped when resumed\\\" into nyc-dev\nam: 5b4ff21a74\n\nChange-Id: If4eedb4a4c1ff6d4e96f8b0db4ddd846a2967a9f\n"
    },
    {
      "commit": "5b4ff21a749dbe2e8990fc1000eb1e2694c04e4f",
      "tree": "5e2009ee1e49d4d72289ffab2659d07074ff5109",
      "parents": [
        "7ce75172ddb1c6535bdf3f7f7bc84f65d681e958",
        "306f331f91a86da271ce30d4f14d6badf0d25704"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue Jun 14 14:43:19 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 14 14:43:20 2016 +0000"
      },
      "message": "Merge \"Redraw if dirty during stopped when resumed\" into nyc-dev"
    },
    {
      "commit": "a7952b33f6a41f95aa221a0b20d195002aed0144",
      "tree": "32e6cecbf677c2ae56afaf853511d3598eede5a7",
      "parents": [
        "5e2fbdbfd56a3548af681adf56402265fc2ecdeb"
      ],
      "author": {
        "name": "Doris Liu",
        "email": "tianliu@google.com",
        "time": "Mon Jun 13 14:49:26 2016 -0700"
      },
      "committer": {
        "name": "Doris Liu",
        "email": "tianliu@google.com",
        "time": "Mon Jun 13 22:05:11 2016 +0000"
      },
      "message": "Test RenderNode\u0027s prepareTree when its DL is null and non-null\n\nBUG: 29320878\nChange-Id: I3325e957025d0039faf366144dcd2d95790ccfd1\n"
    },
    {
      "commit": "07c056d627be315796d53bf07f8e06f449d92668",
      "tree": "38bb999499f0ded5be99992f5ec6665b1abe1d9f",
      "parents": [
        "a3d4baf43b22f205cc0b26af9eb25df25b5c9a3e"
      ],
      "author": {
        "name": "Doris Liu",
        "email": "tianliu@google.com",
        "time": "Mon Jun 13 12:52:44 2016 -0700"
      },
      "committer": {
        "name": "Doris Liu",
        "email": "tianliu@google.com",
        "time": "Mon Jun 13 12:52:44 2016 -0700"
      },
      "message": "Chcek for valid render content before damaging RenderNode for dirty VD\n\nBUG: 29320878\nChange-Id: I847d76467bad92c956a4bb7617627983d64e90f9\n"
    },
    {
      "commit": "306f331f91a86da271ce30d4f14d6badf0d25704",
      "tree": "40a92237e50da143f7d076c2ed304a7a8d950519",
      "parents": [
        "9b5a78072281ebf0182234d56b6ec174e911d24e"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Fri Jun 10 16:01:55 2016 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Fri Jun 10 16:28:59 2016 -0700"
      },
      "message": "Redraw if dirty during stopped when resumed\n\nChange-Id: I0034d1da7704de53c4ba3da3e8ef3109445f9e6a\nFixes: 28283031\n"
    },
    {
      "commit": "bc640cb016133f6ca489504de851703b2e57fbfb",
      "tree": "81f0e943738b10c6736c810ea974f45776a7a844",
      "parents": [
        "0f8427773edec30f3bbe609ea0d0131c465fa78e",
        "4bcf66030d2c28dd307a0b03522f24a58b0e2084"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Fri Jun 10 16:08:44 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Jun 10 16:08:44 2016 +0000"
      },
      "message": "Merge \\\"Fix framebuffer incomplete errors\\\" into nyc-dev\nam: 4bcf66030d\n\nChange-Id: If578de7d7ea10cceb0e19eb68e305432e4177d04\n"
    },
    {
      "commit": "d4fe4d3b30aaefcaaae6a6d1b8dc4bf59e034768",
      "tree": "4ae5c99ecc5a507f9851281f4cee907f877e6a78",
      "parents": [
        "fe089e3dc5683d98f327353bfacb9259d6acbf54"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Thu Jun 09 16:57:11 2016 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Thu Jun 09 17:05:27 2016 -0700"
      },
      "message": "Fix framebuffer incomplete errors\n\nbug:29127615\n\nPrimarily fixes case where 0 dimensioned layers could be\ncreated/updated. Additionally, adds more logging in incomplete\nframebuffer cases, if they still occur.\n\nChange-Id: Ib90dbbafd6905aca3c8f46e64064e13a308f713d\n"
    },
    {
      "commit": "c9493879d7b38b9d0b5b09aa3760966a3ca33eac",
      "tree": "6747a2fc380bd73ec3bdb4a9760add77561d892f",
      "parents": [
        "a57e95a6a351242941e5cef97aaaa1fb34f20a9d"
      ],
      "author": {
        "name": "Doris Liu",
        "email": "tianliu@google.com",
        "time": "Thu Jun 02 16:20:18 2016 -0700"
      },
      "committer": {
        "name": "Doris Liu",
        "email": "tianliu@google.com",
        "time": "Thu Jun 09 14:40:32 2016 -0700"
      },
      "message": "Support Keyframe definition for AVD on RT\n\nBUG: 27441613\nChange-Id: Iece386f65f3704d1b7caa2b3690a8d3048ccf6e2\n"
    },
    {
      "commit": "718cd3eb70703c43f29ca37907bbf0e153d8cca0",
      "tree": "cf1d4ce2d7c0a2ca19289257d3a8538ecfbaf8cb",
      "parents": [
        "a2da20d3344010b8f3ca6cc5fea265984662959c"
      ],
      "author": {
        "name": "Doris Liu",
        "email": "tianliu@google.com",
        "time": "Tue May 17 16:50:31 2016 -0700"
      },
      "committer": {
        "name": "Doris Liu",
        "email": "tianliu@google.com",
        "time": "Thu Jun 09 10:27:59 2016 -0700"
      },
      "message": "Handle hidden RT VectorDrawable animators\n\nThis CL changes the target of VD specific animators to VectorDrawable,\ninstead of RenderNode. The benefit of doing so is that animators can\nnow detect whether the animation is meaningful by checking whether\ntheir VD target is in the display list. If not, that means the VD is\nnot drawing for the current frame, in which case we can be smarter\nand more power efficient by removing the animator from the list and\nposting a delayed onFinished listener callback.\n\nBy setting VD as the animation target, when an ImageView decides to\nupdate its drawable from one AVD to something else, we\u0027ll be able\nto detect that the previous AVD is no longer in the display list,\nand stop providing animation pulse to the stale AVD, which is\nsomething we couldn\u0027t do previously.  This change also\nhandles the case where one AVD instance could be drawn in two\ndifferent views.\n\nBug: 27441375\nChange-Id: Iaad1ed09cfd526276b95db0dd695275c28e074e8\n"
    },
    {
      "commit": "e4e240f13f6c64049ef346b27d1cf78699fa800e",
      "tree": "624426f5bd1e981e12d0ff4ff82ac4a6c5957439",
      "parents": [
        "80354c4dfeae62fc120977d4fbdb8818f505b253",
        "ab3f8c2e3277af88935c8fa3bb7a36470d2b0116"
      ],
      "author": {
        "name": "Sergei Vasilinetc",
        "email": "sergeyv@google.com",
        "time": "Thu Jun 02 01:36:34 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 02 01:36:35 2016 +0000"
      },
      "message": "Merge \"HWUI: do not call glCopyTexSubImage2D on empty area.\" into nyc-dev"
    },
    {
      "commit": "ab3f8c2e3277af88935c8fa3bb7a36470d2b0116",
      "tree": "5a17f294461e88383a1b11b810c17a824605dc5d",
      "parents": [
        "760b5571582056e756d9fb1bc366247bc26a8e54"
      ],
      "author": {
        "name": "sergeyv",
        "email": "sergeyv@google.com",
        "time": "Wed Jun 01 14:53:35 2016 -0700"
      },
      "committer": {
        "name": "Sergei Vasilinetc",
        "email": "sergeyv@google.com",
        "time": "Wed Jun 01 23:55:32 2016 +0000"
      },
      "message": "HWUI: do not call glCopyTexSubImage2D on empty area.\n\nPrevious check .isEmpty() is not sufficient, because getWidth() may have\nvalue 0.5, so technically it is not empty, but when this size is passed\nto texture calls it is converted to uint_32 and it becomes zero.\n\nbug:28941093\nChange-Id: Ia7c2bf0340466d5376f235fb5da54ad2ddfa0a03\n"
    },
    {
      "commit": "21a608f27f1f7b9c0fcfbb982f290fed29cc1817",
      "tree": "0438084eaf408b36c0a856ec1dd9143143b54046",
      "parents": [
        "cd0aa9cda8e57c224b473198a345fb008fe30b5a",
        "aebbbef5658fea13b06586d39adca351135d9edb"
      ],
      "author": {
        "name": "Sergei Vasilinetc",
        "email": "sergeyv@google.com",
        "time": "Wed Jun 01 00:15:30 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 01 00:15:32 2016 +0000"
      },
      "message": "Merge \"HWUI: do nothing in case of empty layer\" into nyc-dev"
    },
    {
      "commit": "aebbbef5658fea13b06586d39adca351135d9edb",
      "tree": "0fad46abc98675cb05f5b3260cdbbffd77dc7993",
      "parents": [
        "6088cf67e8895b5ae09e8d99d57f9ae9279a2470"
      ],
      "author": {
        "name": "sergeyv",
        "email": "sergeyv@google.com",
        "time": "Tue May 31 14:18:02 2016 -0700"
      },
      "committer": {
        "name": "sergeyv",
        "email": "sergeyv@google.com",
        "time": "Tue May 31 14:18:02 2016 -0700"
      },
      "message": "HWUI: do nothing in case of empty layer\n\nbug:28862058\nChange-Id: I8e09a5c33d0eb00a829be4df706dab49cad48b1e\n"
    },
    {
      "commit": "028029730bf2d177f84316d2d444d409eba4b6cb",
      "tree": "bb801210f923601dfec6d17c887af835882dc92f",
      "parents": [
        "0ca3829d4c36c96099cd1d008036c252daf90b8e"
      ],
      "author": {
        "name": "Doris Liu",
        "email": "tianliu@google.com",
        "time": "Thu May 26 15:19:15 2016 -0700"
      },
      "committer": {
        "name": "Doris Liu",
        "email": "tianliu@google.com",
        "time": "Fri May 27 10:54:55 2016 -0700"
      },
      "message": "Copy native tree\u0027s property when mutate vector drawable\n\nWhen mutating vector drawables, we need to not only copy over\nthe VD tree structure, but also the properties of the VD tree,\nsuch as alpha.\n\nBug: 28974071\nChange-Id: I265e7e3cb92455b876cae248bcb9811230cb34f9\n"
    },
    {
      "commit": "c396f0f70ef40ea0fb42a0872a13f4c4e9a6a5f0",
      "tree": "04ae46460fd43f8e4d8c04487046be33140dce09",
      "parents": [
        "1cb6f9d8a4827d50e26bf83068a928e47c5c1f1e",
        "778e3b91acad6da04341d439f0c66a4fd09def4f"
      ],
      "author": {
        "name": "Michael Wright",
        "email": "michaelwr@google.com",
        "time": "Thu May 26 14:03:46 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 26 14:03:47 2016 +0000"
      },
      "message": "Merge \"DO NOT MERGE Remove Pointer Capture API\" into nyc-dev"
    },
    {
      "commit": "c9bb1a38d356087a4e5578307a6839eac0a1e6ee",
      "tree": "a50435aac169d3bc8897d9c3a1f50a05e3039868",
      "parents": [
        "2a4001ee62f3374d7fffed72d71f77c5a833c331"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue May 24 15:06:01 2016 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue May 24 15:06:01 2016 -0700"
      },
      "message": "Fix a translate issue with saveLayer\n\nBug: 28667141\n\nsaveLayer clips the layer to the size it needs to\nbe and will translate content if necessary, but\nthe drawLayerOp that results from that was not\ntranslated to handle the shifted draw content.\n\nThis fixes that\n\nChange-Id: I3c9ffd5d0282fa1b958bced94c25e9744281e9be\n"
    },
    {
      "commit": "76da37e1cf5c1381d9ccbaca86463fca52bd40f5",
      "tree": "1f81253db8a6e991f23fc30f5b71f88952100565",
      "parents": [
        "df9dee869c9efa18619b28691c88415b4f115df7"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Thu May 19 18:25:28 2016 -0700"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Fri May 20 15:04:09 2016 -0700"
      },
      "message": "Performance improvements in AssetManager\n\nChange the implementation of getLocales() to iterate the set of\nconfigurations using a templated method, instead of using the result\nof getConfigurations().\n\nAlso remove the check for AndroidManifest.xml when adding an asset path.\nThis is unneccessary.\n\nBug:28625993\nChange-Id: I16de5da598d0c371421d1dc8eee054dce9baf53a\n"
    },
    {
      "commit": "a1e0cebf3a18ac097d370e21d698e079f974bfff",
      "tree": "a23d89c1b3a81e1805122293f736b37cd9f5467f",
      "parents": [
        "005f9a73fbecdb8d0d05eb699d0f02d745110495",
        "f9d9ce7705475874c82af04eb9b208a7fb556792"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu May 19 15:03:33 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 19 15:03:36 2016 +0000"
      },
      "message": "Merge \"DO NOT MERGE Rename PointerIcon and Pointer Capture APIs\" into nyc-dev"
    },
    {
      "commit": "778e3b91acad6da04341d439f0c66a4fd09def4f",
      "tree": "2c01c845476a9362e81725f3bd657ea50f8a1162",
      "parents": [
        "f9d9ce7705475874c82af04eb9b208a7fb556792"
      ],
      "author": {
        "name": "Michael Wright",
        "email": "michaelwr@google.com",
        "time": "Mon May 16 15:21:03 2016 +0100"
      },
      "committer": {
        "name": "Michael Wright",
        "email": "michaelwr@google.com",
        "time": "Tue May 17 18:02:37 2016 +0100"
      },
      "message": "DO NOT MERGE Remove Pointer Capture API\n\nThe underlying implementation needs to be completely rethought. If a\nprocess crashed while you were in pointer capture mode, you were\npretty much stuck in it. If the mouse happened to move outside of\nyour bounds right before you called the API, you\u0027d never actually get\nan event (whatever it was hovering over would). There\u0027s no easy way\nfor the system to tell you when you enter or exit this mode because\nit doesn\u0027t actually track who the current request is from.\n\nThese are all solvable, but not in the N time frame. Maybe next time.\n\nBug: 26830970\nChange-Id: I03efd63c499b86dc278491ca3284566c1965581f\n"
    },
    {
      "commit": "f9d9ce7705475874c82af04eb9b208a7fb556792",
      "tree": "a8f7403f319741c752426d917b043ce0f554b614",
      "parents": [
        "cef3337cb5e27d4f571fb350be055c26d339833d"
      ],
      "author": {
        "name": "Michael Wright",
        "email": "michaelwr@google.com",
        "time": "Fri May 13 17:44:16 2016 +0100"
      },
      "committer": {
        "name": "Michael Wright",
        "email": "michaelwr@google.com",
        "time": "Tue May 17 18:02:32 2016 +0100"
      },
      "message": "DO NOT MERGE Rename PointerIcon and Pointer Capture APIs\n\nThis is a response to API council feedback.\n\nBug: 26830970\nChange-Id: Ia2d284b5c1ab8365bedfdc37d129be4b8146036b\n"
    },
    {
      "commit": "189e3e5ec5b698f1062fb98692fa75d3750148e0",
      "tree": "e6e708b179c64b90affd07aa60b118b6cddb5feb",
      "parents": [
        "23bf5462f05b33ce4390d8370520e43b74dbec09",
        "37413289478a965336239c731ebfea37ac4dde28"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon May 16 23:58:27 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon May 16 23:58:28 2016 +0000"
      },
      "message": "Merge \"Fix hw layer overdraw/update visualization\" into nyc-dev"
    },
    {
      "commit": "37413289478a965336239c731ebfea37ac4dde28",
      "tree": "8dc8f770de4f578c0d9be905efaa99a05d3bc8d6",
      "parents": [
        "abe26c8d69d7bfa5400e52ad4bb96020df0cdf68"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Thu May 12 17:48:51 2016 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Mon May 16 13:54:02 2016 -0700"
      },
      "message": "Fix hw layer overdraw/update visualization\n\nFixes: 28748255\n\nChange-Id: I83b531cdf5e4407fd17edd72d96e6189924926fa\n"
    },
    {
      "commit": "36ce80d5301664b4839ebd2f4570f062cbabf862",
      "tree": "d57d5ab77632d6127e4f290135c2f56c5cda8a33",
      "parents": [
        "e9f5d365bb740edade62290d1d835902a58cfdf2"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Thu May 12 17:50:34 2016 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Thu May 12 17:55:47 2016 -0700"
      },
      "message": "Fix Skia filter behavior test\n\nFixes: 28751534\n\nChange-Id: Ie5e2ee946b21702539fc0cc7358d0f9550e7d095\n"
    },
    {
      "commit": "45d6e7956544051c06a228755b7fd7c179bcdbfe",
      "tree": "8a63d911e56b8581566776c537fe3cd96293622d",
      "parents": [
        "6437dac3d929297450d1ac937800eb35a5e51ef2",
        "284b765e3c1647859d4dac772744e8859c033216"
      ],
      "author": {
        "name": "Sergei Vasilinetc",
        "email": "sergeyv@google.com",
        "time": "Wed May 11 21:34:18 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed May 11 21:34:19 2016 +0000"
      },
      "message": "Merge \"Draw textShadow always first.\" into nyc-dev"
    },
    {
      "commit": "284b765e3c1647859d4dac772744e8859c033216",
      "tree": "42ba9f7edf9cafa9cebb01c71794e6e544e1f8ea",
      "parents": [
        "77843a4213a9ce81e8aa4d6681e3c46350a31335"
      ],
      "author": {
        "name": "sergeyv",
        "email": "sergeyv@google.com",
        "time": "Tue May 10 13:58:12 2016 -0700"
      },
      "committer": {
        "name": "sergeyv",
        "email": "sergeyv@google.com",
        "time": "Wed May 11 10:30:14 2016 -0700"
      },
      "message": "Draw textShadow always first.\n\nInterleaving text and shadow rendering resulted in issuing draw commands from FontRenderer::renderDropShadow.\n\nbug: 28528923\nChange-Id: Ife2677f58180aaf10ec74d7c6efe5c44fe248daa\n"
    },
    {
      "commit": "8ac51d14b614ba6a12df2ba90d50a01f50d548aa",
      "tree": "b2afded5a45d6c5d14569b6691354d1613c1eb81",
      "parents": [
        "b42afe9be02b23c50c0479e93df2a853be7c369a"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Tue May 10 10:01:12 2016 -0700"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Tue May 10 10:45:52 2016 -0700"
      },
      "message": "Resource shared libraries: fix theme references\n\nTheme values that would reference other theme values would not work\nif they were declared in a shared library.\n\nWe now introduce a parallel resource type to TYPE_DYNAMIC_REFERENCE,\nTYPE_DYNAMIC_ATTRIBUTE, which allows us to lookup and resolve\ntheme value references from shared libraries.\n\nBug:28687378\nChange-Id: I4f2364e3e8b567679f90784fcaaea12b6b05e926\n"
    },
    {
      "commit": "f8892359b0ae07031160a71cf3f7e3a86604c2b1",
      "tree": "12976b50cca87e045636781f21de1a8ec5030c25",
      "parents": [
        "8e788d015cdb23077a9778e812f7de35819f8ed5",
        "aff230f6f9f9e44a5e111ba3f087d03f7a0e24f3"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu May 05 19:57:06 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 05 19:57:08 2016 +0000"
      },
      "message": "Merge \"Add layer tracing tags in new pipeline\" into nyc-dev"
    },
    {
      "commit": "aff230f6f9f9e44a5e111ba3f087d03f7a0e24f3",
      "tree": "7a4a4359d46f88f6b9c1ba902b40526ad9132cc7",
      "parents": [
        "08ca2e3a7593ced4967c56709a1fe675408d42dc"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Wed May 04 16:27:28 2016 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Wed May 04 16:27:29 2016 -0700"
      },
      "message": "Add layer tracing tags in new pipeline\n\nbug:28596354\n\nChange-Id: I351cb50c8c9ddfc73be73d28a1af94d2a8f9992e\n"
    },
    {
      "commit": "b2e36d7939610de538a6ec95a821b61b365b3073",
      "tree": "353f2081b27993d54e7a7dd8f682ae9eec11e474",
      "parents": [
        "976b9b04e4b38c3be2f91d6955e53874ad52cb10",
        "138c21fbec12bead3c7ca1f181c3fd35542ccb00"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed May 04 01:03:40 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed May 04 01:03:42 2016 +0000"
      },
      "message": "Merge \"Use LUT for computing final shadow alpha\" into nyc-dev"
    },
    {
      "commit": "138c21fbec12bead3c7ca1f181c3fd35542ccb00",
      "tree": "44e5b182b83c2532dd02f1ccb6d9c9186a48c4cf",
      "parents": [
        "08ca2e3a7593ced4967c56709a1fe675408d42dc"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Thu Apr 28 16:59:42 2016 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue May 03 14:36:29 2016 -0700"
      },
      "message": "Use LUT for computing final shadow alpha\n\nbug:27415250\n\nSignificantly reduces shadow fragment shader computation.\n\nChange-Id: Ie9b3c712700754b3734d0ae9cda8751c298fc59e\n"
    },
    {
      "commit": "7039adafa9a99f8eb4f8ccab9a6f9d2208454150",
      "tree": "7160f33f4f4616c9ecf78b06fc57f5ec4e04d45f",
      "parents": [
        "886909f6e96743fdb7fae87c7d4fbd81d85a57fd",
        "20136f31941e3b036bf25537f1dac364a58483c9"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue May 03 21:12:02 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue May 03 21:12:04 2016 +0000"
      },
      "message": "Merge \"Add LightingFilter behavior test\" into nyc-dev"
    },
    {
      "commit": "6543533f29d869d5cbbc1c403e4e0ed219fcc300",
      "tree": "2c3a23d40259c61ec64b901b8e008a47d3f4d319",
      "parents": [
        "13f9b398824b67be1f568c87f5595ad3e1d3085f",
        "f8d131cc8dc4ef675b8f8fc57dcc26062d575d32"
      ],
      "author": {
        "name": "Doris Liu",
        "email": "tianliu@google.com",
        "time": "Tue May 03 16:41:17 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue May 03 16:41:20 2016 +0000"
      },
      "message": "Merge \"Count native allocation for VD against Java heap\" into nyc-dev"
    },
    {
      "commit": "ded1d3c45be0307b175bd0cace12749e39814b84",
      "tree": "e177bcf0f8c6972395f26a4fda316e2e29f46a14",
      "parents": [
        "4a992cbde834fdf3770e34b21361b47f4786f65f"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon May 02 16:24:28 2016 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon May 02 16:24:28 2016 -0700"
      },
      "message": "Remove high-overhead low-signal trace section\n\nBug: 28519669\n\nThis trace tag makes shadows look way more expensive\nthan they actually are, particularly troublesome\nwhen tracing things with large number of shadows.\n\nChange-Id: Ib6558b1388edd4b006ec15127470cb9ab563f954\n"
    },
    {
      "commit": "f8d131cc8dc4ef675b8f8fc57dcc26062d575d32",
      "tree": "51c0be31e4c4e1761ce717d982fa59c5d67cc127",
      "parents": [
        "a1e7be375e618544e22287d0ee59f517536f95e1"
      ],
      "author": {
        "name": "Doris Liu",
        "email": "tianliu@google.com",
        "time": "Fri Apr 29 18:41:29 2016 -0700"
      },
      "committer": {
        "name": "Doris Liu",
        "email": "tianliu@google.com",
        "time": "Mon May 02 15:34:40 2016 -0700"
      },
      "message": "Count native allocation for VD against Java heap\n\nThere are two parts to VD\u0027s native allocation:\n1) VD\u0027s internal data structure (i.e. groups, paths, etc that make\n   up of the VD tree). This structure can change, when a VD is used\n   to load a different drawable resource.\n2) Two bitmap caches, not both of which will necessarily be allocated\n   The size of the bitmap cache depends on canvas matrix and drawable\n   bounds, and therefore can often change.\n\nWe need to count the native allocation from the above against Java heap.\n\nBug: 26269056\nChange-Id: If833aedcf7f3efe00ea73a41ddccb1b48066ffd8\n"
    },
    {
      "commit": "20136f31941e3b036bf25537f1dac364a58483c9",
      "tree": "1a8a49e60a8f2992995ae89cf08006a739bc9a7a",
      "parents": [
        "08ca2e3a7593ced4967c56709a1fe675408d42dc"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Fri Apr 29 17:38:31 2016 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Mon May 02 09:43:30 2016 -0700"
      },
      "message": "Add LightingFilter behavior test\n\nbug:28519669\n\nChange-Id: I81ca4109bae04387f2eb73374d0f11821745fea1\n"
    },
    {
      "commit": "6d42b5c6e399a10799d2bba3f7113dd198cbcae6",
      "tree": "d003e4cc33b4114b5bc8ff7b0c7a3118cf8a2431",
      "parents": [
        "a1c06675dd2a83ce445f27b46cddab80f8c743e6",
        "2f69d6d4fdd4994912e5515016421625d1e1c4ec"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Fri Apr 29 14:49:19 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 29 14:49:21 2016 +0000"
      },
      "message": "Merge \"Support transform\u0027d GraphicBuffers\" into nyc-dev"
    },
    {
      "commit": "2f69d6d4fdd4994912e5515016421625d1e1c4ec",
      "tree": "66c4345be78f555c646506e7a41111951087f229",
      "parents": [
        "f3a51d652ff9fbcb5a41c71c801de71a3b1ece78"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu Apr 28 13:18:51 2016 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu Apr 28 13:32:27 2016 -0700"
      },
      "message": "Support transform\u0027d GraphicBuffers\n\nBug: 28428955\nChange-Id: I23e2fc9b96a67c7cfda42d9d7319e478194a7fa7\n"
    },
    {
      "commit": "7134ce35406f942dd640a95583430b39e770f0da",
      "tree": "8e20bbd6fcb41e4af7bacc93c4dc08f4a3e08cc9",
      "parents": [
        "5bddeaa9bce6325c900eeabaa6a1cdfaf83910c6"
      ],
      "author": {
        "name": "Shammi Khattar",
        "email": "skhattar@codeaurora.org",
        "time": "Wed Apr 06 15:33:03 2016 -0700"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Thu Apr 28 15:07:34 2016 +0000"
      },
      "message": "ZipUtils: Fix wrong timestamps when getEntryInfo\n\n\"tm_mon\" format should align with \"ZipEntry::setModWhen\" in aapt.\n\"tm_isdst\" should be initialized, or it will because random value\nand cause error in function mktime().\n\nBUG:28021145\n\n(cherry picked from commit bb0eb3f4cb33c077b296a18555a9a1a966ff696b)\n\nChange-Id: Ia39cf63fcd4bb39c24af080562960279106f526c\n"
    },
    {
      "commit": "8438a7297c16c1ee73f4e67efef18ad9062e15f1",
      "tree": "40c1067929c6a2cb03320b24386b0337ca784328",
      "parents": [
        "0d7bddcbdecf62a72b8a232930de538dff2e93a9",
        "e98a046d3110eb2ff11a17f4ff27764b803a1379"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Wed Apr 27 20:52:49 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Apr 27 20:52:51 2016 +0000"
      },
      "message": "Merge \"Fix oval positioning when drawn with patheffect\" into nyc-dev"
    },
    {
      "commit": "7f209d37f17d4df09475137c38b84a3338c84023",
      "tree": "07856ff96c1e32df08aef9ad73b7b8216d16f9c0",
      "parents": [
        "9fa8b54589b68dc6da3a7201cad1fc43e01e59e3",
        "e94cbc76d560a157c0a0d47181b4ed2a0aadbeb1"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed Apr 27 14:36:51 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Apr 27 14:36:53 2016 +0000"
      },
      "message": "Merge \"API tweaks to PixelCopy and make it public\" into nyc-dev"
    },
    {
      "commit": "e94cbc76d560a157c0a0d47181b4ed2a0aadbeb1",
      "tree": "f0f09618a3bcf57851147fb9c4082f99ae023f9f",
      "parents": [
        "a5bbbe55b74d3a835b64fa18959f487da2df967e"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Apr 25 13:03:44 2016 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue Apr 26 15:41:43 2016 -0700"
      },
      "message": "API tweaks to PixelCopy and make it public\n\nBug: 27708453\nChange-Id: I81667ce42f9ca1c1a13e1e61299927900845fc84\n"
    },
    {
      "commit": "e98a046d3110eb2ff11a17f4ff27764b803a1379",
      "tree": "69a2087dda50416b583367b6b4948773b59d4cb4",
      "parents": [
        "976f28b926964889666a72332b8483f81c777f60"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue Apr 26 15:35:20 2016 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue Apr 26 15:38:33 2016 -0700"
      },
      "message": "Fix oval positioning when drawn with patheffect\n\nFixes: 28396277\n\nChange-Id: I9e21696d81d7cd219f3eaa081bf3d9ba988fe051\n"
    },
    {
      "commit": "b7d1657016d5f5b384e231979c6dcf18b0334ca4",
      "tree": "98a5fc78605bdf8ec622878f5b814a52b1a3a88b",
      "parents": [
        "987609f5a7bd8e18559334aa0260e6614520af13",
        "92a5d4b99a5554adca0e94627d44d2bd7f4f0bc0"
      ],
      "author": {
        "name": "Sergei Vasilinetc",
        "email": "sergeyv@google.com",
        "time": "Tue Apr 26 21:39:07 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 26 21:39:09 2016 +0000"
      },
      "message": "Merge \"Stop always set OffsetByFudgeFactor in renderVertexBuffer\" into nyc-dev"
    }
  ],
  "next": "a5bbbe55b74d3a835b64fa18959f487da2df967e"
}
