From 9c95aba4f504c434985882e994707a5fc07cf1cb Mon Sep 17 00:00:00 2001 From: Rahul Frias Date: Tue, 8 May 2018 00:30:46 -0700 Subject: [PATCH] Close CDM sessions only if opened [ Merge of http://go/wvgerrit/49822 ] This avoids logging an unnecessary error, when the session is not found. Bug: 79210873 Test: Wv unit/integration test, GtsMediaDrmTest, playback with Play Movies and Netflix. Change-Id: Ifef99d1380d763670ad0fa89c885fb5fd41567e2 --- libwvdrmengine/mediadrm/src_hidl/WVDrmPlugin.cpp | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/libwvdrmengine/mediadrm/src_hidl/WVDrmPlugin.cpp b/libwvdrmengine/mediadrm/src_hidl/WVDrmPlugin.cpp index f21b8564..2ab88b9d 100644 --- a/libwvdrmengine/mediadrm/src_hidl/WVDrmPlugin.cpp +++ b/libwvdrmengine/mediadrm/src_hidl/WVDrmPlugin.cpp @@ -142,14 +142,16 @@ WVDrmPlugin::~WVDrmPlugin() { } } mCryptoSessions.clear(); - CdmIdentifier identifier; - Status status = mCdmIdentifierBuilder.getCdmIdentifier(&identifier); - if (status != Status::OK) { - ALOGE("Failed to get cdm identifier %d", status); - } else { - status = mapCdmResponseType(mCDM->CloseCdm(identifier)); + if (mCdmIdentifierBuilder.is_sealed()) { + CdmIdentifier identifier; + Status status = mCdmIdentifierBuilder.getCdmIdentifier(&identifier); if (status != Status::OK) { - ALOGE("Failed to close cdm. status %d", status); + ALOGE("Failed to get cdm identifier %d", status); + } else { + status = mapCdmResponseType(mCDM->CloseCdm(identifier)); + if (status != Status::OK) { + ALOGE("Failed to close cdm. status %d", status); + } } } }