)]}'
{
  "log": [
    {
      "commit": "7c0ae0f58b9f258560088b670d3a4cb3ec5d832a",
      "tree": "dcbf7f79e0d6ad941c77cfc0e70299295678c76a",
      "parents": [
        "8e3b1a63f9cd76a71ecbfc8c6a0c68b4cbecab90"
      ],
      "author": {
        "name": "Mike Reed",
        "email": "reed@google.com",
        "time": "Mon Apr 17 17:05:48 2017 -0400"
      },
      "committer": {
        "name": "Mike Reed",
        "email": "reed@google.com",
        "time": "Tue Apr 18 10:22:42 2017 -0400"
      },
      "message": "bitmaps and pixelrefs no longer need lock/unlock\n\nTest: covered by CtsGraphicsTestCases and hwui_unit_tests\n\nChange-Id: I42a25961a2eb3755d2fd22a617aa21a24ec0994f\n"
    },
    {
      "commit": "d1794cdbb4183774ac68e9d445ca87835fbe6461",
      "tree": "9d6b930c88fceab8792cadec7e6ea6dc58b116da",
      "parents": [
        "7a7e415967ace2d554cedb4ceb76123324c0ef94"
      ],
      "author": {
        "name": "Keun-young Park",
        "email": "keunyoung@google.com",
        "time": "Tue Apr 04 12:21:19 2017 -0700"
      },
      "committer": {
        "name": "Keun-young Park",
        "email": "keunyoung@google.com",
        "time": "Tue Apr 04 22:21:32 2017 +0000"
      },
      "message": "show different timing log for shutdown animation\n\nbug: 36873098\nTest: reboot and check log\nChange-Id: Ic3adaba383cc29dba039a7fb5adcb01d4c0c963b\n"
    },
    {
      "commit": "b593842063770f9e75c623a4bc7bb41b4c1830c6",
      "tree": "25c843fbdf41d802f73265c700e6574b60508b85",
      "parents": [
        "3f2bbcbe92cd2500746153ed2378278c1b2a53e2"
      ],
      "author": {
        "name": "Keun-young Park",
        "email": "keunyoung@google.com",
        "time": "Thu Mar 23 13:46:24 2017 -0700"
      },
      "committer": {
        "name": "Keun-young Park",
        "email": "keunyoung@google.com",
        "time": "Mon Apr 03 14:43:14 2017 -0700"
      },
      "message": "support shutdown animation from bootanim\n\n- init will set sys.powerctl property and run bootanim.\n- Use /oem/media/shutdownanimation.zip or\n  /system/media/shutdownanimation.zip for animation file.\n  If none of them exist, android animation will be used.\n- Disable audio playing for shutdown animation.\n- Disable TimeCheckThread for shutdown animation. It\n  accesses /data partition and can block umount.\n\nbug: 36526187\nTest: many reboots\n\nChange-Id: If02c73cda2015317d88d056cd45201208da49946\n"
    },
    {
      "commit": "dbdda2b60ec440f2b140343e08aeff2d9c6cbcc5",
      "tree": "0193bdb46799da0a8686df09e843d45eaaa39079",
      "parents": [
        "cbfae3e15c5863dc6e8ed2294c54ecbfaf55d412"
      ],
      "author": {
        "name": "Wei Wang",
        "email": "wvw@google.com",
        "time": "Tue Feb 07 18:59:58 2017 -0800"
      },
      "committer": {
        "name": "Wei Wang",
        "email": "wvw@google.com",
        "time": "Tue Feb 07 18:59:58 2017 -0800"
      },
      "message": "BootAnimation: change log format when animation starts\n\nBug: 34499826\nTest: on marlin\nChange-Id: I719485d399406abc08360620c09d90f4b87934a6\n"
    },
    {
      "commit": "a90c54c90e1cb668cd74f218370f868763bbd009",
      "tree": "514c887267cf35b61d0401cf7f3f139719aab641",
      "parents": [
        "ddb80216b9d536be0f2af287f44a41872aa1d809"
      ],
      "author": {
        "name": "Wei Wang",
        "email": "wvw@google.com",
        "time": "Thu Feb 02 11:35:21 2017 -0800"
      },
      "committer": {
        "name": "Wei Wang",
        "email": "wvw@google.com",
        "time": "Thu Feb 02 20:17:54 2017 -0800"
      },
      "message": "BootAnimation: Add log when animation starts\n\nBug: 34499826\nTest: on marlin\nChange-Id: I04e4663daf4b30e2ab3c1ddda215127cf7faef9f\n"
    },
    {
      "commit": "a917353da0ed6079d45487a8c96b892c5d754637",
      "tree": "fc1514cfdd649543301b3b1ead2690a03d5b7a39",
      "parents": [
        "45250aca6d55988a58fdcb4ba0e8a58d36b1f34b"
      ],
      "author": {
        "name": "Geoffrey Pitsch",
        "email": "gpitsch@google.com",
        "time": "Tue Jul 19 14:56:39 2016 -0400"
      },
      "committer": {
        "name": "Wei Wang",
        "email": "wvw@google.com",
        "time": "Tue Jan 31 15:49:06 2017 -0800"
      },
      "message": "Initialize bootanimation sound on separate thread\n\nBlocks when it\u0027s time to play the first sound.\nBug: 30189706\nTest: on marlin\nChange-Id: Ib3666fbfb5f109c633ed59edad4a283b8ada8ae2\n"
    },
    {
      "commit": "190495a690124f3f1ef196421c11c83cdcb88951",
      "tree": "051f836b5f35e9ccdc20b4d1e7a3756c942de0e4",
      "parents": [
        "7a5ad2640625862533ed8cb7855fbe94fecc33b0",
        "a8d2c6457fe339acaae256510afbe63e39147d62"
      ],
      "author": {
        "name": "Dmitri Plotnikov",
        "email": "dplotnikov@google.com",
        "time": "Mon Dec 12 21:37:29 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Dec 12 21:37:33 2016 +0000"
      },
      "message": "Merge \"Adding \"quiescent\" reboot mechanism to support STB operators\""
    },
    {
      "commit": "a8d2c6457fe339acaae256510afbe63e39147d62",
      "tree": "75b34c4dbbdd7d50e962e806cddedfe35f53a174",
      "parents": [
        "05bcd469515e48650c71b09472b84b692388f40b"
      ],
      "author": {
        "name": "Dmitri Plotnikov",
        "email": "dplotnikov@google.com",
        "time": "Thu Dec 08 10:49:24 2016 -0800"
      },
      "committer": {
        "name": "Dmitri Plotnikov",
        "email": "dplotnikov@google.com",
        "time": "Thu Dec 08 10:49:24 2016 -0800"
      },
      "message": "Adding \"quiescent\" reboot mechanism to support STB operators\n\nBug: 31681185\nChange-Id: Iada4dd4624f0221e5b59440da2718da980742720\nTest: with SampleLeanbackDeviceAdmin.  CTS test forthcoming\n"
    },
    {
      "commit": "53dd8b80a501f9bdb2d5db113417a3fede4e9db7",
      "tree": "a042718c24778c4a7923296fa2cf15ee31d4b253",
      "parents": [
        "48829f90d6b60bb08a14d3b2aa12d8422f3aafce",
        "e2ca6b465eb20a9a4c39bfa9906295c5508309b1"
      ],
      "author": {
        "name": "Damien Bargiacchi",
        "email": "drb@google.com",
        "time": "Tue Dec 06 18:47:46 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Dec 06 18:47:46 2016 +0000"
      },
      "message": "Centre clock text on visible characters instead of : character am: 45a7644004 am: 04f17be3e6\nam: e2ca6b465e\n\nChange-Id: If3edabead7835e9949f1d1601cbe7cb59c0bbc4c\n"
    },
    {
      "commit": "04f17be3e6a6b8594a05d9e4828a40fbb20cda75",
      "tree": "8957e10a9131e832d4d783a1df126a8675e04b71",
      "parents": [
        "99db203f2942381b8c7765679bb0d44dbe0ec952",
        "45a764400485fb6fb9b0d3566e24feac446e616c"
      ],
      "author": {
        "name": "Damien Bargiacchi",
        "email": "drb@google.com",
        "time": "Tue Dec 06 18:32:48 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Dec 06 18:32:48 2016 +0000"
      },
      "message": "Centre clock text on visible characters instead of : character\nam: 45a7644004\n\nChange-Id: Ibb152f2217297ab0b0aa1ec622e59ae8ae815d59\n"
    },
    {
      "commit": "45a764400485fb6fb9b0d3566e24feac446e616c",
      "tree": "c90524dbb24e28ed361d4d2ec5cd1d3ebfb92283",
      "parents": [
        "5b64f51a1c5ddf809f504028944aff823ea6f114"
      ],
      "author": {
        "name": "Damien Bargiacchi",
        "email": "drb@google.com",
        "time": "Mon Dec 05 18:02:18 2016 -0800"
      },
      "committer": {
        "name": "Damien Bargiacchi",
        "email": "drb@google.com",
        "time": "Mon Dec 05 18:02:18 2016 -0800"
      },
      "message": "Centre clock text on visible characters instead of : character\n\nBug: 33340845\nChange-Id: I235ad7c6aafc62daa55242f81df2d076f27c56df\n"
    },
    {
      "commit": "b1df48d32632d0ba5a2389fb9fad2943dcb55562",
      "tree": "7a1135a5911de2bbaa7bb6a4954fbcca71b71632",
      "parents": [
        "201cf4fb27a42237cc70fba44f05195e6a38e4cb",
        "466bb400bbc7a249f6598d8dc24ac685a43df74d"
      ],
      "author": {
        "name": "Baligh Uddin",
        "email": "baligh@google.com",
        "time": "Tue Nov 22 17:19:45 2016 -0800"
      },
      "committer": {
        "name": "Baligh Uddin",
        "email": "baligh@google.com",
        "time": "Tue Nov 22 17:19:45 2016 -0800"
      },
      "message": "Merge remote-tracking branch \u0027goog/cw-f-dev\u0027 into fix_merger\n\nBug: 32849428\n\n* goog/cw-f-dev: (98 commits)\n  Revert \"Catch KeyStoreException for setting profile lock\"\n  Fix createConfirmDeviceCredentialIntent for wear for CTS.\n  Fix default dialog background colour for watch devices.\n  Catch KeyStoreException for setting profile lock\n  Add cross-links between FINE and COARSE location permissions. bug: 25371600\n  Fixed a bug with the emergency affordance in multi user\n  Zygote: Additional whitelists for runtime overlay / other static resources.\n  Import translations. DO NOT MERGE\n  Import translations. DO NOT MERGE\n  Import translations. DO NOT MERGE\n  Import translations. DO NOT MERGE\n  Import translations. DO NOT MERGE\n  Import translations. DO NOT MERGE\n  Import translations. DO NOT MERGE\n  Zygote : Block SIGCHLD during fork.\n  colors: add missing accent_material_{700,50} resources.\n  Import translations. DO NOT MERGE\n  Import translations. DO NOT MERGE\n  Zygote : Block SIGCHLD during fork.\n  DO NOT MERGE ANYWHERE Revert \"DO NOT MERGE ANYWHERE libhwui: make setSurface asynchronous\"\n  ...\n\nChange-Id: I63468da5bfa21ed9ac5985bbdbf3a61d4c389aa0\n"
    },
    {
      "commit": "f5970785adc7300a764212e8e84223489100f17c",
      "tree": "eebccf3102d59db21ec62db87f14575ea16fe067",
      "parents": [
        "5d6a31e7c85cc08efda0a1d4cf573e8cba53ddce",
        "bb2e8993f03121297f8c7e5a8445ba5f350e7de8"
      ],
      "author": {
        "name": "Damien Bargiacchi",
        "email": "drb@google.com",
        "time": "Tue Nov 01 01:56:55 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Nov 01 01:56:55 2016 +0000"
      },
      "message": "Allow boot clock to be toggled between 12 and 24 hour format am: 9071db1d37 am: 3400dffcad\nam: bb2e8993f0\n\nChange-Id: I8f4ccc9e82e5539c615a8388a002d5ab196f77f9\n"
    },
    {
      "commit": "bb2e8993f03121297f8c7e5a8445ba5f350e7de8",
      "tree": "cc63be3374191f88f6511d6f35978eb61051b8be",
      "parents": [
        "9a9274186e8d88ec3e5f62c2bafc56f202c174e5",
        "3400dffcad667839ed8af0410a9296dcd059e239"
      ],
      "author": {
        "name": "Damien Bargiacchi",
        "email": "drb@google.com",
        "time": "Tue Nov 01 01:52:09 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Nov 01 01:52:09 2016 +0000"
      },
      "message": "Allow boot clock to be toggled between 12 and 24 hour format am: 9071db1d37\nam: 3400dffcad\n\nChange-Id: Ic4df64d163845547416ef1280ae2ba2f1b41efda\n"
    },
    {
      "commit": "9071db1d370573bad80f127898e34066f56c4e64",
      "tree": "896bf13aa091dc6142ede8d76dfe507497dcda72",
      "parents": [
        "6affbde5560921b0d4a83c30d98fdca208fea7ef"
      ],
      "author": {
        "name": "Damien Bargiacchi",
        "email": "drb@google.com",
        "time": "Fri Oct 28 17:38:22 2016 -0700"
      },
      "committer": {
        "name": "Damien Bargiacchi",
        "email": "drb@google.com",
        "time": "Fri Oct 28 18:04:48 2016 -0700"
      },
      "message": "Allow boot clock to be toggled between 12 and 24 hour format\n\nBug: 32461548\nChange-Id: I414192e6d9f3ae44267f4a360e35647f18c420b4\n"
    },
    {
      "commit": "264599f10d6101d437d0917758a5b98f5bc446d5",
      "tree": "03b0dfc6ad6171b51fa3217ab560680af4cc9efe",
      "parents": [
        "12f365bab43b432a5defcf90214a9482494bda8f",
        "57374aa7353262e186933d4d96198468c4edfc2b"
      ],
      "author": {
        "name": "Geoffrey Pitsch",
        "email": "gpitsch@google.com",
        "time": "Wed Sep 14 19:23:05 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Sep 14 19:23:05 2016 +0000"
      },
      "message": "Support multichannel sounds in bootanim am: db90897b5f am: 023a9185a4\nam: 57374aa735\n\nChange-Id: If5af3c4c2e2746637399edfa4739efd19499fc42\n"
    },
    {
      "commit": "57374aa7353262e186933d4d96198468c4edfc2b",
      "tree": "3bc213bf7e0dd546ff4a3a71a5e1e0d52740e857",
      "parents": [
        "6ef430163109d3febb05ea970bf0b5b4f1ec6621",
        "023a9185a403f5c163baaab343f6fa789051c1f2"
      ],
      "author": {
        "name": "Geoffrey Pitsch",
        "email": "gpitsch@google.com",
        "time": "Tue Sep 13 16:35:26 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Sep 13 16:35:26 2016 +0000"
      },
      "message": "Support multichannel sounds in bootanim am: db90897b5f\nam: 023a9185a4\n\nChange-Id: I5543cefe87ec93f6c319337e0a2c692d28ec893a\n"
    },
    {
      "commit": "023a9185a403f5c163baaab343f6fa789051c1f2",
      "tree": "72e4eef39cd165370100782573247d78892736f9",
      "parents": [
        "d3c15ecb803c606d9536695354424a330b06ae58",
        "db90897b5fa23aa46ce50494e0fb4808948f4524"
      ],
      "author": {
        "name": "Geoffrey Pitsch",
        "email": "gpitsch@google.com",
        "time": "Tue Sep 13 16:27:14 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Sep 13 16:27:14 2016 +0000"
      },
      "message": "Support multichannel sounds in bootanim\nam: db90897b5f\n\nChange-Id: Ied6b429e05d5d77c76e9bbf34a7f13104be8bb8e\n"
    },
    {
      "commit": "f67b317c102db72182046ec2a2cffe2331017709",
      "tree": "0608a2c987c8a0305c732977971fd9a50fd75479",
      "parents": [
        "f098c262b1afcdb576d721361de3db3ef2f96fe1",
        "6574d9ca46bcdc1db970309baf4ad49532370542"
      ],
      "author": {
        "name": "Damien Bargiacchi",
        "email": "drb@google.com",
        "time": "Wed Sep 07 20:17:14 2016 -0700"
      },
      "committer": {
        "name": "Damien Bargiacchi",
        "email": "drb@google.com",
        "time": "Wed Sep 07 20:17:14 2016 -0700"
      },
      "message": "resolve merge conflicts of 6574d9c to master\n\nChange-Id: I9b97396a03f80507d71a52d281f88f686712b129\n"
    },
    {
      "commit": "6574d9ca46bcdc1db970309baf4ad49532370542",
      "tree": "e7b22bb21aae93e23f2c6d341eed037db7e5a8a8",
      "parents": [
        "17ecfdec717bcaa4a31051f293029e8ff53dd165",
        "0e3d2ab6d2988a1ae70d13d6d77a0f8109eb66e1"
      ],
      "author": {
        "name": "Damien Bargiacchi",
        "email": "drb@google.com",
        "time": "Thu Sep 08 02:19:57 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Sep 08 02:19:57 2016 +0000"
      },
      "message": "Allow custom fonts in the boot animaiton zip file\nam: 0e3d2ab6d2\n\nChange-Id: I13d1e6a707ad941a267b89483e6dc029398a2d82\n"
    },
    {
      "commit": "0e3d2ab6d2988a1ae70d13d6d77a0f8109eb66e1",
      "tree": "48dad4babbef6b742c0932b958ea4274aa63e446",
      "parents": [
        "9925ae6e3875f2d88c82f6de4c2aeebfe983d152"
      ],
      "author": {
        "name": "Damien Bargiacchi",
        "email": "drb@google.com",
        "time": "Mon Aug 29 04:11:19 2016 -0700"
      },
      "committer": {
        "name": "Damien Bargiacchi",
        "email": "drb@google.com",
        "time": "Mon Sep 05 04:51:45 2016 -0700"
      },
      "message": "Allow custom fonts in the boot animaiton zip file\n\nChange the font format to be a 16x6 grid of characters\n\nBug: 29580875\nChange-Id: Ia468307cb9770436e8ae865c91acda23a71bde05\n"
    },
    {
      "commit": "db90897b5fa23aa46ce50494e0fb4808948f4524",
      "tree": "19edb488dd6fc2e0c8625d45e6cf54c6866092c6",
      "parents": [
        "edaaef304aa7e72ac3f8a0b586b5513fd4df0267"
      ],
      "author": {
        "name": "Geoffrey Pitsch",
        "email": "gpitsch@google.com",
        "time": "Wed Aug 24 14:35:09 2016 -0400"
      },
      "committer": {
        "name": "Geoffrey Pitsch",
        "email": "gpitsch@google.com",
        "time": "Wed Aug 24 16:59:16 2016 -0400"
      },
      "message": "Support multichannel sounds in bootanim\n\nManually handle the 1-2 channel cases to avoid the warning\nlog when 0 is passed as the channelMask.\n\nBug: 30820152\nChange-Id: I4d2c8736ff442fae9a4c5eb16061646fb53151b6\n"
    },
    {
      "commit": "fa88d564641bb10710b2123db883697cbfa5937b",
      "tree": "51d849527d761719d6eeef9cfce2e67ac37f7b27",
      "parents": [
        "a6916dc04106eb8eff8c1a07778f259a7ffbe271",
        "9e7b3f657f4f25a5ad65d028b7b100e36f2162c8"
      ],
      "author": {
        "name": "Geoffrey Pitsch",
        "email": "gpitsch@google.com",
        "time": "Thu Aug 11 13:22:28 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Aug 11 13:22:28 2016 +0000"
      },
      "message": "Suppress Boot sound for non-standard scenarios. am: 290c4350ed am: 854f8cecf7\nam: 9e7b3f657f\n\nChange-Id: Id7d1cb29fa1e1a416d56b4b16a73576a458216c4\n"
    },
    {
      "commit": "9e7b3f657f4f25a5ad65d028b7b100e36f2162c8",
      "tree": "e5ab6a8cb9b93a5cb56b8d66474bf3ac33430c5b",
      "parents": [
        "647ebe7572df11d41dd533469b7286a6e8009ca4",
        "854f8cecf7d9510f271d0d362a064212d7291664"
      ],
      "author": {
        "name": "Geoffrey Pitsch",
        "email": "gpitsch@google.com",
        "time": "Thu Aug 11 13:13:04 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Aug 11 13:13:04 2016 +0000"
      },
      "message": "Suppress Boot sound for non-standard scenarios. am: 290c4350ed\nam: 854f8cecf7\n\nChange-Id: I182a77ce9fec2ae3f900a544ac4af8064240a06b\n"
    },
    {
      "commit": "290c4350edc66de5663e27c54e694c8ee8cf0e0e",
      "tree": "97961acbf248ba0f5bdfd7e1336fea4101cb8b17",
      "parents": [
        "3025e6be7fae8d7fa3eebf583c7d866a38a56432"
      ],
      "author": {
        "name": "Geoffrey Pitsch",
        "email": "gpitsch@google.com",
        "time": "Tue Aug 09 14:35:10 2016 -0400"
      },
      "committer": {
        "name": "Geoffrey Pitsch",
        "email": "gpitsch@google.com",
        "time": "Wed Aug 10 10:52:48 2016 -0400"
      },
      "message": "Suppress Boot sound for non-standard scenarios.\n\nBlacklisted bootreasons will not play a sound (e.g. \"kernel_panic\")\nIf boot has already completed, assume this is a runtime restart and\nskip the sound.\n\nBug: 30654343\nChange-Id: I41b1829a93c0d9a63c69aea2d1614eaa18b72230\n"
    },
    {
      "commit": "d6536e4d22b910864431c2f4999230b15df9620d",
      "tree": "35bee2c1326762006324e15963e83ae91511f5eb",
      "parents": [
        "a88fdbb46b640cfb37c002bf58ef135c19725295",
        "5e8bb86e8cca04a810806d650f544908726b6c50"
      ],
      "author": {
        "name": "Geoffrey Pitsch",
        "email": "gpitsch@google.com",
        "time": "Tue Aug 09 17:31:06 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Aug 09 17:31:06 2016 +0000"
      },
      "message": "BootAnimation system property to play sound. am: 305087991d am: 8e4b8a988f\nam: 5e8bb86e8c\n\nChange-Id: Ibcf73b3245b63492c1feaa1494271c181c86c59e\n"
    },
    {
      "commit": "5e8bb86e8cca04a810806d650f544908726b6c50",
      "tree": "8e7d315d59ff1a945056fd53708f1356546dc874",
      "parents": [
        "cfc82ac0748d5d2ad760315ca2a31266b9bc89ee",
        "8e4b8a988f43b54ebf7ae828f8915c05aaa73f1b"
      ],
      "author": {
        "name": "Geoffrey Pitsch",
        "email": "gpitsch@google.com",
        "time": "Tue Aug 09 17:22:51 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Aug 09 17:22:51 2016 +0000"
      },
      "message": "BootAnimation system property to play sound. am: 305087991d\nam: 8e4b8a988f\n\nChange-Id: Icd062a5b3eb9da9d9c7bd3c5d7dd4e40f75c3a1e\n"
    },
    {
      "commit": "305087991d1b88d98c5e5e03fcf5a6a6e93ad356",
      "tree": "caa4d7bc52eb5fabc2896cbe37d5eb0978d4f4fd",
      "parents": [
        "aa1e49c168321b6ca5eff7fa2c45c5751bea4724"
      ],
      "author": {
        "name": "Geoffrey Pitsch",
        "email": "gpitsch@google.com",
        "time": "Fri Jul 22 17:04:21 2016 -0400"
      },
      "committer": {
        "name": "Geoffrey Pitsch",
        "email": "gpitsch@google.com",
        "time": "Mon Aug 08 16:18:21 2016 -0400"
      },
      "message": "BootAnimation system property to play sound.\n\nOptional system property \"persist.sys.bootanim.play_sound\"\nIf nonexistent, default behavior plays the sound.\n\nBug: 30690353\nChange-Id: Ie5ed456d891632be5ec8be255ac7c1193753c741\n"
    },
    {
      "commit": "b5f8fe16296e5bb4541833a04dee499ac94c496c",
      "tree": "7d8a32439db1f178d43523767b251aa8befd3f3f",
      "parents": [
        "25a8ff7ca3ba378c04e344feb52c49394fe70f89",
        "af2a8a9ca6d08f673205140c2ae114aa0373b79a"
      ],
      "author": {
        "name": "Jesse Hall",
        "email": "jessehall@google.com",
        "time": "Mon Jul 25 04:05:30 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Jul 25 04:05:30 2016 +0000"
      },
      "message": "Merge \\\\\\\\\"bootanimation: Call eglReleaseThread in threadLoop\\\\\\\\\" am: 189bbd9f6d am: 9495872add am: 41ebe86049\nam: af2a8a9ca6\n\nChange-Id: Ic03306aadf473d0c5cf6954288c57b759186c807\n"
    },
    {
      "commit": "af2a8a9ca6d08f673205140c2ae114aa0373b79a",
      "tree": "77d23d3a57023b42e514010c045bf85904bece75",
      "parents": [
        "d71f222400c4d58458152bdd5d01ac0c02ef25e9",
        "41ebe86049172063ec0e000ccc631b3dcb835148"
      ],
      "author": {
        "name": "Sai Kiran Korwar",
        "email": "skirank@nvidia.com",
        "time": "Mon Jul 25 03:57:18 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Jul 25 03:57:18 2016 +0000"
      },
      "message": "Merge \\\\\\\"bootanimation: Call eglReleaseThread in threadLoop\\\\\\\" am: 189bbd9f6d am: 9495872add\nam: 41ebe86049\n\nChange-Id: I7927f23aa76cc17221e557d7f36b95bc23696a1b\n"
    },
    {
      "commit": "9495872addfe27a68500b39deb9fab6e2b1d3eff",
      "tree": "582661f5da205ffd6486a0cee7c7bb73ab3b376a",
      "parents": [
        "05160d70d14180fef3782a63dff2e822b51c3cf5",
        "189bbd9f6d4e1871da1639c96f5eb65ed3a30f2c"
      ],
      "author": {
        "name": "Sai Kiran Korwar",
        "email": "skirank@nvidia.com",
        "time": "Mon Jul 25 03:46:44 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Jul 25 03:46:44 2016 +0000"
      },
      "message": "Merge \\\"bootanimation: Call eglReleaseThread in threadLoop\\\"\nam: 189bbd9f6d\n\nChange-Id: Iaa5b3e60548ee2cce19cb4c31a6274d0ad877189\n"
    },
    {
      "commit": "877ed1521f57082af2636c8076ff35462773c9f2",
      "tree": "0412895c903307392c700d5b14f4c22534ac013e",
      "parents": [
        "ede77dc2bbb1ef43bc72c30b64a66bf6a2a8b3d3",
        "88e23db1ee4a9a96dfe66305cac957b28f567335"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jul 22 20:42:32 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Jul 22 20:42:32 2016 +0000"
      },
      "message": "bootanimation: fix glitchy playback am: 197e47979a\nam: 88e23db1ee\n\nChange-Id: Id402ff19c495e0813dd32cb4897033760daead0e\n"
    },
    {
      "commit": "197e47979a5c76d817d40039678afdd4f68c2a27",
      "tree": "eb4a7470dbd59317e87701b32b014370a1f8811a",
      "parents": [
        "e86da3bc62e2ec650d69477ab7655aa7255be473"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jul 21 18:17:15 2016 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jul 22 11:31:25 2016 -0700"
      },
      "message": "bootanimation: fix glitchy playback\n\nDo not use low latency playback mode to be more\nrobust against scheduling problems during boot phase.\n\nAlso:\n- remove unused reverb on output mix\n- fix WAV file parser.\n\nBug: 30277818\nChange-Id: I1e15d3003a25c93d4995006885b32a754d17343f\n"
    },
    {
      "commit": "559e3bce852215572ca2d66865a02ed31dc52e5c",
      "tree": "199bebb9a220219404308f56fa953a2d2a1da4f3",
      "parents": [
        "b20f4f0efb179598783e62117b1f9f5b111250ba",
        "bbb9d56a0e1e00cf04a702a46965ea778a7d5366"
      ],
      "author": {
        "name": "Geoffrey Pitsch",
        "email": "gpitsch@google.com",
        "time": "Tue Jul 19 19:17:37 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jul 19 19:17:37 2016 +0000"
      },
      "message": "Merge \\\\\"Play boot sound on the System stream.\\\\\" into nyc-mr1-dev am: 7d2f4cc750\nam: bbb9d56a0e\n\nChange-Id: I7286ca72cb20fa4f0339caff22ca50cd7564d43e\n"
    },
    {
      "commit": "163c97a8ea0682e91fdccf1c3137ee43b9e00135",
      "tree": "f02a2a6080f319f18621d40de27592272f21e200",
      "parents": [
        "4e750e822fd2310fb44b56b624eb5b3965b37044",
        "79ad7bedcfaec8ccce22589eb62b342fd0de05af"
      ],
      "author": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Mon Jul 18 12:07:42 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 18 12:07:44 2016 +0000"
      },
      "message": "Merge changes from topic \u0027skia_merge\u0027\n\n* changes:\n  Fix include to match Skia filename change\n  Remove references to SkImageDecoder (part 2)\n  Update SkiaCanvasProxy with SkSurface API change\n  Return DNG mimeType for the case kDNG_SkEncodedFormat\n  Remove use of SkFixed. Update code to use SkGlyph.fAdvance[XY] after https://codereview.chromium.org/1737693006.\n  skia SkDocument - new MakePDF API, fix leak\n"
    },
    {
      "commit": "5613313533e28c1c95e91b52e9997d657bf2a479",
      "tree": "bf92d96dea56b3de6d1aaa2a15a8ba877b5a659a",
      "parents": [
        "965a70628206f605b19cfd8732c4b7cf2f40a399"
      ],
      "author": {
        "name": "Geoffrey Pitsch",
        "email": "gpitsch@google.com",
        "time": "Fri Jul 15 10:50:04 2016 -0400"
      },
      "committer": {
        "name": "Geoffrey Pitsch",
        "email": "gpitsch@google.com",
        "time": "Fri Jul 15 10:50:04 2016 -0400"
      },
      "message": "Play boot sound on the System stream.\n\nTurning down the ring volume will also turn down boot sound.\n\nBUG:30132711\nChange-Id: I902e56b20f105c27209dd47f054e98085647ee85\n"
    },
    {
      "commit": "8898c16987831db47542a92151ed7209e22268aa",
      "tree": "30a189a6fe5a2c31a411b9003458af2a1c8e6673",
      "parents": [
        "79fc3b1f1675364dbb739ffa511a68ed5a80f357"
      ],
      "author": {
        "name": "Matt Sarett",
        "email": "msarett@google.com",
        "time": "Thu Mar 24 16:11:01 2016 -0400"
      },
      "committer": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Fri Jul 15 08:19:12 2016 -0400"
      },
      "message": "Remove references to SkImageDecoder (part 2)\n\nAs of this CL, SkImageDecoder is no longer used in Android and\nwill be deleted by Skia.\n\n(cherry picked from commit 097a6ea4b65046df3e3cbf93d1acfc4e6833e02f)\n\nChange-Id: Ic754ab0dde7ad1b65ccf3b2bc23fcbc5ef44ed08\n"
    },
    {
      "commit": "a91a2d737586ebd0040129333055d8093899751b",
      "tree": "0ca3a04b3397357204fc39d968a3d6968aaf52f1",
      "parents": [
        "f6d766020f9b4d082ee38c38e6496655e1e56c61"
      ],
      "author": {
        "name": "Geoffrey Pitsch",
        "email": "gpitsch@google.com",
        "time": "Tue Jul 12 14:46:19 2016 -0400"
      },
      "committer": {
        "name": "Geoffrey Pitsch",
        "email": "gpitsch@google.com",
        "time": "Wed Jul 13 15:51:24 2016 -0400"
      },
      "message": "Fixes delay when playing first sound in BootAnimation\n\naudioplay is initialized with an example of the type of clip it\nwill play.\nAlso remove asserts and debug compile settings from BootAnimation.\n\nBUG:24800792\nChange-Id: Icb78489417aee0549c340c746b25e57ccdb3427e\n"
    },
    {
      "commit": "4786f6d958908dc668d677e0260bbe821dd61298",
      "tree": "22793dfae0e91a0550eb85b15a89de897b685d58",
      "parents": [
        "6441738f4541850e7b55de1a6e42e2e8bd585ddd",
        "9676281c4f0b34707e34cf9d2f5a866f1979c405"
      ],
      "author": {
        "name": "Damien Bargiacchi",
        "email": "drb@google.com",
        "time": "Wed Jul 13 00:40:06 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 13 00:40:07 2016 +0000"
      },
      "message": "Merge \"Don\u0027t show times before 2000-01-01\" into nyc-mr1-dev"
    },
    {
      "commit": "9676281c4f0b34707e34cf9d2f5a866f1979c405",
      "tree": "4ca969501dcd742a8f0b25be38254d76a339f999",
      "parents": [
        "e7d21d847ed1d5337d8b8e69968c941750e0799c"
      ],
      "author": {
        "name": "Damien Bargiacchi",
        "email": "drb@google.com",
        "time": "Tue Jul 12 15:53:40 2016 -0700"
      },
      "committer": {
        "name": "Damien Bargiacchi",
        "email": "drb@google.com",
        "time": "Tue Jul 12 16:03:37 2016 -0700"
      },
      "message": "Don\u0027t show times before 2000-01-01\n\nBUG\u003d27802041\n\nChange-Id: Iaa826e029c3b887e2bda6d12bc7c372d862ed320\n"
    },
    {
      "commit": "859029ff7b87087e5e70a087a75bac5836f41a22",
      "tree": "2fd046e76c40949500346ccee9d7c32cebe119ce",
      "parents": [
        "50752f7391a4fd299da1f1b3af1fe58dd4381426",
        "d6d9a1d0b9cf6fa740d9fe410015b094475c5a4c"
      ],
      "author": {
        "name": "Geoffrey Pitsch",
        "email": "gpitsch@google.com",
        "time": "Tue Jul 12 17:29:55 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 12 17:29:56 2016 +0000"
      },
      "message": "Merge \"OpenSL-based audio support for BootAnimation\" into nyc-mr1-dev"
    },
    {
      "commit": "b646ec13e182e71744361e18d17e57b1571dcd66",
      "tree": "e3bf3366623b65b3ee69eb430e4e6b88642c387e",
      "parents": [
        "3e15a43732e85a6f02512f50ae18e7349ad5d97f",
        "5c52691a486ad8f952d8e4c13e027ed15c008c68"
      ],
      "author": {
        "name": "Tim Murray",
        "email": "timmurray@google.com",
        "time": "Mon Jul 11 20:29:38 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 11 20:29:40 2016 +0000"
      },
      "message": "Merge changes from topic \u0027stune\u0027 into nyc-mr1-dev\n\n* changes:\n  Put bootanimation in top-app stune group.\n  Sets android.ui to be in the fg stune group.\n"
    },
    {
      "commit": "143d48927e0fa2a8680168c0ea076bb71775d712",
      "tree": "3e28584c236ccceaa5b410b20f26bd9af93a2433",
      "parents": [
        "f1439105f82e65891047713576f14cad8b73f497",
        "271674930a1f9020a291827a8ecb6ab68782c4fa"
      ],
      "author": {
        "name": "Geoffrey Pitsch",
        "email": "gpitsch@google.com",
        "time": "Mon Jul 11 20:12:38 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 11 20:12:40 2016 +0000"
      },
      "message": "Merge \"BootAnimation: Use npot textures\" into nyc-mr1-dev"
    },
    {
      "commit": "5c52691a486ad8f952d8e4c13e027ed15c008c68",
      "tree": "06543b189525caaa148d9117642946454ac96da8",
      "parents": [
        "4074ad01e898605c64a80a8cb14c10bdbedf1bdb"
      ],
      "author": {
        "name": "Tim Murray",
        "email": "timmurray@google.com",
        "time": "Mon Jul 11 11:41:52 2016 -0700"
      },
      "committer": {
        "name": "Tim Murray",
        "email": "timmurray@google.com",
        "time": "Mon Jul 11 11:41:52 2016 -0700"
      },
      "message": "Put bootanimation in top-app stune group.\n\nbug 29512132\n\nChange-Id: Id39650177b1f3b1ca24edb72b2809ee4ded396a1\n"
    },
    {
      "commit": "2fb30fb68e9acb121a3e0dae0cd2790b3a7cc17d",
      "tree": "d0084aac05f9b89c607b3f46ab2540e27b3212b1",
      "parents": [
        "3cc6935719323a3d8dc31fcfba59f5e3a8abfa32"
      ],
      "author": {
        "name": "Geoffrey Pitsch",
        "email": "gpitsch@google.com",
        "time": "Wed Jul 06 16:16:20 2016 -0400"
      },
      "committer": {
        "name": "Geoffrey Pitsch",
        "email": "gpitsch@google.com",
        "time": "Mon Jul 11 13:02:41 2016 -0400"
      },
      "message": "Wait until end of BootAnimation to free looping textures\n\nglDeleteTextures causes a noticeable framerate hitch when switching to\nthe outro.  By the time looping is finished, the system has finished\nbooting, so freeing the textures immediately is less beneficial.\n\nBug: 29878551\nBug: 30040263\nChange-Id: I5a404a6e18cd2cf64d6c94343f82fa5db8dfbab3\n"
    },
    {
      "commit": "271674930a1f9020a291827a8ecb6ab68782c4fa",
      "tree": "3c714a394ffaa2133707a495542465deba3d5309",
      "parents": [
        "3cc6935719323a3d8dc31fcfba59f5e3a8abfa32"
      ],
      "author": {
        "name": "Sai Kiran Korwar",
        "email": "skirank@nvidia.com",
        "time": "Tue Jul 07 20:00:06 2015 +0530"
      },
      "committer": {
        "name": "Geoffrey Pitsch",
        "email": "gpitsch@google.com",
        "time": "Mon Jul 11 12:54:22 2016 -0400"
      },
      "message": "BootAnimation: Use npot textures\n\nIf non power of two textures are supported, then use\nnpot texture for specifying the images supplied by vendor.\nThis will reduce the memory footprint of the app by a considerable\namount.\n\nBug: 28865582\nBug: 30040263\nChange-Id: I5cef98fb013318d60d8a648041c9665da68c0ff3\n"
    },
    {
      "commit": "d6d9a1d0b9cf6fa740d9fe410015b094475c5a4c",
      "tree": "1acd21e2daca47872bca249e76f18110886b8fd1",
      "parents": [
        "58ef88927d5e28318920a135bba8edf5409115fe"
      ],
      "author": {
        "name": "Geoffrey Pitsch",
        "email": "gpitsch@google.com",
        "time": "Wed Jun 08 00:38:58 2016 -0700"
      },
      "committer": {
        "name": "Geoffrey Pitsch",
        "email": "gpitsch@google.com",
        "time": "Wed Jul 06 11:13:48 2016 -0400"
      },
      "message": "OpenSL-based audio support for BootAnimation\n\nRespects dnd settings for sound playback.\nBasic implementation uses in-memory wavs as buffers.\naudioplay::playClip should not be called before previous clip ends.\nUpdated FORMAT.md to reflect no more audio_conf.txt\n\nBug: 29055299\nChange-Id: Ifc358d7c85f11b8b54ae6446c40643b87bc567f2\n"
    },
    {
      "commit": "dd214a796f8b97070645226d6a61f8651f9e13a0",
      "tree": "f71f1440203bdf1c2c98c13f08c462d3175f4549",
      "parents": [
        "0e792f567ac1b37a75e94e1ff1017f2f152494ef"
      ],
      "author": {
        "name": "Geoffrey Pitsch",
        "email": "gpitsch@google.com",
        "time": "Mon Jun 27 17:14:30 2016 -0400"
      },
      "committer": {
        "name": "Geoffrey Pitsch",
        "email": "gpitsch@google.com",
        "time": "Wed Jun 29 09:35:21 2016 -0400"
      },
      "message": "Support trimmed images in BootAnimation\n\nEach frame directory may optionally contain a `trim.txt` to specify\nhow the image was trimmed relative to the animation\u0027s full size.\nSee FORMAT.md for more details.\n\nBug: 29055299\nChange-Id: I7a291e9a52b4bbe50a29c519f6a4d0e2cc0389d7\n"
    },
    {
      "commit": "3eee9fbb6df1dbbcefe1f0dfdf1295c95ddf3279",
      "tree": "285d1151279eacfcacf01400e0ec580d6895855d",
      "parents": [
        "f1f13f98b58467b69c0ac9d4ba43d3f083525966"
      ],
      "author": {
        "name": "Sai Kiran Korwar",
        "email": "skirank@nvidia.com",
        "time": "Tue Jun 16 17:13:35 2015 +0530"
      },
      "committer": {
        "name": "Robert Tray",
        "email": "rtray@gpartner-nvidia.com",
        "time": "Thu May 26 09:38:50 2016 -0600"
      },
      "message": "bootanimation: Call eglReleaseThread in threadLoop\n\nAdd eglReleaseThread call in the threadLoop function to\nensure that the thread properly cleans up its resources\nbefore exiting.\n\nChange-Id: I90dff47370e7acaecc046c43f0bb274214a29f77\n"
    },
    {
      "commit": "9748086fe267e21d243a49df1775905094a28dd9",
      "tree": "e8e42b4b282f9ad5297ee44c925fa6e18763f06f",
      "parents": [
        "085933cc8fa0b06d28161ddc001c20282012f263"
      ],
      "author": {
        "name": "Damien Bargiacchi",
        "email": "drb@google.com",
        "time": "Tue Mar 29 14:55:55 2016 -0700"
      },
      "committer": {
        "name": "Damien Bargiacchi",
        "email": "drb@google.com",
        "time": "Thu May 12 17:01:59 2016 -0700"
      },
      "message": "Check clock accuracy before attempting to display clock\n\nThe RTC may not be set yet, may have been reset, or may have drifted\nsignificantly if the device time hasn\u0027t been updated in a long time.\n\nUsing the the last_time_change file to determine if the time is known to\nbe accurate and only display the clock when that is the case.\n\nBug: 27802041\nChange-Id: I845cf9c74fcb4009504f1bab853e04146fa19e1d\n"
    },
    {
      "commit": "815e51d76cc284f3ca59534d9f9372d3dd50f574",
      "tree": "1531cffeabba74e25580b8d42785554ddeb89865",
      "parents": [
        "7b7c0a4e45af093e1487519703c7d41ec0c45060",
        "0c7535bb4fbf2306df7039a3358c1216de34cd8f"
      ],
      "author": {
        "name": "Andriy Naborskyy",
        "email": "andriyn@google.com",
        "time": "Thu Mar 24 16:43:34 2016 -0700"
      },
      "committer": {
        "name": "Andriy Naborskyy",
        "email": "andriyn@google.com",
        "time": "Thu Mar 24 17:14:52 2016 -0700"
      },
      "message": "resolve merge conflicts of 0c7535b to nyc-dev\n\nChange-Id: I49fa42e0d78aeaa8127cefc5cc5122cf37fce878\n"
    },
    {
      "commit": "39218ba26d5bb8646f04273f2c3731598721c1da",
      "tree": "5a9f92f0589635df70a85ec8a8ef8c5bbb966b1b",
      "parents": [
        "54c3808802e643785cc76b29067d1119e9c78af4"
      ],
      "author": {
        "name": "Andriy Naborskyy",
        "email": "andriyn@google.com",
        "time": "Sun Aug 16 21:32:50 2015 -0700"
      },
      "committer": {
        "name": "Andriy Naborskyy",
        "email": "andriyn@google.com",
        "time": "Tue Mar 22 20:18:11 2016 -0700"
      },
      "message": "bootanimation: implement split packaging of animation\n\nAnimation package zip can be separated into OEM and SYSTEM\nOEM desc.txt can use new command \"$SYSTEM\" to invoke animation\nfrom SYSTEM package\n\nChanges to animation structure:\n1. animation can refer other animation\n2. animation contains zip file reference\n3. BootAnimation has name of root of animation Zip; processing desc.txt we\nneed filename of container zip and we can\u0027t access it from ZipFileRO instance\n\nmovie() changes:\n1. Split movie() into loading Zip and playing part\n2. load parses desc.txt and if needed referred Zip\n3. play can descend animations tree\n\nChange-Id: I600d02c84d537df7b3e32a84f84a294b26e319e0\nSigned-off-by: Andriy Naborskyy \u003candriyn@google.com\u003e\n"
    },
    {
      "commit": "a704b7d3444d218fe3b3f977fd242d2cd626058e",
      "tree": "33359e1798c4801be6471db575bd1f70ce6b70fb",
      "parents": [
        "569edb85125e6754de8f8e60f993afad42eed490"
      ],
      "author": {
        "name": "Damien Bargiacchi",
        "email": "drb@google.com",
        "time": "Tue Feb 16 16:55:49 2016 -0800"
      },
      "committer": {
        "name": "Damien Bargiacchi",
        "email": "drb@google.com",
        "time": "Mon Mar 07 16:15:31 2016 -0800"
      },
      "message": "Draw a clock on top of the Android boot animation\n\nDon\u0027t draw on top of vendor specific animations/logos since we can\u0027t\nmake it look good.\n\nBug: 27209004\nChange-Id: If4791b861ff476c23b37787ba896a3ef8d9df4fd\n"
    },
    {
      "commit": "fe0fcf5cad75c6ba717a3d0a4ddb7c6bc656135d",
      "tree": "a4dd9b15c4df6f92936364327d6d6711ce80f648",
      "parents": [
        "f18cbd760142e627ab6c9672e4aca3a29d05d9ee",
        "b9ac485a8e49a4db080bab8ea684a9b262215563"
      ],
      "author": {
        "name": "Tom Cherry",
        "email": "tomcherry@google.com",
        "time": "Fri Aug 21 18:24:35 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Aug 21 18:24:35 2015 +0000"
      },
      "message": "am b9ac485a: am 49948146: Merge \"bundle init.rc contents with its service\"\n\n* commit \u0027b9ac485a8e49a4db080bab8ea684a9b262215563\u0027:\n  bundle init.rc contents with its service\n"
    },
    {
      "commit": "c2de7a7e878f7926cfea7efa71cab1613f95dc33",
      "tree": "9b757b7777851a9e960ccce6c675e7d43d8d4458",
      "parents": [
        "9bcb0fcc217e35f8290ee5f283fae86a6306ab25"
      ],
      "author": {
        "name": "Tom Cherry",
        "email": "tomcherry@google.com",
        "time": "Fri Aug 14 13:01:13 2015 -0700"
      },
      "committer": {
        "name": "Tom Cherry",
        "email": "tomcherry@google.com",
        "time": "Wed Aug 19 17:24:47 2015 -0700"
      },
      "message": "bundle init.rc contents with its service\n\nBug: 23186545\nChange-Id: I080e73d6a124873c2ddd0fba85315d7082faf3f5\n"
    },
    {
      "commit": "358fcc795ea567ba086a460c587de427507fefdd",
      "tree": "50b63b979def79d569bbc767c734705cdd14a7d1",
      "parents": [
        "33a5c80773b7b2913c92fec170787499a453d184"
      ],
      "author": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Tue Aug 11 20:23:56 2015 -0700"
      },
      "committer": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Tue Aug 18 20:26:47 2015 +0000"
      },
      "message": "Do not start with a black frame in bootanimation\n\nBug: 23128307\nChange-Id: I0ec044f983c1c30960be046e43a882c63205dc5f\n"
    },
    {
      "commit": "407753c456c1eb2c8556ae7891b6bef43b044e76",
      "tree": "8dcc64a1dd532071a5a626821bc4d54abd6a3b4d",
      "parents": [
        "dc22cfed5d3a65dcd3979113dbce468ad8ec2868"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Tue Jun 16 12:02:57 2015 +0100"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Wed Jun 17 13:13:16 2015 +0000"
      },
      "message": "ZipFileRO: Use precise widths for zip file types.\n\ngetEntryInfo crashes on 64-bit devices because \"long\" types\nwere being passed int pointers (that pointed to a stack frame)\nthat were reinterpret_cast\u0027ed to long* (sigh.). To fix this issue\nonce and for all, use types with explicitly defined widths.\n\nThis change also removes some dead invariant checking from\nAsset.cpp instead of cleaning it up.\n\nNote that we\u0027ve introduced a wart in NativeLibraryHelper, where\nwe need to deal with zlib\u0027s uLong type, which is \"at least 32 bits\nwide\".\n\nbug: 21622286\n\n(cherry picked from commit 4600dd053dbdbd4b95f3b11057a1cc55b99f9c77)\n\nChange-Id: I7886cb37a229cc27c625699c80e6a6a6117d2203\n"
    },
    {
      "commit": "4600dd053dbdbd4b95f3b11057a1cc55b99f9c77",
      "tree": "c4bb116de6b55b054a73083165c9512fbf21c164",
      "parents": [
        "5e063b1da52cca1b93b19bdf7be694aabf95d336"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Tue Jun 16 12:02:57 2015 +0100"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Wed Jun 17 08:40:25 2015 +0000"
      },
      "message": "ZipFileRO: Use precise widths for zip file types.\n\ngetEntryInfo crashes on 64-bit devices because \"long\" types\nwere being passed int pointers (that pointed to a stack frame)\nthat were reinterpret_cast\u0027ed to long* (sigh.). To fix this issue\nonce and for all, use types with explicitly defined widths.\n\nThis change also removes some dead invariant checking from\nAsset.cpp instead of cleaning it up.\n\nNote that we\u0027ve introduced a wart in NativeLibraryHelper, where\nwe need to deal with zlib\u0027s uLong type, which is \"at least 32 bits\nwide\".\n\nbug: 21622286\n\nChange-Id: Iae675a9601db7aae03a8b80b40321d2cc1d97f50\n"
    },
    {
      "commit": "b65b66ccc251371c817abe75176a73f84565410e",
      "tree": "000e3ae2151dc5c85e23a5b9e3b7096ffd3f3f24",
      "parents": [
        "b53420d02def4277cf5b8a04da289b4291a9f24a",
        "2224eac30375a731f4ad38d6930dbc37b0855a0d"
      ],
      "author": {
        "name": "Chris Elliott",
        "email": "chriselliott@google.com",
        "time": "Thu May 07 17:06:47 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu May 07 17:06:47 2015 +0000"
      },
      "message": "am 2224eac3: Merge \"bootanimation: fix garbage line issue when screen height is odd.\" into lmp-mr1-modular-dev\n\n* commit \u00272224eac30375a731f4ad38d6930dbc37b0855a0d\u0027:\n  bootanimation: fix garbage line issue when screen height is odd.\n"
    },
    {
      "commit": "d13d504e4b7548f0ce4f9c4f0eee5c1ac2ce6794",
      "tree": "6686b4699d67f62045f51ed88b1dddcc1b9fdd46",
      "parents": [
        "d3de33e9dfaee6c0336a51e774632813b3344fca"
      ],
      "author": {
        "name": "Chris Elliott",
        "email": "chriselliott@google.com",
        "time": "Mon May 04 15:24:12 2015 -0700"
      },
      "committer": {
        "name": "Chris Elliott",
        "email": "chriselliott@google.com",
        "time": "Tue May 05 13:21:27 2015 -0700"
      },
      "message": "bootanimation: fix garbage line issue when screen height is odd.\n\nbug:20032072\n\nChange-Id: I784fb6f815b22c37dcd7354729aca346726196d9\n"
    },
    {
      "commit": "688ff4cf0f93d1a886437884f23874e5595d59a3",
      "tree": "b8ef91775dfc3dff86d05aa5638b17dee597ca91",
      "parents": [
        "adb52ef7034d4d3e0eee58cedae2a343d29771b9"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Mon Feb 23 15:47:54 2015 +0000"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Mon Feb 23 15:47:54 2015 +0000"
      },
      "message": "Track removal of refcounts from FileMap.\n\nUse delete instead of release.\n\nChange-Id: I25c841b368aa9d51e9259399b94cafa2bbb7a076\n"
    },
    {
      "commit": "1610486d371b867c0a842ede38e64774c18ba5d9",
      "tree": "0c48396116094b6642fbc86973c3939d800ca7d3",
      "parents": [
        "82a1a2c63959adc0c7e3208c6ffa6985a346ae57"
      ],
      "author": {
        "name": "Yabin Cui",
        "email": "yabinc@google.com",
        "time": "Mon Jan 26 19:43:58 2015 -0800"
      },
      "committer": {
        "name": "Yabin Cui",
        "email": "yabinc@google.com",
        "time": "Mon Jan 26 22:32:38 2015 -0800"
      },
      "message": "kill HAVE_PTHREADS.\n\nBug: 19083585\nChange-Id: Ib466949bb6cd6d1bbc4680e989f0f9fae62ca564\n"
    },
    {
      "commit": "99d61edfda1f80d13f1f1c96fbec41278f3da709",
      "tree": "14233c90399e45c1f6dfc4aebd75d3b117384948",
      "parents": [
        "613d20668a28f9dc970949c9efd2ca7f61bed6f4"
      ],
      "author": {
        "name": "Bernhard Rosenkränzer",
        "email": "Bernhard.Rosenkranzer@linaro.org",
        "time": "Mon Nov 17 21:15:30 2014 +0100"
      },
      "committer": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Mon Nov 24 16:18:15 2014 -0800"
      },
      "message": "Fix class vs. struct mismatch\n\nDon\u0027t refer to classes as structs and view versa -- causes warnings in\nclang (in code built with -Werror)\n\nChange-Id: I4d7f461bcf6fe4e43a14ad2f28ee0e0ddea95abc\nSigned-off-by: Bernhard Rosenkränzer \u003cBernhard.Rosenkranzer@linaro.org\u003e\n"
    },
    {
      "commit": "09993f768bcb6dd9ed76b5c655da2ad9d0ad8396",
      "tree": "fd10f5ffc634e0d574f269f7fd2f18b742f6e1d1",
      "parents": [
        "8e357bf54173c3f83584c10983392f0d87e0b2b3"
      ],
      "author": {
        "name": "Bernhard Rosenkränzer",
        "email": "Bernhard.Rosenkranzer@linaro.org",
        "time": "Mon Nov 17 20:25:28 2014 +0100"
      },
      "committer": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Thu Nov 20 15:24:46 2014 -0800"
      },
      "message": "Fix format strings mismatching the parameters passed to them\n\nChange-Id: Ia0d33aec9edadac60508fb422e0821e6d8f28afa\nSigned-off-by: Bernhard Rosenkränzer \u003cBernhard.Rosenkranzer@linaro.org\u003e\n"
    },
    {
      "commit": "cfedceb8c180a2e176154d461659e0c3569dc931",
      "tree": "00de5f6ee61e72713c3b141f5a308f33f312bf53",
      "parents": [
        "59701b9ba5c453e327bc0e6873a9f6ff87a10391"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Sep 30 21:48:18 2014 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Nov 07 14:33:51 2014 -0800"
      },
      "message": "Frameworks/base: Turn on -Wall -Werror in cmds\n\nFix small warnings, turn on -Wall -Werror.\n\nChange-Id: Iab1f01a7c7ebd6ba832b75067c5e395f380a1b8b\n"
    },
    {
      "commit": "5a71f83227f0340a265f34b226d8fe01d4dd9773",
      "tree": "9e74435ad8e21fe6ace6a1c49ca2f596c60ced34",
      "parents": [
        "52656916e35b08013bf776b3603d6cecba287a1e",
        "a0d07d49b8b0aae71beb48ec31b43f6923530d00"
      ],
      "author": {
        "name": "Bill Yi",
        "email": "byi@google.com",
        "time": "Wed Oct 22 09:00:49 2014 -0700"
      },
      "committer": {
        "name": "Bill Yi",
        "email": "byi@google.com",
        "time": "Wed Oct 22 09:00:49 2014 -0700"
      },
      "message": "Merge lmp-dev-plus-aosp-without-vendor into stage-aosp-master\n\nChange-Id: I7063b7b52e9c09a57eb6bf3b4ffa3716d58ebf43\n"
    },
    {
      "commit": "bb94f3107ea567ddf67bed4617c3bcbd602538df",
      "tree": "3526a7f6b2598fef61d4e03d93cf414e505b71ad",
      "parents": [
        "e40974d92873462c4f1b100c7d03b3f41756c807"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Oct 21 10:41:33 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Oct 21 10:41:33 2014 -0700"
      },
      "message": "Include \u003ctime.h\u003e for clock_nanosleep.\n\nChange-Id: If3098fa03003bce5d06d60e9129c10cce3c850bb\n"
    },
    {
      "commit": "28138587ef4ec3da71c5275ac60ffae03ca69fce",
      "tree": "9415c44728f407aaf58bbb74c43e2883acabad1c",
      "parents": [
        "41bb3455e44dc8fde4569bbfd56fa20c6da8a27d"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@google.com",
        "time": "Tue Oct 07 14:47:26 2014 -0700"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@google.com",
        "time": "Tue Oct 07 14:47:26 2014 -0700"
      },
      "message": "bootanimation: Tweak parameters for pcm_open for playing boot sounds.\n\nSet start_threshold and avail_min to 1/4th period size and stop_threshold to INT_MAX\n\nChange-Id: I0a3aac18533709daa86a024cdd6a32086410723a\n"
    },
    {
      "commit": "ebf9a0d8a888042c16ec0cb6dd8419f18038663f",
      "tree": "e364c8e39ff0795a22da5a5d1e32472bc22dcebb",
      "parents": [
        "76716c5a180aa471c6973ca7aa03c7f2da677823"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@google.com",
        "time": "Thu Oct 02 16:08:47 2014 -0700"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@google.com",
        "time": "Fri Oct 03 15:38:15 2014 -0700"
      },
      "message": "Add support for playing audio during bootanimation\n\nThe bootanimation daemon will play 16 bit WAV files contained in bootanimation.zip\nFor this to work, the bootanimation.zip must contain an audio_conf.txt file,\nwhich contains parameters to be used for the tinyalsa pcm_open call\nas well as mixer parameters to set before attempting to play the sound.\n\nIf the bootanimation finds an audio_conf.txt file, then it will look for a file named\n\"audio.wav\" in each of the part subdirectories. If audio.wav is found, it will play that\nWAV file starting at the beginning of that part.\n\nThe code for this is based on the tinyplay utility in tinyalsa.\n\nThe audio_conf.txt and must begin with the following header:\n\ncard\u003d\u003cALSA card number\u003e\ndevice\u003d\u003cALSA device number\u003e\nperiod_size\u003d\u003cperiod size\u003e\nperiod_count\u003d\u003cperiod count\u003e\n\nThis header is followed by zero or more mixer settings, each with the format:\nmixer \"\u003cname\u003e\" \u003d \u003cvalue list\u003e\nSince mixer names can contain spaces, the name must be enclosed in double quotes.\nThe values in the value list can be integers, booleans (represented by 0 or 1)\nor strings for enum values.\n\nFinally I should mention that this change is not the right approach.\nInstead of going straight to ALSA we should be using the mediaserver instead.\nBut mediaserver isn\u0027t ready in time due to interactions with the system server, and there\nisn\u0027t time to fix this for the current release. We need to fix that for the next one.\n\nBug: 17674304\n\nChange-Id: Ic391ade61c941d0a24f4d64fe005ac9375a23fa9\n"
    },
    {
      "commit": "083b84cf8880bb7f0d2c2dc1b45c7d610656dbd1",
      "tree": "2c83dce383d221eeb4bba0069b2d047424c7a350",
      "parents": [
        "471157821f7b0933c55081ef4625c78f8e798de7"
      ],
      "author": {
        "name": "Jesse Hall",
        "email": "jessehall@google.com",
        "time": "Mon Sep 22 10:51:09 2014 -0700"
      },
      "committer": {
        "name": "Vineeta Srivastava",
        "email": "vsrivastava@google.com",
        "time": "Thu Sep 25 23:37:12 2014 +0000"
      },
      "message": "bootanimation: allow animation to specify background color\n\nSome OEMs want to have a bootanimation (or parts of it) displayed on a\ncolor other than black. They currently just use full-screen frames for\nthat, which wastes lots of memory and bandwidth. This change allows\neach part of the animation to specify a background color that will be\napplied outside of the frame images; if unspecified the background\nwill be black as it is now.\n\nBug: 16635599\nChange-Id: Ibf008fc75c5aad891c86ba9e4ec0879b7a61b8bd\n"
    },
    {
      "commit": "42a1d08df7d417fd4e67eabc91ff05ee77fd9995",
      "tree": "7bfa7e66b153087c56b19c6dd8b340e0ea2ddb42",
      "parents": [
        "95f621a1a4a0891075f1f9daf8e0323aab488793"
      ],
      "author": {
        "name": "Mike Reed",
        "email": "reed@google.com",
        "time": "Mon Jul 07 18:06:18 2014 -0400"
      },
      "committer": {
        "name": "Mike Reed",
        "email": "reed@google.com",
        "time": "Mon Jul 07 18:11:24 2014 -0400"
      },
      "message": "SkBitmap::Config is deprecated, use SkColorType\n\nChange-Id: Ida181d2aac760072cf2d01409edac37699dea216\n"
    },
    {
      "commit": "52adfdaafd464348628d9257101f24a67d7c8bbb",
      "tree": "06e21eb893fdcdee82e81a8de2b8adc88a7e8479",
      "parents": [
        "10882ec8d7890c7d5712e6b7f23e007e09bd0062",
        "516130ccb1841afb6ef154c28269d91594925429"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Wed Apr 30 17:36:10 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Apr 30 17:36:10 2014 +0000"
      },
      "message": "am 516130cc: am dbbf431b: am d0f7f418: Merge \"Freeing frame map\"\n\n* commit \u0027516130ccb1841afb6ef154c28269d91594925429\u0027:\n  Freeing frame map\n"
    },
    {
      "commit": "0c1eeb3c8ab53954218d3b8f4be08ff21be3e985",
      "tree": "3a59dbad3788ed44780ea728f306e3eb84d915fe",
      "parents": [
        "ade631eed0df228e343f2a00db653058ff588846"
      ],
      "author": {
        "name": "Mykola Kondratenko",
        "email": "mykola.kondratenko@sonymobile.com",
        "time": "Tue Apr 15 09:35:44 2014 +0200"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Wed Apr 30 10:58:20 2014 +0000"
      },
      "message": "Freeing frame map\n\nFileMap memory is never released until application exit\n\nRelease it now as the texture is already loaded and the memory\nused for the packed resource can be released.\n\nChange-Id: Id08a1e466337b3a0179684eb6a444e18147ee343\n"
    },
    {
      "commit": "28f0877073e0ebc59f1eeeb6e0d54b614b9d3fa5",
      "tree": "715d463e05f8f558335a9919e038334d51460a6d",
      "parents": [
        "bdd4491b322bebd96b99da508ec7b0b7d59d97ae"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Apr 16 09:41:58 2014 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Apr 28 08:54:17 2014 -0700"
      },
      "message": "Allow custom wallpaper and boot animation.\n\nAdd new \"ro.config.wallpaper\" and \"ro.config.wallpaper_component\"\nproperties which may be defined outside of the bundled framework\nresources.  Falls back to bundled resources when properties are\nundefined.\n\nAlso look for boot animation under OEM partition.\n\nBug: 13340779\nChange-Id: Ibdc9935dbdaae3319bf63b40573de0503d82ae67\n"
    },
    {
      "commit": "63665f2ac4f25131728a7efff0a449ecdc3f4c50",
      "tree": "395dec9ab1b065c3038f013b9f7628a888f483f0",
      "parents": [
        "52eb953278ad68ba5e5995feb1c8f8d43a7af4c9",
        "a3633c25033b576ae160ea86194e4f7f20d82fe2"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Mar 20 21:05:40 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Mar 20 21:05:40 2014 +0000"
      },
      "message": "am a3633c25: am 71a3d40d: am e4360c8e: am 4308a523: Merge \"bootanimation: build 32-bit if 64-bit gl libraries are not available\"\n\n* commit \u0027a3633c25033b576ae160ea86194e4f7f20d82fe2\u0027:\n  bootanimation: build 32-bit if 64-bit gl libraries are not available\n"
    },
    {
      "commit": "31d16e5bf9e4edc8c3af08d8405ebe90bde99220",
      "tree": "52893a54e874aafbaf39bb0e9ffd3eaed7cce6fe",
      "parents": [
        "2764fce3a1119599cd231545b16e6a16286e482d"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Mar 19 18:09:01 2014 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Mar 19 18:10:31 2014 -0700"
      },
      "message": "bootanimation: build 32-bit if 64-bit gl libraries are not available\n\nSet LOCAL_32_BIT_ONLY if TARGET_32_BIT_SURFACEFLINGER is set.\n\nChange-Id: I76396cc9fe3fe45d1e98a44bf911d6e70922555a\n"
    },
    {
      "commit": "c749b44086722217526f220f3656ba06b2e8cea0",
      "tree": "b215189cd0f6172493a0d4f9cdd80cb56a3be09f",
      "parents": [
        "4b131046aa5685112b8f198a989daef13279cadb"
      ],
      "author": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Wed Mar 05 15:36:58 2014 -0800"
      },
      "committer": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Wed Mar 05 15:36:58 2014 -0800"
      },
      "message": "FramebufferNativeWindow.h is obsolete\n\nChange-Id: I3c645af7247a520e28d337e567f326375558519a\n"
    },
    {
      "commit": "eece0dda56ae29fff6e9003df97594f6ac50b6e2",
      "tree": "46e4cd73a189dabb2e28d2eafaef2b9abf73a82f",
      "parents": [
        "94b5ca811e5716bddb4a4d86df35c29bb9165e5f"
      ],
      "author": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Thu Feb 27 14:31:29 2014 -0500"
      },
      "committer": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Thu Feb 27 14:31:29 2014 -0500"
      },
      "message": "Fix includes so that they no longer rely on the global Skia includes directories.\n\nbug:13225538\nChange-Id: Ia5d816dc665f81c7985f21036af4fd0a63c560cf\n"
    },
    {
      "commit": "9d7d4da6b719594a89b4b8b17546f6601b617f33",
      "tree": "863cd571b02ee37919f5713964491d7da13b3063",
      "parents": [
        "d9a32847e51f19822937dc9b916e8b7ea5f50df7",
        "fc800d407d695926ba07299c4e27d1e06284098f"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Mon Dec 16 18:47:03 2013 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Dec 16 18:47:03 2013 +0000"
      },
      "message": "am fc800d40: am fbd6d5a8: am 09fdc159: am 3ddee4de: Merge \"[bootanimation] Drop user loadable bootanimation.zip abiltiy.\"\n\n* commit \u0027fc800d407d695926ba07299c4e27d1e06284098f\u0027:\n  [bootanimation] Drop user loadable bootanimation.zip abiltiy.\n"
    },
    {
      "commit": "cee6a096b155582211f58bb3e541cf431c6ac3dc",
      "tree": "699911902474463f4f5e6c1f93c20f52f296e919",
      "parents": [
        "a0ab49bb52f44eac97f81117d6864edd6a2e0487"
      ],
      "author": {
        "name": "Robert Craig",
        "email": "rpcraig@tycho.ncsc.mil",
        "time": "Mon Dec 16 09:42:51 2013 -0500"
      },
      "committer": {
        "name": "Robert Craig",
        "email": "rpcraig@tycho.ncsc.mil",
        "time": "Mon Dec 16 09:42:51 2013 -0500"
      },
      "message": "[bootanimation] Drop user loadable bootanimation.zip abiltiy.\n\nA prior change removed the ability of\nthe shell to push to /data/local. Because\nof this, the bootanimation code no longer\nsupports users loading custom bootanimation.zip\nfiles. This patch drops the access attempt\nfrom the code.\n\nChange-Id: Ie30dd73699c8296be00dc6fbf14691e08baa6410\nSigned-off-by: rpcraig \u003crpcraig@tycho.ncsc.mil\u003e\n"
    },
    {
      "commit": "362028d6321468ff598a93df7b2ca0dbfcf3405a",
      "tree": "68858ce6d44acf28ca52f18a44ed52430dcafe63",
      "parents": [
        "8883bebd0fd32ca9183bbda6a9fe0f7f163964dd",
        "411954aef072574676462f579847a01af0aed728"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Wed Dec 11 23:05:00 2013 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Dec 11 23:05:00 2013 +0000"
      },
      "message": "am 411954ae: am a6416309: am 1e137549: am efa5c88f: Merge \"Don\\\u0027t try to set service.bootanim.exit\"\n\n* commit \u0027411954aef072574676462f579847a01af0aed728\u0027:\n  Don\u0027t try to set service.bootanim.exit\n"
    },
    {
      "commit": "e58d09a5526338aa1f550a1c4111fe4d5028554d",
      "tree": "243a0d478a0cd7d28792c3ce879dbf0b200833b1",
      "parents": [
        "ce3bd309b12e9552c05d5a59a06d7883618c5ca0"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Wed Dec 11 13:10:55 2013 -0800"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Wed Dec 11 13:10:55 2013 -0800"
      },
      "message": "Don\u0027t try to set service.bootanim.exit\n\ninit has never allowed the bootanimation code to\nset service.bootanim.exit, and has always generated the\ndmesg error message\n\n  \u003c3\u003e[   17.644615] init: sys_prop: permission denied uid:1003  name:service.bootanim.exit\n\nSince setting this property has no effect and never worked, delete\nthe code which tries to do it.\n\nChange-Id: Idacc5467d85479a8cf974702af8895011be585ea\n"
    },
    {
      "commit": "5a74e2df57acb93b61568b90b048016046ef4512",
      "tree": "949871145e8e5dce1ccaa00dddac162796a3129a",
      "parents": [
        "3554740951b91b1487e72c2d2208302c29d43613"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Tue Dec 03 13:16:03 2013 +0000"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Wed Dec 11 19:06:18 2013 +0000"
      },
      "message": "Reimplement ZipFileRO in terms of libziparchive.\n\nThis lets us share zip archive processing code with both\nthe runtime (Art, dalvik) and critical java code\n(StrictJarFile).\n\nThis change also moves several utility methods to ZipUtils\nand dedups code across several zip inflation methods.\n\nOne of the side effects of this change is that several\nprocessing loops are now O(n) instead of O(n^2).\n\nbug: 10193060\n\n(cherry picked from commit afd31e08299008fdc5c2813f21b2573f29dc53df)\n\nChange-Id: I86a2c528575d4a3ca86b94be068dcdc3c17c2ed6\n"
    },
    {
      "commit": "afd31e08299008fdc5c2813f21b2573f29dc53df",
      "tree": "7f83dd8f1e7ed71d4fe8ce280841e43ce275ac6d",
      "parents": [
        "6e2d0c1d91f644ab50e0c0b7cae4306262a4ca41"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Tue Dec 03 13:16:03 2013 +0000"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Mon Dec 09 16:23:16 2013 +0000"
      },
      "message": "Reimplement ZipFileRO in terms of libziparchive.\n\nThis lets us share zip archive processing code with both\nthe runtime (Art, dalvik) and critical java code\n(StrictJarFile).\n\nThis change also moves several utility methods to ZipUtils\nand dedups code across several zip inflation methods.\n\nOne of the side effects of this change is that several\nprocessing loops are now O(n) instead of O(n^2).\n\nbug: 10193060\n\nChange-Id: I3c7188496837a47246c4f342e45485a70fef3169\n"
    },
    {
      "commit": "4b9a19a8f865970e0079f431c8c2c2a8e4333ae9",
      "tree": "8133e88dfa631ab30311375f3751f7b7ff09e58b",
      "parents": [
        "8af04d8b85183978aa6182c281325394bf47a593"
      ],
      "author": {
        "name": "Leon Scroggins III",
        "email": "scroggo@google.com",
        "time": "Tue Dec 03 15:06:30 2013 -0500"
      },
      "committer": {
        "name": "Leon Scroggins III",
        "email": "scroggo@google.com",
        "time": "Tue Dec 03 15:23:11 2013 -0500"
      },
      "message": "Call SkBitmap::config() instead of  ::getConfig()\n\ngetConfig() has been deprecated.\n\nChange-Id: I32066256ab82ac4760c752c80856d1b56d291fae\n"
    },
    {
      "commit": "dbccd44a638ae8705a5b14bff8b2dd74abc26045",
      "tree": "14bfabaf3f3c7be86dfc064e919e00433a0cf2bb",
      "parents": [
        "ecfae4f899873f224e1aeed076dc8a41f8884487",
        "b873a17ce7be0a9771c24999adca6964431728f6"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Fri Nov 22 11:18:57 2013 -0800"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Fri Nov 22 11:18:57 2013 -0800"
      },
      "message": "Merge commit \u0027b873a17ce7be0a9771c24999adca6964431728f6\u0027 into HEAD\n\nChange-Id: I938755073e70602cc8f51ce9bd420fdcf870cecd\n"
    },
    {
      "commit": "ed84dea928a5a830a19b5bcab7ad05a7e92f3279",
      "tree": "3433335ce3be3a69f12b957130e95b4d19f74e3f",
      "parents": [
        "2fcefe45718af44452b725b61f4051f507cb7e5d",
        "8f592378a1ea7f31d57253dc202f42707ef4da36"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Oct 29 13:35:04 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Oct 29 13:35:04 2013 -0700"
      },
      "message": "am 8f592378: am 69920427: Merge \"Fix a variety of small publicly-reported bugs.\"\n\n* commit \u00278f592378a1ea7f31d57253dc202f42707ef4da36\u0027:\n  Fix a variety of small publicly-reported bugs.\n"
    },
    {
      "commit": "c367d48c55e5a3fa0df14fd62889e4bb6b63cb01",
      "tree": "cc6a7e56e5c5e74d66603c8170660fd99c52bff3",
      "parents": [
        "b4cae4a955ebd91cf35aaeb00ab12ce6f1d5fc48"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Oct 29 13:12:55 2013 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Oct 29 13:12:55 2013 -0700"
      },
      "message": "Fix a variety of small publicly-reported bugs.\n\nPossible NULL dereference in cmds/bootanimation/BootAnimation.cpp.\nhttps://code.google.com/p/android/issues/detail?id\u003d61556\n\nMissing fclose in core/jni/android_os_Debug.cpp.\nhttps://code.google.com/p/android/issues/detail?id\u003d61546\n\nBad loop guards in core/jni/android_util_Process.cpp.\nhttps://code.google.com/p/android/issues/detail?id\u003d61557\n\nAssignment to wrong variable in libs/androidfw/AssetManager.cpp.\nhttps://code.google.com/p/android/issues/detail?id\u003d61560\n\nMissing delete[]s in libs/androidfw/ObbFile.cpp.\nhttps://code.google.com/p/android/issues/detail?id\u003d61549\n\nLeaks on error in tools/aapt/Images.cpp.\nhttps://code.google.com/p/android/issues/detail?id\u003d61552\n\nTwo missing fclose calls in tools/aapt/Resource.cpp.\nhttps://code.google.com/p/android/issues/detail?id\u003d61553\n\nMissing fclose in tools/aidl/aidl.cpp.\nhttps://code.google.com/p/android/issues/detail?id\u003d61554\n\nChange-Id: I5820f3824e72d07a9acb776cf0af3e7443f5694a\n"
    },
    {
      "commit": "5827cb5059ed0eec4c73adf1acbd7ee47b2c5c8f",
      "tree": "efcece724190c59e9123196c5b648d927701013f",
      "parents": [
        "3a6f25512c0a682b10961a5a7428e3393ffb0b75"
      ],
      "author": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Fri Jul 26 14:58:06 2013 -0400"
      },
      "committer": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Thu Aug 01 12:52:21 2013 -0400"
      },
      "message": "Changes needed to support Skia at r10377.\n\nChange-Id: Id1e1c8c5938ee1a33c6fa3caabd2c28e89243eb4\n"
    },
    {
      "commit": "d685894212e6dbeac1fda4996903c1da115d49a6",
      "tree": "c52d05c78811e79a869afbcdbe55a906e38f2fa1",
      "parents": [
        "9fa49cc3308f6af593d780581121afc3c1d7e046"
      ],
      "author": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Tue Apr 09 21:54:12 2013 -0700"
      },
      "committer": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Tue Apr 09 21:54:12 2013 -0700"
      },
      "message": "Add liblog\n\nBug: 8580410\nChange-Id: I746aa8258866508c3a725d0773faf4518096548f\n"
    },
    {
      "commit": "0b722fe9ce98d97dbcb6fefd170b85ab7037e528",
      "tree": "67b40b76ec957ba919dd9e7d9b450fa7d2b2bfd9",
      "parents": [
        "d59db50ab0c3c7a232b2a564e763ca46c6f6ebfa"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Aug 24 22:40:14 2012 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Aug 27 14:34:53 2012 -0700"
      },
      "message": "Use new surface flinger API.\n\nChange-Id: Ic888577408a59a36481a48010e19c5e77c24e211\n"
    },
    {
      "commit": "92c6d2fc50ec2a33a2a990fe66cd70090eb461ca",
      "tree": "cb5238dfab2eaf2e7cbe6775415c30219533e204",
      "parents": [
        "aa871b0ff0fb38112a1693e80e1146cecc5db21d"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Jul 25 19:22:59 2012 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Jul 25 20:38:27 2012 -0700"
      },
      "message": "update to new getDisplayInfo API\n\nChange-Id: I8051b4f9f23d3ef4791176de1bbcfafacae7d579\n"
    },
    {
      "commit": "d3782b26b2026e60a8e0d4b967a156369f2a46f8",
      "tree": "4cdd65f7346993aea94bedf15fbd91e910b74b33",
      "parents": [
        "fe54cb6f3da7fe95d5141d97b0c6780e001ad058"
      ],
      "author": {
        "name": "Kevin Hester",
        "email": "khester@google.com",
        "time": "Thu Apr 26 10:38:55 2012 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Jun 19 17:38:43 2012 -0700"
      },
      "message": "Exit boot animation cleanly.\n\nThe desc.txt file can now mark parts as \u0027must finish cleanly\u0027 by using\n\u0027c\u0027 as the part line prefix rather than \u0027p\u0027.  If so indicated, if the\nbootanimation is asked to quit it will do so only after waiting to\nfinish that part.\n\nI considered either making init.c service killing smarter or promoting\nbootanim to be a bindable service with a requestExit method.  However,\nthese changes are probably too big/risky given our ship date.  So\nI used a property as a mailbox between SurfaceFlinger and bootanim.\n\nBug: 6679877\nChange-Id: I1f8dd9e7da1ea80a483b31fa14c4a5645922d774\n"
    },
    {
      "commit": "60691ce1600cb79ec9bb9957eee29be7a6a5e5d2",
      "tree": "644c7b8e65eab2cc4f74192bbd18a2d816118159",
      "parents": [
        "0d8eba64b2ee2921915e0f6793ddd2d8f44e2428"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Jun 11 14:08:02 2012 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Jun 11 14:52:32 2012 -0700"
      },
      "message": "make the boot animation 32-bits to avoid banding\n\nBug: 6611693\n\nChange-Id: Id31b711ea755c89240eaea26f6403a031cd939e4\n"
    },
    {
      "commit": "db7dd2af93ae96e5749cfbe978c2695049d9d782",
      "tree": "43e6441ce2d9edab412fc3faf19cc4ab9e967455",
      "parents": [
        "26511012c40dbe704f4791654b28b9e0e05589d8"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Sat May 12 15:08:21 2012 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Sat May 12 15:08:21 2012 -0700"
      },
      "message": "fix BootAnimation timing\n\nWe were including the delay of the previous frame when\ncalculating the delay needed between a frame and the next.\nThis caused a bad jitter in the animation timing.\n\nWe also now use clock_nanosleep().\n\nChange-Id: Iebb8cca4d57fe2f11d83b23a736e03db7a7d2006\n"
    },
    {
      "commit": "fd135bc809589d4cadcdbcc7ececaf2d9d0969cf",
      "tree": "6605529aca5a347b7cc728b6af89d5c9e9671aac",
      "parents": [
        "4961295d19e27dd0854f2b07ae126f79ce935c8c",
        "f4b6628e5084bf317eab5326c51cbecb8fabdc45"
      ],
      "author": {
        "name": "Travis Geiselbrecht",
        "email": "travisg@google.com",
        "time": "Tue Apr 24 14:23:25 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Apr 24 14:23:25 2012 -0700"
      },
      "message": "am f4b6628e: BootAnimation: fix bug to delay the appropriate amount of time per frame\n\n* commit \u0027f4b6628e5084bf317eab5326c51cbecb8fabdc45\u0027:\n  BootAnimation: fix bug to delay the appropriate amount of time per frame\n"
    },
    {
      "commit": "f4b6628e5084bf317eab5326c51cbecb8fabdc45",
      "tree": "192b53b1e8acf2ccaa56f15d95270658e4a934aa",
      "parents": [
        "5c84720322afaae4f4a7e0ea6ad71c309df7eb80"
      ],
      "author": {
        "name": "Travis Geiselbrecht",
        "email": "travisg@google.com",
        "time": "Tue Apr 24 14:14:55 2012 -0700"
      },
      "committer": {
        "name": "Travis Geiselbrecht",
        "email": "travisg@google.com",
        "time": "Tue Apr 24 14:14:55 2012 -0700"
      },
      "message": "BootAnimation: fix bug to delay the appropriate amount of time per frame\n\nChange-Id: I300b67a97a9a685cec59df12d8d605c2b0b49180\n"
    },
    {
      "commit": "8335f1ccccedb6655d96d9d5b697a7f0938235dd",
      "tree": "30a7f8b3e646157365dd51222665a68753fa25e3",
      "parents": [
        "57235fc65b5920f4867e66c8263efab49e92a21b"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Sat Feb 25 18:48:35 2012 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Feb 27 13:03:08 2012 -0800"
      },
      "message": "fix libgui header location\n\nChange-Id: Iec71706cdd4f29c6904993648ce873e83ef9cafe\n"
    },
    {
      "commit": "83c64e6b624a876436d2ef5d2f173b10407e27b4",
      "tree": "c4effc3260ab399e8fdae23baf06b076cd87a604",
      "parents": [
        "94d0024557f415b8463f085c9784a3e1d02b58c6"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Feb 20 16:58:20 2012 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Feb 20 22:38:43 2012 -0800"
      },
      "message": "frameworks/base refactoring\n\ncreate the new libandroidfw from parts of libui and libutils\n\nChange-Id: I1584995616fff5d527a2aba63921b682a6194d58\n"
    },
    {
      "commit": "b13b9bdad2baf6ad1ec2e56b6b7598fa20f55fc4",
      "tree": "2b90dc39a35d8081ea47b038893624b69a01202d",
      "parents": [
        "6db0608dff408130b35e6f21abe746a635648b18"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Feb 17 18:27:36 2012 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Feb 17 19:01:26 2012 -0800"
      },
      "message": "frameworks/base refactoring.\n\nstep 2: move libutils headers to their new home: androidfw\n\nChange-Id: I14624ba23db92a81f2cb929f104386e1fab293ef\n"
    }
  ],
  "next": "3762c311729fe9f3af085c14c5c1fb471d994c03"
}
