)]}'
{
  "log": [
    {
      "commit": "5421de844da60f56d9ad9fc353d74a4466c887f2",
      "tree": "7c3a9159425c4ff0ccc602072a09b65de9de4d4f",
      "parents": [
        "859bcfc10ff9e1702d1bc7cfad066807b46db497",
        "a4a1c1bda256219e224ff42c3cc2f4b4c731602a"
      ],
      "author": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Mar 11 21:22:05 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Mar 11 21:22:05 2020 +0000"
      },
      "message": "BnCrypto: fix use-before-init in CREATE_PLUGIN am: 4bbfb6d881 am: a9296786e3 am: 245e44d9cf am: d8d4e80384 am: 886419a51c am: a5d212cfee am: a4a1c1bda2\n\nChange-Id: I1f0701a0e09bed4297c96c6674c4ab092ef262f7\n"
    },
    {
      "commit": "886419a51c28003ad27ff89a9fcd0a4b3230df81",
      "tree": "88b5781497959c2bdaa627c9764ac1ce05e4c5f0",
      "parents": [
        "f3f966faa6f46156726a338208f6c10a97d3fb4b",
        "d8d4e803842bed4188606856858189054a89c95c"
      ],
      "author": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Mar 11 20:40:49 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Mar 11 20:40:49 2020 +0000"
      },
      "message": "BnCrypto: fix use-before-init in CREATE_PLUGIN am: 4bbfb6d881 am: a9296786e3 am: 245e44d9cf am: d8d4e80384\n\nChange-Id: I61799ad95db7c74c031f633a6ec19c27f491bd4b\n"
    },
    {
      "commit": "d8d4e803842bed4188606856858189054a89c95c",
      "tree": "07cbd892a9032ee2899f69abeaf200d0eb447d24",
      "parents": [
        "509f1a5030ec005db387a4f0420af12e03d1b7f8",
        "245e44d9cfe008fcc460126f8992abf6c299a45c"
      ],
      "author": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Mar 11 20:29:38 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Mar 11 20:29:38 2020 +0000"
      },
      "message": "BnCrypto: fix use-before-init in CREATE_PLUGIN am: 4bbfb6d881 am: a9296786e3 am: 245e44d9cf\n\nChange-Id: I480db45b78b567a832d591df0834dbdae6cf88d0\n"
    },
    {
      "commit": "245e44d9cfe008fcc460126f8992abf6c299a45c",
      "tree": "5aabfd0bcd9276de0d1c5f30373f8c4da27c6af9",
      "parents": [
        "8d2c3d65d06bdf21a8fa4715352cb2a12a442579",
        "a9296786e36577a05de3f3500db0cdb2fabf13c0"
      ],
      "author": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Mar 11 20:17:01 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Mar 11 20:17:01 2020 +0000"
      },
      "message": "BnCrypto: fix use-before-init in CREATE_PLUGIN am: 4bbfb6d881 am: a9296786e3\n\nChange-Id: I6518f72aab3fdfd0ec2e455708f3177a4966514e\n"
    },
    {
      "commit": "a9296786e36577a05de3f3500db0cdb2fabf13c0",
      "tree": "667e5e739b038a789797ace35b68120e238e1110",
      "parents": [
        "911b808a6568fee9c2fd1aa89039161195873350",
        "4bbfb6d8815002fc79b26aebba5f3ad2226c468e"
      ],
      "author": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Mar 11 20:05:08 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Mar 11 20:05:08 2020 +0000"
      },
      "message": "BnCrypto: fix use-before-init in CREATE_PLUGIN am: 4bbfb6d881\n\nChange-Id: I943db03ec26b3a7ec24636df46e2a21a472d52d2\n"
    },
    {
      "commit": "4bbfb6d8815002fc79b26aebba5f3ad2226c468e",
      "tree": "958f89fe190c6ef2d9ddc3cc5fec4d6f0d28389f",
      "parents": [
        "58af3de44d17e6ba716178e147474a20765c1441"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Tue Feb 04 17:23:58 2020 -0800"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Tue Mar 10 13:29:13 2020 -0700"
      },
      "message": "BnCrypto: fix use-before-init in CREATE_PLUGIN\n\nBug: 144767096\nTest: poc_ICrypto_283\nMerged-In: Id67dc9e793ee886e4cc49370d800c7f3580df313\nMerged-In: I81ff7cde5e1693f05c90380e879f74d0c4bce5f1\nChange-Id: If268553440b8a0cbbe011b5396974fd864a7d083\n"
    },
    {
      "commit": "6145557b52f4df703a439393d3600b4c88c14860",
      "tree": "1ac4edc77a4c84796e6ee6250351ebd4a84eb698",
      "parents": [
        "8578b23f0d6a47677029eb3ed7a680476dc4baea",
        "42324f6aeff59b2f7eb02cc90ca19397792f4350"
      ],
      "author": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu Feb 13 00:36:33 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu Feb 13 00:36:33 2020 +0000"
      },
      "message": "Revert \"BnCrypto: fix use-before-init in CREATE_PLUGIN\" am: e4e7b91ec8 am: 36af5d0319 am: d0d078020e am: e492965229 am: cadf7289e0 am: 58cc8f2c02 am: 42324f6aef\n\nChange-Id: Id0fa49b3cf61b9e72a2477492d7317312740df36\n"
    },
    {
      "commit": "cadf7289e0dacf4a40422f0b36f97891649d398b",
      "tree": "c7dd4e1762048d401f9d6169e008bb66ce2c53f7",
      "parents": [
        "1142d3ea289b03f2143b789e65fd174ea4854634",
        "e492965229ce184a76eaffe2d9fdfcf9e3db7af2"
      ],
      "author": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu Feb 13 00:12:28 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu Feb 13 00:12:28 2020 +0000"
      },
      "message": "Revert \"BnCrypto: fix use-before-init in CREATE_PLUGIN\" am: e4e7b91ec8 am: 36af5d0319 am: d0d078020e am: e492965229\n\nChange-Id: I66ee63192311c41c892747324b61368655da0db0\n"
    },
    {
      "commit": "e492965229ce184a76eaffe2d9fdfcf9e3db7af2",
      "tree": "2926078ecc63d88d598b6e1541c9a267dbdf6596",
      "parents": [
        "df156dc766918c12b1931eb79919b4db3c959b1a",
        "d0d078020e26dd9ff1f870491bbfef0f9b9560de"
      ],
      "author": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Feb 12 23:59:54 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Feb 12 23:59:54 2020 +0000"
      },
      "message": "Revert \"BnCrypto: fix use-before-init in CREATE_PLUGIN\" am: e4e7b91ec8 am: 36af5d0319 am: d0d078020e\n\nChange-Id: I38c304066ea808014e288dd4ed6a2f89a34492cb\n"
    },
    {
      "commit": "d0d078020e26dd9ff1f870491bbfef0f9b9560de",
      "tree": "2fcced65e527e9c934e8a424994a507150ae4f87",
      "parents": [
        "f0791037c1676ecb6a4af39acabf33db02982545",
        "36af5d03196ce1ce41c753cdd63931072d2044ea"
      ],
      "author": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Feb 12 23:43:15 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Feb 12 23:43:15 2020 +0000"
      },
      "message": "Revert \"BnCrypto: fix use-before-init in CREATE_PLUGIN\" am: e4e7b91ec8 am: 36af5d0319\n\nChange-Id: Ifa7bc3cd86f60b7fb0d557dbbad12dc7f5a1bcdb\n"
    },
    {
      "commit": "36af5d03196ce1ce41c753cdd63931072d2044ea",
      "tree": "861aeab62263d1682d6b1528c06fc0b94a697510",
      "parents": [
        "aca92198a127bb8a7d2e0ba9edcb52954bffcc24",
        "e4e7b91ec85c3b3bdeb74994a68f4bff0f26aefc"
      ],
      "author": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Feb 12 23:32:22 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Feb 12 23:32:22 2020 +0000"
      },
      "message": "Revert \"BnCrypto: fix use-before-init in CREATE_PLUGIN\" am: e4e7b91ec8\n\nChange-Id: Ic58cdb7f33d8eb4acbae84a1fb6885341d177869\n"
    },
    {
      "commit": "e4e7b91ec85c3b3bdeb74994a68f4bff0f26aefc",
      "tree": "482e55c9c1c39b62df473fa54ea3ca65520c9a6a",
      "parents": [
        "51aa2003766aa35d6c6b3ee688a86e117c65b94d"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Tue Feb 11 20:21:05 2020 +0000"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Wed Feb 12 05:01:54 2020 +0000"
      },
      "message": "Revert \"BnCrypto: fix use-before-init in CREATE_PLUGIN\"\n\nThis reverts commit 51aa2003766aa35d6c6b3ee688a86e117c65b94d.\n\nReason for revert: DRM playback regression\n\nBug: 149067513\nChange-Id: I8d8a51efd57c52b444363ce5f5bd04316b2f4bb8\nMerged-In: Id67dc9e793ee886e4cc49370d800c7f3580df313\nMerged-In: I81ff7cde5e1693f05c90380e879f74d0c4bce5f1\n"
    },
    {
      "commit": "06219a4467f8b79440525d1170fb92a6d89dbe2a",
      "tree": "8ba71c86b542d785a9826f5d9c17cf69288873d4",
      "parents": [
        "4c8f695ecbdcbca36d00f981c1e8942022e8de55",
        "14dd42d061759b244240f87d1462938d1c82f5b4"
      ],
      "author": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu Feb 06 01:07:24 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu Feb 06 01:07:24 2020 +0000"
      },
      "message": "BnCrypto: fix use-before-init in CREATE_PLUGIN am: 51aa200376 am: aca92198a1 am: f0791037c1 am: df156dc766 am: 86021896f0 am: 92b34e48ba am: 14dd42d061\n\nChange-Id: Iacc674dbc750cab71e6bd01d3cd0026576371d94\n"
    },
    {
      "commit": "86021896f0811062a47001b20f14bc29badf68e3",
      "tree": "7f201d08c8e44a291da9563882041bd5bbe45d5b",
      "parents": [
        "0ad729efbbe1951d4bad01eebea3843cb23b0420",
        "df156dc766918c12b1931eb79919b4db3c959b1a"
      ],
      "author": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu Feb 06 00:25:51 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu Feb 06 00:25:51 2020 +0000"
      },
      "message": "BnCrypto: fix use-before-init in CREATE_PLUGIN am: 51aa200376 am: aca92198a1 am: f0791037c1 am: df156dc766\n\nChange-Id: I6324e5f0b8be2a3c9dd0d7936fc8379c8daa8365\n"
    },
    {
      "commit": "df156dc766918c12b1931eb79919b4db3c959b1a",
      "tree": "e7d769ee251bd8503fd9c23de72b5d65ba55bfd2",
      "parents": [
        "d651cdcfafd48df0ae0f50f83eb85a35ee5ab0cb",
        "f0791037c1676ecb6a4af39acabf33db02982545"
      ],
      "author": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu Feb 06 00:05:15 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu Feb 06 00:05:15 2020 +0000"
      },
      "message": "BnCrypto: fix use-before-init in CREATE_PLUGIN am: 51aa200376 am: aca92198a1 am: f0791037c1\n\nChange-Id: Iabb65b41883e0b46a7c0ea2e1a98accba1377eae\n"
    },
    {
      "commit": "f0791037c1676ecb6a4af39acabf33db02982545",
      "tree": "a3ad8bf44e83cb5090efe266fba8725836cbf115",
      "parents": [
        "6cf42dbae74a1237cf8861888f990280abbd6ef5",
        "aca92198a127bb8a7d2e0ba9edcb52954bffcc24"
      ],
      "author": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Feb 05 23:52:31 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Feb 05 23:52:31 2020 +0000"
      },
      "message": "BnCrypto: fix use-before-init in CREATE_PLUGIN am: 51aa200376 am: aca92198a1\n\nChange-Id: I19571d507f1234ece0d63542688063f087cf6bd7\n"
    },
    {
      "commit": "aca92198a127bb8a7d2e0ba9edcb52954bffcc24",
      "tree": "5d1f140af64c3b4e00860ec902a3447f1509f0e9",
      "parents": [
        "e545f3c8d3f02b80e0fb10c579510167be91da8b",
        "51aa2003766aa35d6c6b3ee688a86e117c65b94d"
      ],
      "author": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Feb 05 23:40:34 2020 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Feb 05 23:40:34 2020 +0000"
      },
      "message": "BnCrypto: fix use-before-init in CREATE_PLUGIN am: 51aa200376\n\nChange-Id: I8c30b0d77d2f5fae31afd7d1ed4cae194078630f\n"
    },
    {
      "commit": "51aa2003766aa35d6c6b3ee688a86e117c65b94d",
      "tree": "b13d91733897c04147f067dfd9d9b68a69de0f37",
      "parents": [
        "efd8f9e09a1333e85802e855bd15ceca8948baed"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Tue Feb 04 17:23:58 2020 -0800"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Wed Feb 05 18:56:51 2020 +0000"
      },
      "message": "BnCrypto: fix use-before-init in CREATE_PLUGIN\n\nBug: 144767096\nTest: poc_ICrypto_283\nChange-Id: Icd57367f8d912ff0a0cf9067c732b8fce169f29d\nMerged-In: Id67dc9e793ee886e4cc49370d800c7f3580df313\n"
    },
    {
      "commit": "79673cfb78356afb4bb531d5f6fe115ab41930cc",
      "tree": "82f9a497a3221f4043e4af36f19abd4ee00fbb96",
      "parents": [
        "c1a82b91f050f4b496b2d373046cb4c9fc32c8eb"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Fri Sep 20 21:45:01 2019 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Dec 20 15:58:46 2019 +0000"
      },
      "message": "Implement DrmSessionManager w mediaresourcemanager\n\nBug: 134787536\nTest: DrmSessionManagerTest\nTest: DrmSessionManager_test\nTest: ResourceManagerService_test\nChange-Id: Iab9f4f681c83f46b043cefc8633bb3e513a8e75a\nMerged-In: Iab9f4f681c83f46b043cefc8633bb3e513a8e75a\n"
    },
    {
      "commit": "6b2859450f91f1cdd8b3ca2435df4dd37907cd8a",
      "tree": "4accc947ac99fa7246f5f7fc54f35b3c960636b1",
      "parents": [
        "35f148bc5a1cb1efffd9aee0223a06720a303329"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Oct 21 14:52:30 2019 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Oct 24 21:25:53 2019 +0000"
      },
      "message": "Remove more header symlinks\n\nTest: build\nBug: 143245419\nChange-Id: I9bb03d54c7792625b73602f2d3721e29f8f929be\n"
    },
    {
      "commit": "c42403d3efa8f76850a142812fe6104626dd145d",
      "tree": "1c29abf00e041a31a89964df5f849694c7f9a37f",
      "parents": [
        "342d7bcf44b3edcce763f0417ad0a13b11bde285"
      ],
      "author": {
        "name": "George Burgess IV",
        "email": "gbiv@google.com",
        "time": "Fri Oct 18 09:54:32 2019 -0700"
      },
      "committer": {
        "name": "George Burgess IV",
        "email": "gbiv@google.com",
        "time": "Fri Oct 18 09:54:32 2019 -0700"
      },
      "message": "libmediadrm: fix a use of an uninit value\n\nINIT_CHECK() expands to `if (foo) return bar;`, and `EventTimer`\u0027s\ndestructor uses a value that\u0027s only set if `SetAttribute` is called.\nThis CL flips the INIT_CHECK/EventTimer lines to match getKeyRequest.\n\nCaught by clang\u0027s static analyzer:\nframeworks/av/include/media/EventMetric.h:155:7: warning: 2nd function\ncall argument is an uninitialized value\n[clang-analyzer-core.CallAndMessage]\n\nBug: None\nTest: TreeHugger\nChange-Id: Ie0c4fb8c99a56082e234475e539c2ec4bc8fd948\n"
    },
    {
      "commit": "55b259cf5ec16df77b52206e8209f5df2fc214c5",
      "tree": "29989150d2cfb026f11ec5d43edb8116442e7311",
      "parents": [
        "87025d5658d1a3d78c1a634035f7126f0ba8a4f1"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Sep 27 10:21:55 2019 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Oct 01 13:43:37 2019 -0700"
      },
      "message": "Remove libmediadrm symlinks\n\nTest: build\nChange-Id: I53d703b6d34226926437b0207a2b3d51dff6881a\nMerged-In: I53d703b6d34226926437b0207a2b3d51dff6881a\n"
    },
    {
      "commit": "d1ecb917f884e8f5ff69a80c6c22d84f42074300",
      "tree": "b58302fdf89cf0b326d9d51409b14d76318d195f",
      "parents": [
        "402fd7c9a7aead3cfdb75d4d8a21a2c071d69926"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Sep 24 09:27:40 2019 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Sep 25 08:12:32 2019 -0700"
      },
      "message": "Remove MediaPlayer2\n\nBug: 141546997\nTest: build, boot\nChange-Id: Ie2a94aace8286a1fad4e9f59232f761bcab0cc5e\nMerged-In: Ie2a94aace8286a1fad4e9f59232f761bcab0cc5e\n"
    },
    {
      "commit": "af905470168892078ca85cbd77c844b07f46d1d7",
      "tree": "02acf167a294e18f49a8cf075aa6ee7eb21fbf68",
      "parents": [
        "1210f45ea764f0d186e55a19c068283a4ff6cfac"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Fri Sep 06 12:08:49 2019 -0700"
      },
      "committer": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Fri Sep 06 12:08:49 2019 -0700"
      },
      "message": "Remove libhwbinder/libhidltransport deps\n\nSince these were combined into libhidlbase.\n\nBug: 135686713\nTest: build only (libhwbinder/libhidltransport are empty)\nChange-Id: I6cc85a91afb603e31b85090917f9f3b59d82a4d1\n"
    },
    {
      "commit": "a503326e7af89f27c2e65c2c4447e8105547274a",
      "tree": "ba7832aa20f336536c1c0006f3fda4c65dc2a2e7",
      "parents": [
        "3aa95defac2624f05130927ea3e3f5a56ea617e5"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Mon May 06 14:15:12 2019 -0700"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Mon May 06 20:19:42 2019 -0700"
      },
      "message": "DrmHal: add key status usable_in_future\n\nBug:116738851\nTest: DrmMetrics_test\nChange-Id: Ifdd63ce94d3e145840b155a982612ba980cc456d\n"
    },
    {
      "commit": "33f0363ef1c22781f4dffc8644591543431eda89",
      "tree": "15a184bfeec4ae89895f93cc065bd816c92820f6",
      "parents": [
        "2ddd17ca5c49fe02c459b7026d4c271bf76c4e3c"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Fri May 03 15:10:56 2019 -0700"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Fri May 03 15:48:32 2019 -0700"
      },
      "message": "Fix NULL pointer dereference issues in CryptoHal::toSharedBuffer\n\nbug:111636206\ntest: gts media tests\nChange-Id: Ia3b664ccff554000084438f74e004a82c69a20da\n"
    },
    {
      "commit": "83dc265bde1be0f58161a4606b0a72d053288ff3",
      "tree": "c2ce03740c1639b974f21ce5941e931a2b924ba7",
      "parents": [
        "ffa6f9191ee3e50a5c140b0d3cae27d7f7c87a3f",
        "6a3052232c606bc2f74a849c6758fd44b6c01158"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 31 21:47:33 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 31 21:47:33 2019 +0000"
      },
      "message": "Merge \"use MediaAnalyticsItem::create() instead of new\""
    },
    {
      "commit": "6a3052232c606bc2f74a849c6758fd44b6c01158",
      "tree": "529ee3bb94a17c06e19c8642daf9993f23d531f2",
      "parents": [
        "2637984613a75eb2640a73e186a6dd1f08cebbc0"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Mon Jan 28 20:33:18 2019 -0800"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Thu Jan 31 11:19:44 2019 -0800"
      },
      "message": "use MediaAnalyticsItem::create() instead of new\n\nBug: 123543489\nTest: boot/logcat, select CtsMediaTests\nChange-Id: I92f8b9987b78466fae74ce4c0b177f8bb1e7dea8\n"
    },
    {
      "commit": "9a95b0f26e5d30947e8f17888c093ceac6593087",
      "tree": "cc1f63c5160f3af9710dd5d43644f4c50fdc544e",
      "parents": [
        "4b7f683cf9fbaa2b427f03bd067ee2588906ac44"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Wed Jan 30 17:39:20 2019 -0800"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Thu Jan 31 00:51:07 2019 -0800"
      },
      "message": "Resolve feedback from API review\n\nFix inconsistent naming of offline license states\n\nbug:120489407\nbug:120488811\ntest:cts and gts media tests\n\nChange-Id: I8473211d96383977ad33e4bd770fc4c71d9bd15f\n"
    },
    {
      "commit": "db3fa5f9ff069697b70f2a702177f1db83a6d5b7",
      "tree": "5ac815ae62bcb6e6fea949385afe2c53508db0f7",
      "parents": [
        "8ce16d8609ee14dfbfafeecfb3cb5d1ebb94f1f2"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Fri Jan 25 22:56:56 2019 -0800"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Wed Jan 30 07:09:41 2019 +0000"
      },
      "message": "Throw exception on mismatched system vs vendor\n\nWhen the system partition is a later version than vendor,\nnew MediaDrm APIs will not have HAL implementations. In\nthis case throw java.lang.UnsupportedOperationException.\n\nbug:110701831\nbug:123375769\n\ntest: cts media test cases, gts media tests\nChange-Id: Ib631bf4d4d245d857e61bd3fe0e5808e430a034d\n"
    },
    {
      "commit": "99dbfa822e277956799e987c106d4ec1b7984f1b",
      "tree": "d5ab50d0657b41554e0594ebb9a30f058ca3d1e3",
      "parents": [
        "701768e80731da3df0edac97fb8fc442ffbbd33f"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Thu Jan 17 17:27:06 2019 -0800"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Tue Jan 22 23:27:10 2019 +0000"
      },
      "message": "Add securityLevel to MediaDrm isCryptoSchemeSupported API\n\nbug:110701831\ntest: cts media test cases, widevine integration tests\n\nChange-Id: Ia4308a27a11a279db1fb127c51d752ecaa86dfcb\n"
    },
    {
      "commit": "9f81192d77a62564dc1e2c7dad1afe601784a7b9",
      "tree": "3c95f5e062dc1f2a9ef83515a3cd667a0e23be98",
      "parents": [
        "c8b2701a2f899bdd0fc01b2bcb38e372c855e523",
        "44c2cc4e1637d6f7c43f14f0dbd6f078497719a2"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Sat Jan 19 05:48:04 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Jan 19 05:48:04 2019 +0000"
      },
      "message": "Merge \"Add support for HDCP 2.3\""
    },
    {
      "commit": "020d1b52530555553059fd30939bd13c458f7188",
      "tree": "7b28240a96cff7f520cf0a3672aeb5bd78d39141",
      "parents": [
        "a5d726d37a163fa02f1c96a9c97fe9651a22630e",
        "ca5642cd9ccd95cae88dd9204958419e279ea532"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 16 01:08:45 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 16 01:08:45 2019 +0000"
      },
      "message": "Merge \"List drm HALs from manifest\""
    },
    {
      "commit": "44c2cc4e1637d6f7c43f14f0dbd6f078497719a2",
      "tree": "06359af63d9914277f39b322ffcf46fa3761c9a6",
      "parents": [
        "0ddaa5966b8980670bf08ba4a90823967fb3654e"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Mon Jan 14 10:24:18 2019 -0800"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Mon Jan 14 23:18:33 2019 -0800"
      },
      "message": "Add support for HDCP 2.3\n\nbug:120040804\nChange-Id: I937fb776f93fb0041e6f152bb12b6d1e84c2188f\n"
    },
    {
      "commit": "ca5642cd9ccd95cae88dd9204958419e279ea532",
      "tree": "f53b445fe98b892083c1ea735980d9b7ac7907f4",
      "parents": [
        "8292a716361d0f02de2b79242aec4630664bc770"
      ],
      "author": {
        "name": "Peter Kalauskas",
        "email": "peskal@google.com",
        "time": "Mon Nov 12 12:34:42 2018 -0800"
      },
      "committer": {
        "name": "Peter Kalauskas",
        "email": "peskal@google.com",
        "time": "Mon Jan 14 15:10:26 2019 -0800"
      },
      "message": "List drm HALs from manifest\n\nTo support lazy drm HALs, libmediadrm needs to list all available HALs\nthat are defined in the manifest. Otherwise, it will only list HALs that\nare currently running. This change is necessary because lazy HALs do not\nrun until they are requested. Without this change, libmediadrm would not\nbe aware that the lazy HALs are present, and it would not know to call\ngetService() to start them.\n\nTest: Run gts\nBug: 112386116\nChange-Id: I9b41c60d574b9c8c857b8838a5bbdc64388c9ddb\n"
    },
    {
      "commit": "b8684f3a673dff814d68b2f695991e554718fd8b",
      "tree": "7eb43a0d55dadf57c43c9058233e73e37dcad76e",
      "parents": [
        "a280b264cd99be8d682e3a5c14b1d25649481100"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Wed Dec 12 08:41:31 2018 -0800"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Thu Jan 10 01:54:32 2019 -0800"
      },
      "message": "Add additional error conditions to MediaDrm\n\nNew codes are being added to handle resource\ncontention, lost session state, frame size too\nlarge and insufficient security level for\ndecryption. Also cleans up inconsistent use of\ntamper detected error where invalid state error\nshould have been used.\n\nbug:111504510\nbug:111505796\ntest:cts and gts media test cases\n\nChange-Id: I28ca04cdc8ce64047d189fcf4d59bab24208e1a7\n"
    },
    {
      "commit": "7676a406a2fff64c8c465c879300a7a35e2e0739",
      "tree": "efa4af971daa63294d677190b188205cdd463226",
      "parents": [
        "f25675d38948d6e6eefc45f893f659467eab6471"
      ],
      "author": {
        "name": "Peter Kalauskas",
        "email": "peskal@google.com",
        "time": "Thu Dec 27 11:04:16 2018 -0800"
      },
      "committer": {
        "name": "Peter Kalauskas",
        "email": "peskal@google.com",
        "time": "Wed Jan 02 11:50:48 2019 -0800"
      },
      "message": "Make assignment of mPlugin members consistent\n\nBefore, it was possible for mPlugin, mPluginV1_1, and mPluginV1_2 to be\nassigned to different plugins. Now, they are guaranteed to always point\nto the same object. Also to be safe, mPlugin is set to NULL if there is\nan initailization error.\n\nTest: Run gts on blueline\nBug: 112386116\nBug: 121382196\nChange-Id: Ie3ff7369e0c66d4502fab3f4a1d18b2882140143\n"
    },
    {
      "commit": "2ba48f84870b0d266d6dd244d9e0642617719176",
      "tree": "28b80c52e5bd2f36830a8902281a243758152f8c",
      "parents": [
        "d4b7efe5b000f1d0c1534690a85242b4de6b54f0"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Dec 21 10:36:15 2018 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Dec 21 10:37:18 2018 -0800"
      },
      "message": "Remove some more unused libraries from media libraries\n\nTest: build\n\nChange-Id: I1d7af4398f383305a8dd3a61a19a587e7d8ad01c\n"
    },
    {
      "commit": "e21f3418be2e323ad1ed64d79f862474f2c98c76",
      "tree": "ebe720944fed506f0d6f70268c00308e4da3462f",
      "parents": [
        "8a05b94e8bac22bda3e89aede3d9bf1932f68b9c",
        "588a335fda96327ddd3e1a133bda219fde2281a2"
      ],
      "author": {
        "name": "Chih-hung Hsieh",
        "email": "chh@google.com",
        "time": "Mon Dec 17 15:09:45 2018 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Dec 17 15:09:45 2018 -0800"
      },
      "message": "Merge \"Remove redundant Wno-error.\" am: b09dcb15d5 am: c2e9546757\nam: 588a335fda\n\nChange-Id: I4939be7a90acf307ffd8bfb57d512b5f7f7aa490\n"
    },
    {
      "commit": "02129c666dc54e4033ff11247ee199a12d477a00",
      "tree": "0af9e77f2f97cbbb4cd7e23555fe4ba7bdf15137",
      "parents": [
        "1ce37f1de3f7185ccffd4d9145b036941a582fe4"
      ],
      "author": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Thu Dec 13 15:02:48 2018 -0800"
      },
      "committer": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Thu Dec 13 15:02:48 2018 -0800"
      },
      "message": "Remove redundant Wno-error.\n\nBug: 66996870\nTest: make checkbuild\nChange-Id: Iefa69e25b752d44c89b7a2569a745556e129a2bd\n"
    },
    {
      "commit": "c8baaba1ee057336c0f9293a1762befded9b5936",
      "tree": "ff28a3497e5660eb564dda6571b5bb90ac2d485c",
      "parents": [
        "71fb1a8ce526868a1b36058a1a27260946f83d59"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Tue Oct 23 11:32:36 2018 -0700"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Wed Nov 07 17:31:36 2018 -0800"
      },
      "message": "Add new offline management APIs to MediaDrm\n\nbug:110838441\nbug:117570956\nbug:116252891\n\ntest:cts android.media.cts.MediaDrmClearkeyTest#testOfflineKeyManagement\n\nChange-Id: I2ee86afbd1a0ae793454c2e81f3267aaf10bade7\n"
    },
    {
      "commit": "2aab8817c630a446fefaefb706c6e2d1e42b1ecc",
      "tree": "e55b624b6a7d694d53f40141bf5db0a176242d39",
      "parents": [
        "608f8c4479f9f5ee2a75629de9a3324e1a529267",
        "0fc8f214ed433cf5e9d90e71988309809f8c536c"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Aug 31 00:58:47 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Aug 31 00:58:47 2018 +0000"
      },
      "message": "Merge \"Remove drm log spam\""
    },
    {
      "commit": "0fc8f214ed433cf5e9d90e71988309809f8c536c",
      "tree": "a77b7e7a9ff7786c8ecf54eeb5fa55d8be6afc3b",
      "parents": [
        "f344afa981e537b5f354352284272a8a51cf6759"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Thu Aug 30 15:46:58 2018 -0700"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Fri Aug 31 00:52:35 2018 +0000"
      },
      "message": "Remove drm log spam\n\ntest:compiles\nbug:77813983\nChange-Id: Iae9c8d3a958cad74dd10395a5184a3b82d263200\n"
    },
    {
      "commit": "c500d921d3ce041f04d2f5e3bde63deb2b773c2a",
      "tree": "4b998ed0cdccfdaa4c12708047936482da21aaea",
      "parents": [
        "73835b362cd0ed14f6e99d361485f02ad4759151"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Tue Jul 24 14:13:13 2018 -0700"
      },
      "committer": {
        "name": "android-build-team Robot",
        "email": "android-build-team-robot@google.com",
        "time": "Thu Aug 16 16:39:43 2018 +0000"
      },
      "message": "Fix information disclosure in mediadrmserver\n\nTest:POC provided in bug\nBug:79218474\nChange-Id: Iba12c07a5e615f8ed234b01ac53e3559ba9ac12e\n(cherry picked from commit c1bf68a8d1321d7cdf7da6933f0b89b171d251c6)\n"
    },
    {
      "commit": "22fca9cd6248868e96cd3abb99b25d74948baada",
      "tree": "4b7c1cd65b4ec7790293bd903e9f7a9092e84ae0",
      "parents": [
        "0c6fa04393feee62429a8d672f194f430c122dea",
        "f19106c7cc11e62411677d8f4a4059e315bf8279"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Wed Aug 15 01:23:12 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Aug 15 01:23:12 2018 -0700"
      },
      "message": "Merge \"Fix information disclosure in mediadrmserver\" into oc-dev am: f452267ae8 am: dd57ac5b26\nam: f19106c7cc\n\nChange-Id: I793b94bfbb7305bffcdd1c8c44fa989a10f3a4af\n"
    },
    {
      "commit": "f19106c7cc11e62411677d8f4a4059e315bf8279",
      "tree": "a0065d9a61b580c97e698651cc94ad9dd384911c",
      "parents": [
        "fc842287cc2c1397c03a48f6d60a54e4dcf109f4",
        "dd57ac5b265b50dc90fb01750f64f901a2f5b048"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Tue Aug 14 21:20:16 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Aug 14 21:20:16 2018 -0700"
      },
      "message": "Merge \"Fix information disclosure in mediadrmserver\" into oc-dev am: f452267ae8\nam: dd57ac5b26\n\nChange-Id: I6bf2cbd05b71fc09320de267c89210319be427a6\n"
    },
    {
      "commit": "dd57ac5b265b50dc90fb01750f64f901a2f5b048",
      "tree": "c1e00d3d7d9f8fc5c2d58fa80e440f3d98d39d27",
      "parents": [
        "960c43e6f5dc9b0683e80f5cd04fa8d5a73426ce",
        "f452267ae8b167c108c060694aa60f6f9674dcb6"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Tue Aug 14 18:11:33 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Aug 14 18:11:33 2018 -0700"
      },
      "message": "Merge \"Fix information disclosure in mediadrmserver\" into oc-dev\nam: f452267ae8\n\nChange-Id: I96ab0c115e78c10930a9bd12837b422f8cd8bce5\n"
    },
    {
      "commit": "c1bf68a8d1321d7cdf7da6933f0b89b171d251c6",
      "tree": "fb5e5c15f56bf6fd586dde6b0f71528a5dffba92",
      "parents": [
        "11eddd5a222180edbf7fba4f69d733463ebf4553"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Tue Jul 24 14:13:13 2018 -0700"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Tue Jul 24 14:13:13 2018 -0700"
      },
      "message": "Fix information disclosure in mediadrmserver\n\nTest:POC provided in bug\nBug:79218474\nChange-Id: Iba12c07a5e615f8ed234b01ac53e3559ba9ac12e\n"
    },
    {
      "commit": "20795c7cec69916c7a156e6c7593924d4517f05b",
      "tree": "b5a3dfe1f32ba87e8dd9743251822f5b0ca2e378",
      "parents": [
        "0db0fa1db2536d5d86dae49a043e8192fe04d1c1"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Wed May 30 18:20:09 2018 -0700"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Wed May 30 18:24:32 2018 -0700"
      },
      "message": "Fix mediadrmserver segfault in GTS tests\n\nWhen clearHeapBase is called after a plugin is\nclosed, a null pointer is dereferenced. Protect\nagainst it with a null pointer check.\n\nTest: GTS media tests, check logcat for faults\n\nbug:80434750\nChange-Id: Ib568694c44fe22887c3db4f88e67cb598fd9e36a\n"
    },
    {
      "commit": "0db0fa1db2536d5d86dae49a043e8192fe04d1c1",
      "tree": "a967fee5359c075a2e370218b9086d0480dd0f48",
      "parents": [
        "6f8f2c88c6351218d249c8676ed351fb17c6e17f"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Tue May 22 16:55:57 2018 -0700"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Tue May 22 17:29:05 2018 -0700"
      },
      "message": "Unmap shared memory when no longer used\n\nCryptoHal in mediadrmserver was not releasing the\nshared memory allocated remotely in the drm HAL\nmodule until the HAL was closed, which could cause\nshared memory allocation failures in situations\nwhere multiple memory regions get mapped during\nplayback. This change releases the shared mapping\nin the HAL when it is no longer needed.\n\nbug:80104026\n\ntest:\n 1. manual tests with logging to ensure\n   shared memory is released\n 2. gts media tests on walleye\n\nChange-Id: Ie2f306bce6aec697ae584da3f55b3cf72edaa07b\n"
    },
    {
      "commit": "5793dbbeec257c0327d42171244bf33a619e0d2d",
      "tree": "38147235e1cc6649b767028992f9d3a181da7d9f",
      "parents": [
        "d306d5931c4bada416ce406574a30240ae4af8e2",
        "9ac536d2ef0e90656201db895dc8a6f33736452e"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Fri May 11 12:48:00 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri May 11 12:48:00 2018 -0700"
      },
      "message": "Merge \"Fix security vulnerability in CryptoHal\" into oc-dev am: 20e00b3f96\nam: 9ac536d2ef\n\nChange-Id: I15d0645e9ecf47dcd21d8d5005b24a67b34f92fb\n"
    },
    {
      "commit": "9ac536d2ef0e90656201db895dc8a6f33736452e",
      "tree": "672e8cfbbb1a34775c86f702d5d9ff99dd3d2435",
      "parents": [
        "af7ec75b23529514f08041662b6875bfde471da3",
        "20e00b3f96d564277a244625b6d15d8671c64be5"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Fri May 11 12:42:31 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri May 11 12:42:31 2018 -0700"
      },
      "message": "Merge \"Fix security vulnerability in CryptoHal\" into oc-dev\nam: 20e00b3f96\n\nChange-Id: I55c59bfe9a1d1e2444e4c5d7b244a0a99dae2b04\n"
    },
    {
      "commit": "9a9c3ab4d76f03f3abb3756bca9cdfe55c74326a",
      "tree": "83e6850acd836e6da37b6eaf9fed9bb0e36eb26b",
      "parents": [
        "2b37975b8904ef25b2fd42db442e286ea1d48299"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Thu Apr 19 16:23:21 2018 -0700"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Fri May 11 16:40:17 2018 +0000"
      },
      "message": "Fix security vulnerability in CryptoHal\n\nCryptoHal was not checking that the memory heap set by setHeap\nwas the same one that was actually used for the decrypt call, allowing\nthe caller to spoof the decrypt call into accessing arbitrary memory.\n\nbug:76221123\ntest: mediadrmserverpoc included in the bug \u0026 GTS media tests\nChange-Id: I35214a1a6d0a4b864123e147d1a1adc2377bfbc5\nMerged-in: I4ae6d1080be406bf53e3617c59c75206cc5066c6\n"
    },
    {
      "commit": "b1f8c80d3a0c144407d1bd6b63eb6ac9e90112f2",
      "tree": "a97d00e9565b2e7276dafa3aac15b823c952cfc2",
      "parents": [
        "1ab07d1de9875dab00960d3939d0a00bc2ec5864"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Thu Apr 19 16:23:21 2018 -0700"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Thu May 10 23:23:39 2018 +0000"
      },
      "message": "Fix security vulnerability in CryptoHal\n\nCryptoHal was not checking that the memory heap set by setHeap\nwas the same one that was actually used for the decrypt call, allowing\nthe caller to spoof the decrypt call into accessing arbitrary memory.\n\nbug:76221123\ntest: mediadrmserverpoc included in the bug \u0026 GTS media tests\nChange-Id: I35214a1a6d0a4b864123e147d1a1adc2377bfbc5\n"
    },
    {
      "commit": "ff5ab0678880ade264efda5410822b4aee58d12d",
      "tree": "3833ee2f4885088230c5c0032005811bafaf7fa7",
      "parents": [
        "ec2c0359ecc1225ea8d15bd16fd6e01d5c006933",
        "342f5ff6ec6d28559464e20139cb5ae133eef31b"
      ],
      "author": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Thu May 10 17:00:24 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 10 17:00:24 2018 +0000"
      },
      "message": "Merge \"Fixes the transformation of metrics.\" into pi-dev"
    },
    {
      "commit": "cca23778417af60e793b80c21c021cafb72f49d5",
      "tree": "7f182d26761aa98941a1baa171faabf37b850ee3",
      "parents": [
        "9ce18f72203d523e7378ddb3f0432871973df561"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Mon May 07 11:41:56 2018 -0700"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Wed May 09 16:49:34 2018 +0000"
      },
      "message": "Fix abort in CryptoHal: missing hidl status check\n\nA method in CryptoHal was not checking the\nhidl transaction status which causes an abort\nif the transaction fails.\n\nbug:79170524\ntest:gts media tests, netflix playback\n\nChange-Id: Ia58500f0f2c64f987809360d3d7ead810ee01180\n"
    },
    {
      "commit": "630092e11dcff57a3a70e2fe1935bf58c5331e2f",
      "tree": "512c0f0c48147550ffba87934e06bc645062900f",
      "parents": [
        "3e69b248ef8805b888ea1ec76f3bab773db05589"
      ],
      "author": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Wed May 02 13:06:34 2018 -0700"
      },
      "committer": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Mon May 07 14:39:00 2018 -0700"
      },
      "message": "Fix an incorrect CHECK in the code.\n\nThis is a trivial fix for an incorrect check.\n\nBug: 77262269\nTest: Re-ran unit tests and GTS tests. Verified Google Play.\nChange-Id: I807d8488f65c60c03779064cb92bbbd6c60267e4\n"
    },
    {
      "commit": "342f5ff6ec6d28559464e20139cb5ae133eef31b",
      "tree": "ed4870e811a519367d93c901c9ce99bfc1cbf9f7",
      "parents": [
        "3e69b248ef8805b888ea1ec76f3bab773db05589"
      ],
      "author": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Thu May 03 16:54:57 2018 -0700"
      },
      "committer": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Thu May 03 16:54:57 2018 -0700"
      },
      "message": "Fixes the transformation of metrics.\n\nThis changes slightly the way metrics are converted from the HIDL\ninterface to the MediaDrm interface. This provides a cleaner\nrepresentation for querying metrics.\n\nBug: 73724453\nTest: New and existing unit tests. Updated and existing GTS. Google Play\nmanual.\n\nChange-Id: I9be170784a19ca3e89add53cea1cdfcaad6d65eb\n"
    },
    {
      "commit": "e641294b59e2a0792d894139d739228f182409b4",
      "tree": "b59ac4fb20794c2bff3693004904e1b449fa3f22",
      "parents": [
        "0f59472e584f9962a7ef390d1dba90ca2c0ad8be"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Mon Apr 30 17:35:16 2018 -0700"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Tue May 01 17:49:02 2018 +0000"
      },
      "message": "Fix abort due to missing hidl status check\n\nTwo methods in DrmHal were not checking the\nhidl transaction status which causes an abort\nif the transaction fails.\n\nChange-Id: Ie4b6d4ae6507f073efa55412c21ceba317e2881d\nrelated-to-bug:78646354\ntest:gts media tests, netflix playback\n"
    },
    {
      "commit": "1326ffef6a74ba288809920ab4ad65eda1b33f1f",
      "tree": "65ce882dbb99050c1817a6fed3be9665277b02bf",
      "parents": [
        "1f0cbeddf430e24d943892381600262ae3ce542e"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Mon Apr 16 14:44:55 2018 -0700"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Fri Apr 27 23:43:56 2018 +0000"
      },
      "message": "Fix native_handle leak in CryptoHal\n\nbug:77869193\nChange-Id: Ibf9f48c469753fb57025427fa1a3feace4412993\n"
    },
    {
      "commit": "fdd2cad293ab12d4066bb944142ca5d6b862c4b9",
      "tree": "0894d05a22773f61f6d70f11bccdd6bf04c52762",
      "parents": [
        "fcf9a4c7e2d646154927a53d7a25bef5c4c380d7"
      ],
      "author": {
        "name": "Edwin Wong",
        "email": "edwinwong@google.com",
        "time": "Sat Mar 31 16:31:29 2018 -0700"
      },
      "committer": {
        "name": "Edwin Wong",
        "email": "edwinwong@google.com",
        "time": "Sat Mar 31 16:31:29 2018 -0700"
      },
      "message": "Fix potential memory leak.\n\nIn the onTransact DECRYPT case, the allocated subSamples\nare not freed when we encounter an error. Use unique_ptr\nto manage memory instead.\n\nTest: Play Movies \u0026 TV, Netflix\nTest: Gts\n\nbug: 73628269\nChange-Id: I36b7deeff0380ee3be31ad5f93a5598cfe02e381\n"
    },
    {
      "commit": "32494f5438db362e96b69e5fda7b2fd34633b562",
      "tree": "05117fdb47464a3de366fc60010e7255dce44b3b",
      "parents": [
        "56ecf3e3ce36d111a17d67485047836660128629"
      ],
      "author": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Mon Feb 26 22:53:27 2018 -0800"
      },
      "committer": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Thu Mar 22 15:54:58 2018 -0700"
      },
      "message": "Fixes serialization of vendor metrics\n\nUses an updated proto model that\u0027s more efficient for serialization.\n\nTest: Unit tests, google play and CTS tests.\nBug: 73724218\n\nChange-Id: I936bc18216c0c67de580424b4c62344d94be6b38\n"
    },
    {
      "commit": "5830c5a1b0e10057589eff3b4d0015fe849374a2",
      "tree": "462b34e8cd776cacb9385910b09ead013a64e80c",
      "parents": [
        "006b7eebe4c86eba7a67471d99b061b6b76177f5",
        "28f27c3bee88b0f47b1086feeaa904bcdec37af6"
      ],
      "author": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Wed Feb 28 03:21:26 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 28 03:21:26 2018 +0000"
      },
      "message": "Merge \"Adds HAL metrics support for Media Drm\""
    },
    {
      "commit": "4f8f900d3cb8ee117980705ac5df250f9df63bfc",
      "tree": "9cb144737b86c91e2053293b611589ec79946af0",
      "parents": [
        "547921396126d2e5e6387a04bc971e616250574b",
        "7d2c6e8be2c9a4f3c1364d243856a345f17f851e"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Feb 27 22:02:33 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 27 22:02:33 2018 +0000"
      },
      "message": "Merge \"Move mediadrm-related headers\""
    },
    {
      "commit": "58ad475e3aa567bec63108970855e6518c90d42e",
      "tree": "370ba2179221aeda2845835888855099c7d1c39b",
      "parents": [
        "5df26c9b85a9345b84cb9a0d4f937b7df8855a5a"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Fri Feb 16 16:51:59 2018 -0800"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Tue Feb 27 19:23:15 2018 +0000"
      },
      "message": "Fix hidl return checks\n\nSome drm HAL methods were not properly checking\ntheir hidl Return\u003cStatus\u003e values which would cause\naborts in some cases. This CL adds checks as needed\n\nTest: GTS media tests\nbug:73500808\nChange-Id: I47ae0f82d4e614b1e78923ed48fbe4c024df5d71\n"
    },
    {
      "commit": "28f27c3bee88b0f47b1086feeaa904bcdec37af6",
      "tree": "0f2822d51fbe3186bf5b67f20efd27205b1de14b",
      "parents": [
        "f51cb69506670403cf1da2c66a3290c2f47344b6"
      ],
      "author": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Mon Feb 05 15:07:48 2018 -0800"
      },
      "committer": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Mon Feb 26 20:23:30 2018 -0800"
      },
      "message": "Adds HAL metrics support for Media Drm\n\nAdds support to fetch metrics from vendor and convert them to a proto\nbundle returned from a call to getMetrics.\n\nBug: 64001676\n\nTest: CTS test for metrics and GPlay test\nChange-Id: I05634dd1bf092e64e2d0e77c4c0e243340af48e3\n"
    },
    {
      "commit": "7d2c6e8be2c9a4f3c1364d243856a345f17f851e",
      "tree": "3aab41fe8acce7056a1e7b01ebc2e8882e416b9a",
      "parents": [
        "987ac7056040ed1594dc975c8a9d7cee463fa834"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Fri Feb 16 16:14:59 2018 -0800"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Fri Feb 16 17:04:00 2018 -0800"
      },
      "message": "Move mediadrm-related headers\n\nRelocate drm and crypto headers from media\nto mediadrm to have finer grained ownership\n\nbug:73556221\nChange-Id: I7d1b5944f261f9b1fdeed7605e4c0b4b4ca43e1a\n"
    },
    {
      "commit": "81b4dff2763c795792f524e1e4cb068b64e659ad",
      "tree": "df6fdda0f8fc8f342458de2245eed1744389c30d",
      "parents": [
        "d2ce2b807b26a46570cb823544a86c0589ceddc6",
        "7dfe28f246bce404778f94e977b52699adfcb4ea"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Fri Feb 16 20:07:49 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 16 20:07:49 2018 +0000"
      },
      "message": "Merge \"Fix missing check of hidl return status\""
    },
    {
      "commit": "987ac7056040ed1594dc975c8a9d7cee463fa834",
      "tree": "d6032f31e60e61e5f28e857b882ba27102683bc7",
      "parents": [
        "f51cb69506670403cf1da2c66a3290c2f47344b6"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Thu Feb 15 17:02:22 2018 -0800"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Thu Feb 15 17:04:04 2018 -0800"
      },
      "message": "Minor code cleanups to DrmHal\n\nTest: builds\n\nChange-Id: I0bec98033e4de020c09374dadaade9d9906f0d40\nrelated-to-bug:64001676\n"
    },
    {
      "commit": "7dfe28f246bce404778f94e977b52699adfcb4ea",
      "tree": "13c730c428948f355ffc46da6c8e8032ccc98311",
      "parents": [
        "f51cb69506670403cf1da2c66a3290c2f47344b6"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Thu Feb 15 12:17:40 2018 -0800"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Thu Feb 15 12:17:40 2018 -0800"
      },
      "message": "Fix missing check of hidl return status\n\ncloseAllSessions() was calling into the hidl interface closeSession\ndirectly, and neglected to check the return status which resulted in\nan abort. Instead, call the DrmHal::closeSession() method which handles\nthe hidl return status correctly.\n\nTest: gts media tests\n\nbug:72400509\nChange-Id: I697997eb73ef6d8746fe695509671c4695124cee\n"
    },
    {
      "commit": "fb679e38bbc91614faa917024adddeb51ff07d0a",
      "tree": "71c39782f7a5378ab9f383d31e053bff59ef41d2",
      "parents": [
        "8cc97b178bc6c744eaeef526eca7a4e3f24a1a0e"
      ],
      "author": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Wed Feb 07 10:25:48 2018 -0800"
      },
      "committer": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Tue Feb 13 12:57:37 2018 -0800"
      },
      "message": "Add logging support for FW metrics\n\nAdds proto serialization and logging support for media drm framework metrics.\n\nBug: 64001676\n\nTest: Ran CTS tests, unit tests and Google Play.\nChange-Id: Ie350ac93caa6b35610eb63e4acc860c8e8a5cf5b\n"
    },
    {
      "commit": "8cc97b178bc6c744eaeef526eca7a4e3f24a1a0e",
      "tree": "5a094043d266c0c87b0292e659eab22ae7d034be",
      "parents": [
        "031b695b8e37ca3591ac2f5eb952f6c21439d445",
        "568b3c45d48fab64c80b2780e8547564d35722e9"
      ],
      "author": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Tue Feb 13 18:14:40 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 13 18:14:40 2018 +0000"
      },
      "message": "Merge changes from topic \"media-drm-fix-list-metrics\"\n\n* changes:\n  Fix Metrics with PersistableBundle support\n  Fix DrmHal implementation to return all metrics\n"
    },
    {
      "commit": "568b3c45d48fab64c80b2780e8547564d35722e9",
      "tree": "18cb767806a83262cb74a7d1ab25bcd0e1334ab8",
      "parents": [
        "637b7855829920114a8863b93fe52203b7471eea"
      ],
      "author": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Wed Jan 31 12:57:16 2018 -0800"
      },
      "committer": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Mon Feb 12 14:35:27 2018 -0800"
      },
      "message": "Fix Metrics with PersistableBundle support\n\nSome metrics required a conversion to using PersistableBundle to support\nslightly richer structure (lists, and nested PBs).\n\nBUG: 64001676\n\nTest: Ran updated CTS test and verified Google Play works.\nChange-Id: I8f8d67ba04b234f2ac5ac348a8945e20837f98d6\n"
    },
    {
      "commit": "e307dc4e7b2c9d3c4018a755db687309cf590369",
      "tree": "05cb67d957ee0b3f7f193df6914b4d6aa487fb8b",
      "parents": [
        "41d279a7f3bc55a63b510d4dce07e18964cda152"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Sun Feb 11 19:53:54 2018 +0000"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Sun Feb 11 12:52:11 2018 -0800"
      },
      "message": "Revert \"Revert \"Update drm hal to find drm@1.1 factories\"\"\n\nThis reverts commit d3eece8aa39560e8458ba8231b8684d99f11ee6b.\n\nChange-Id: I15ca1dba1a384ccc026406f0a9a02c2598873456\n"
    },
    {
      "commit": "41d279a7f3bc55a63b510d4dce07e18964cda152",
      "tree": "5d2c1f4a1ddabe93b57e6e3b0e616cab1f871645",
      "parents": [
        "c23849a8ea5d7e2939e9d8a0aa8b6da9c08ee625"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Sun Feb 11 19:52:08 2018 +0000"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Sun Feb 11 12:51:19 2018 -0800"
      },
      "message": "Revert \"Revert \"Fix MediaDrm security level APIs\"\"\n\nThis reverts commit 5f5e43fa83551a3636b92871bd2ad6b260a8815b.\n\nChange-Id: I72d585fd3768730eef6ad9effdbda81b32418dea\n"
    },
    {
      "commit": "5f5e43fa83551a3636b92871bd2ad6b260a8815b",
      "tree": "e6010dce1f091847db51b7464c566af774a98f74",
      "parents": [
        "56134cc9e790f39b3b10a18b701b0607c20b6154"
      ],
      "author": {
        "name": "Tobias Thierer",
        "email": "tobiast@google.com",
        "time": "Sun Feb 11 15:00:57 2018 +0000"
      },
      "committer": {
        "name": "Tobias Thierer",
        "email": "tobiast@google.com",
        "time": "Sun Feb 11 15:04:10 2018 +0000"
      },
      "message": "Revert \"Fix MediaDrm security level APIs\"\n\nThis reverts commit 56134cc9e790f39b3b10a18b701b0607c20b6154.\n\nReason for revert: Build cop here. The CL topic that I\u0027m reverting broke several builds: Drm.h\u0027s openSession(Vector\u003cuint8_t\u003e \u0026sessionId) hides overloaded virtual function openSession(DrmPlugin::SecurityLevel securityLevel, ..) from IDrm.h.\n\nhttps://android-build.googleplex.com/builds/submitted/4598692/full-eng/latest/view/logs/build_error.log\n\nChange-Id: I0de7738748ab793249df68bcbf18232d6a2d120a\n"
    },
    {
      "commit": "637b7855829920114a8863b93fe52203b7471eea",
      "tree": "c33e93ec282c2d3f2c01581907dfdfc1fb63a0bf",
      "parents": [
        "ceeee83aaf61fc61e47773da0ac97659057e1c77"
      ],
      "author": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Tue Jan 30 12:09:36 2018 -0800"
      },
      "committer": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Fri Feb 09 16:13:49 2018 -0800"
      },
      "message": "Fix DrmHal implementation to return all metrics\n\nThis change in DrmHal allows us to transfer a PersistableBundle containing\npreviously unavailable metrics.\n\nBug: 64001676\nTest: CTS test for metrics and GPlay test\nChange-Id: I1fa87c76dd980a3f91b4e2d02b37329f6c0a88ec\n"
    },
    {
      "commit": "56134cc9e790f39b3b10a18b701b0607c20b6154",
      "tree": "51d3279074ad852d1c8ce03cb5f2f024542f1267",
      "parents": [
        "1bfabb36f5d6f09d87e9d52778b5a1cca9512722"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Mon Feb 05 13:09:23 2018 -0800"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Tue Feb 06 10:27:45 2018 -0800"
      },
      "message": "Fix MediaDrm security level APIs\n\nVendors implementing the newly added MediaDrm.setSecurityLevel\nHAL found that it was difficult to implement properly. Also the\nsemantics are somewhat ambiguous from the Java platform API\nlevel. This CL binds the security level assignment to openSession\nwhich clarifies the API for apps as well as making it more\nnatural to implement in HAL modules.\n\nbug:72831697\nbug:64001680\n\ntest: VtsHalDrmV1_1TargetTest, GTS media tests\nChange-Id: Iaa07727be86ec2bc92be907d5a48c92136dc2014\n"
    },
    {
      "commit": "31067d4b87475dd0a90145d4849cf66f7bf93f86",
      "tree": "61656e49f84e02ae6382e94169916356f65c8e1f",
      "parents": [
        "e9ba24a984610b09d33a739034caf8949bb53f7e",
        "92d23b433bd770c22c2d4a30b573602f5565de1b"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 31 22:37:49 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 31 22:37:49 2018 +0000"
      },
      "message": "Merge \"Remove finalized concept from media.metrics\""
    },
    {
      "commit": "5641aa251bf9a6e7b6bf8a73214f92e42c393a2f",
      "tree": "e467ad21039dfdd95c8b0e4513d35e18f1e14cd4",
      "parents": [
        "9111804e9051b2888c66e26ee1a872bb3ef7a988"
      ],
      "author": {
        "name": "Edwin Wong",
        "email": "edwinwong@google.com",
        "time": "Tue Jan 30 17:52:21 2018 -0800"
      },
      "committer": {
        "name": "Edwin Wong",
        "email": "edwinwong@google.com",
        "time": "Tue Jan 30 18:28:52 2018 -0800"
      },
      "message": "Reset drmPluginV1_1 when destroyPlugin is called.\n\nAlso check for NULL mDrmPlugin before casting to V1_1.\n\nTest: Play Movies and NetFlix\n\nbug: 72687425\nChange-Id: I47aa18730332a17860b7e27440d417ffd612810f\n"
    },
    {
      "commit": "7fbc087b2187bc67f921d843a59a367c6431eb14",
      "tree": "070004c45b20fddfdbd9a28b2d2f1aef91229be8",
      "parents": [
        "8913f5f7db253a22506f00520b888a0c3d780b2c",
        "b2b66fa4da5528cf9cdfc32f619e81e4d97ca654"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Tue Jan 30 19:48:11 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 30 19:48:11 2018 +0000"
      },
      "message": "Merge \"Revert \"Fix missing check of hidl return status\"\""
    },
    {
      "commit": "b2b66fa4da5528cf9cdfc32f619e81e4d97ca654",
      "tree": "904a4f7c9d885ef0c4fb18405176171c70244123",
      "parents": [
        "3923b1b71628e668f9b11ed4891ed2840dd331cd"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Tue Jan 30 19:19:34 2018 +0000"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Tue Jan 30 11:40:42 2018 -0800"
      },
      "message": "Revert \"Fix missing check of hidl return status\"\n\nThis reverts commit 09a90ab544a785b36c5b2d1ef352289e2b6f5633.\n\nFix for regressed b/72666743\n\nTest: manual test to confirm problem is fixed.\nSee bug for repro steps.\n\nChange-Id: Ifac9a2c3a3a92063d544e39ace48ab14c90b8050\n"
    },
    {
      "commit": "92d23b433bd770c22c2d4a30b573602f5565de1b",
      "tree": "e2ff902f2be5d131e8a1cd4af09868d3a5af2794",
      "parents": [
        "3923b1b71628e668f9b11ed4891ed2840dd331cd"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Mon Jan 29 12:10:30 2018 -0800"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Mon Jan 29 14:38:27 2018 -0800"
      },
      "message": "Remove finalized concept from media.metrics\n\nthe \u0027finalized\u0027 concept didn\u0027t pan out -- remove references to it.\nSimplifies the code flow.\nAlso purged some uses of generateSessionID().\n\nBug: 71874686\nTest: logcat/dumpsys\nChange-Id: I39e48526a5696158d8195f47154881ca6ecda266\n"
    },
    {
      "commit": "15177d7eab8c2300b4f1d577267e528bd7e4eedc",
      "tree": "d3032e8309d53cabd47ada0ad50607b899829534",
      "parents": [
        "5f07c65af5356a4a95410804ce19fc017d6478f8"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Thu Jan 25 12:57:55 2018 -0800"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Fri Jan 26 16:02:04 2018 -0800"
      },
      "message": "Add new secure stop methods\n\nMethods are needed to release a secure stop by ID and\nreturn a list of secure stops.\n\nTests: gts media tests\n\nbug:67361434\nbug:64001680\nChange-Id: If6cb180cb4d2e3b655028955d105aee0cb8d70b6\n"
    },
    {
      "commit": "b50991d12c70cc2a7e5b71c325769b4bfa5a2e12",
      "tree": "ea890cc3f4a68e67388655bbf1f440feb1ecfac9",
      "parents": [
        "1ca046167db003a5750a594a8e4d9641506392e4",
        "4bea53c67527030fca3820dbe7d7711badf10cde"
      ],
      "author": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Thu Jan 25 18:25:40 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 25 18:25:40 2018 +0000"
      },
      "message": "Merge \"Update metric names for API consistency.\""
    },
    {
      "commit": "566a7290c6af684947c1a757a60eae5da8ab9dee",
      "tree": "eb7f393fbc1f50f400c92439d64d4e4fbc8fcbe7",
      "parents": [
        "eefbdd95b6c0614527bddc188fb112b9b486212e",
        "cea91ce60260d7ebb94449ad7674150fdc227886"
      ],
      "author": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Thu Jan 25 14:00:17 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 25 14:00:17 2018 +0000"
      },
      "message": "Merge \"Adds most remaining framework metrics\""
    },
    {
      "commit": "eefbdd95b6c0614527bddc188fb112b9b486212e",
      "tree": "fde2a92d37f28b4114ccf6144d4196a549459db4",
      "parents": [
        "227d7bd4a05039a06db70513c55e0b658a2eb86a",
        "f0e618d0ee16c63f918c7bb87ec1ff264d177746"
      ],
      "author": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Thu Jan 25 11:20:57 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 25 11:20:57 2018 +0000"
      },
      "message": "Merge \"Add EventMetric and a single use case.\""
    },
    {
      "commit": "4bea53c67527030fca3820dbe7d7711badf10cde",
      "tree": "5ccf946190b2d436033899f03aa1fec9bbf203d1",
      "parents": [
        "cea91ce60260d7ebb94449ad7674150fdc227886"
      ],
      "author": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Wed Jan 24 21:44:58 2018 -0800"
      },
      "committer": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Wed Jan 24 22:28:39 2018 -0800"
      },
      "message": "Update metric names for API consistency.\n\nThe metric names need to be consistent with related APIs (e.g.\nMediaCodec#getMetrics). Those APIs use dot separators rather than\nslashes.\n\nBug 64001676\n\nTest: Re-ran CTS, unit tests. Smoke with GPlay Movies.\nChange-Id: I606e4c4bcbf630d584b9dea80471ad256764a42b\n"
    },
    {
      "commit": "cea91ce60260d7ebb94449ad7674150fdc227886",
      "tree": "4330319ec2121bdcc33f6014ddca527e334f73eb",
      "parents": [
        "f0e618d0ee16c63f918c7bb87ec1ff264d177746"
      ],
      "author": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Mon Jan 22 19:23:28 2018 -0800"
      },
      "committer": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Wed Jan 24 17:41:44 2018 -0800"
      },
      "message": "Adds most remaining framework metrics\n\nAdds nearly all of the remaining specified framework level metrics.\nAlso adds a basic unit test to verify that metrics are exported\ncorrectly. A follow-up CL will update the CTS test to touch all metric\nvalues in DrmHal.\n\nBUG: 64001676\nTest: New unit test. Smoke tested with GPlay/Walleye.\nChange-Id: I4df90675ae304d3c62b7886537328b3d848fd77c\n"
    },
    {
      "commit": "91b1f83220c6fc643e2618f92b28482fa880c7fd",
      "tree": "95fb8ac20ac2eb496ff5e45c600853e8ec4216ac",
      "parents": [
        "bf2fbb73c76d99397a0bdb09907a5529a06db24a",
        "09a90ab544a785b36c5b2d1ef352289e2b6f5633"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 25 01:39:24 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 25 01:39:24 2018 +0000"
      },
      "message": "Merge \"Fix missing check of hidl return status\""
    },
    {
      "commit": "f0e618d0ee16c63f918c7bb87ec1ff264d177746",
      "tree": "c57a89695d8305242ccacabc5e692606989d831f",
      "parents": [
        "38428ce1b306d8922778f4994d67f0ddffb4fcd2"
      ],
      "author": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Wed Jan 17 19:20:41 2018 -0800"
      },
      "committer": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Wed Jan 24 17:24:43 2018 -0800"
      },
      "message": "Add EventMetric and a single use case.\n\nAdds an EventMetric class, associated unit tests, and an instance of the\nEventMetric to DrmHal. Also added a unit test for CounterMetric and\ncreated a class to hold all of the future metric instances.\n\nBUG: 64001676\n\nTest: Added and ran unit tests.  Also added a CTS test case.\nChange-Id: Ic94bedd5f8293a58a939613a4ae69ce656a772be\n"
    },
    {
      "commit": "09a90ab544a785b36c5b2d1ef352289e2b6f5633",
      "tree": "b54d3c9c36ec52198c984c8c04e4f2229c655f8c",
      "parents": [
        "87b4679598403fe752f57f1cfca4709ca82e97b8"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Tue Jan 23 17:43:29 2018 -0800"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Wed Jan 24 12:38:26 2018 -0800"
      },
      "message": "Fix missing check of hidl return status\n\ncloseAllSessions() was calling into the hidl interface closeSession\ndirectly, and neglected to check the return status which resulted in\nan abort. Instead, call the DrmHal::closeSession() method which handles\nthe hidl return status correctly.\n\nTest: gts media tests\n\nbug:72400509\nChange-Id: I444be998702aeaca2905ddf560a5138d5775a316\n"
    },
    {
      "commit": "e05a10f6d8783f7bc3cd2f78a9115bf3ab63efff",
      "tree": "e6774ea67b3f60541fbf9295c5c58227d82df350",
      "parents": [
        "c3c1fc630e21f36d2e3f56fac3503c471fbc3a15",
        "aaf87dd09686bdb47df0a638b622a4c2ea37a331"
      ],
      "author": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Wed Jan 24 17:54:36 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 24 17:54:36 2018 +0000"
      },
      "message": "Merge \"Add CounterMetric and a single use case.\""
    },
    {
      "commit": "aaf87dd09686bdb47df0a638b622a4c2ea37a331",
      "tree": "055e6f879ea604b1f66bc9cea091481308b17487",
      "parents": [
        "a13ac6c89d0246f081127eec11cd5eb467d168d3"
      ],
      "author": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Mon Jan 08 11:55:06 2018 -0800"
      },
      "committer": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Tue Jan 23 16:51:17 2018 -0800"
      },
      "message": "Add CounterMetric and a single use case.\n\nThis adds a new class CounterMetric which is used to hold metric\ninformation.  It also adds a single use case for recording and\nreporting a counter metric.\n\nBUG: 64001676\n\nTest: Added and ran a new test for the specific CounterMetric use case.\nChange-Id: I39cab8328f135e579f80b6c2fab721da5f569795\n"
    },
    {
      "commit": "59bc3fa914467f37c32aea1963e9354355b244e7",
      "tree": "bf7c7c0db9067ba01aaf9a6031d51bf1389be958",
      "parents": [
        "1c838c481692c45b96786dcdd520296b73a71809"
      ],
      "author": {
        "name": "Rahul Frias",
        "email": "rfrias@google.com",
        "time": "Mon Jan 22 23:48:52 2018 -0800"
      },
      "committer": {
        "name": "Rahul Frias",
        "email": "rfrias@google.com",
        "time": "Tue Jan 23 13:50:30 2018 -0800"
      },
      "message": "Add new values to KeyRequestType\n\nTwo additional KeyRequestTypes have been added, None and Update. None\nindicates that no key request is needed as keys have already been\nloaded. Update indicates that while keys have previously been loaded,\nan additional (non-renewal) license request is needed.\n\nBug: 70335058\nTest: GtsMediaTestCases\nChange-Id: I36a8b334c70140098a01e4a3bea3159fc0a4584f\n"
    },
    {
      "commit": "c42670b837dc6e0d63dad891f66735fd7cb3d969",
      "tree": "0ea6e2a4a47671977c8099c1f8c248971622b588",
      "parents": [
        "164071326bcc752214ed800cba3d07206398f53d",
        "6d998b67be330843f633a563c23c606593060165"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jan 23 17:07:40 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 23 17:07:40 2018 +0000"
      },
      "message": "Merge \"Implement new MediaDrm methods\""
    },
    {
      "commit": "4049f13fb3d1c588d3e4dc518ede15d45dca4c9e",
      "tree": "3f0566fb3f3f9cb441e3b466f95341c600c9c1ef",
      "parents": [
        "205266aacc675dfb7a7f9f985c4ca973163cb59e"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Mon Jan 22 10:37:31 2018 -0800"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Mon Jan 22 18:48:46 2018 -0800"
      },
      "message": "MediaPlayer2: build static libs for some components\n\nTest: compiles\nBug: 63934228\nChange-Id: I1791b40a67c87ea3146825767699e5022444e433\n"
    },
    {
      "commit": "6d998b67be330843f633a563c23c606593060165",
      "tree": "c9bfa7867b2610593e81ca8bf6d13b4b18501e14",
      "parents": [
        "e18835269d8e875297603d889b3f928a13f93d6c"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Mon Dec 18 14:37:43 2017 -0800"
      },
      "committer": {
        "name": "Rahul Frias",
        "email": "rfrias@google.com",
        "time": "Mon Jan 22 01:29:32 2018 -0800"
      },
      "message": "Implement new MediaDrm methods\n\nMethods for querying HDCP, security levels and\nnumber of sessions\n\nbug:64001680\nbug:33657579\n\nTest: cts: MediaDrmMockTest, ClearKeySystemTest\ngts: GtsMediaTestCases\n\nChange-Id: I7c84df02ec33d305b6bd5ac7479922f87aa64863\n"
    },
    {
      "commit": "da98abadbca65909dbd8b040eddd4b1a2b7633e8",
      "tree": "2471af8816ad4dfba9dc883254fed202620296ca",
      "parents": [
        "65a438c6429c7f46cb0ab056c7f672ea0aa9e7f5",
        "ab394d13bab3a84f23677357576cee7a6f0c7899"
      ],
      "author": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Sun Jan 21 02:25:17 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Jan 21 02:25:17 2018 +0000"
      },
      "message": "Merge \"Add support for getMetrics to IDrm\""
    },
    {
      "commit": "ab394d13bab3a84f23677357576cee7a6f0c7899",
      "tree": "49544ed51667ba0850b776529294be75de491961",
      "parents": [
        "0b68d531017a66db63cc8c41ba28a4f15e9816f0"
      ],
      "author": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Fri Dec 22 12:34:20 2017 -0800"
      },
      "committer": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Fri Jan 19 16:29:47 2018 -0800"
      },
      "message": "Add support for getMetrics to IDrm\n\nAdds support for the new getMetrics call to the IDrm interface and the\nDrmHal implementation. The implementation currently returns a dummy\nmetric collection. Follow-up CLs will flesh out the implementation.\n\nBug: 64001676\n\nTest: Ran the new unit test created in a related CL; ran Google Play.\nChange-Id: Ia6a3af5b59a30ca55267f7e3ba278a510fc8c81e\n"
    }
  ],
  "next": "0426c97b51fef73b2df55379b69fff8db0703d57"
}
