void DrmManager::closeDecryptSession(int uniqueId, DecryptHandle* decryptHandle) { if (mDecryptSessionMap.indexOfKey(decryptHandle->decryptId) != NAME_NOT_FOUND) { IDrmEngine* drmEngine = mDecryptSessionMap.valueFor(decryptHandle->decryptId); drmEngine->closeDecryptSession(uniqueId, decryptHandle); mDecryptSessionMap.removeItem(decryptHandle->decryptId); } }
status_t DrmManager::closeDecryptSession(int uniqueId, DecryptHandle* decryptHandle) { Mutex::Autolock _l(mDecryptLock); status_t result = DRM_ERROR_UNKNOWN; if (mDecryptSessionMap.indexOfKey(decryptHandle->decryptId) != NAME_NOT_FOUND) { IDrmEngine* drmEngine = mDecryptSessionMap.valueFor(decryptHandle->decryptId); result = drmEngine->closeDecryptSession(uniqueId, decryptHandle); if (DRM_NO_ERROR == result) { mDecryptSessionMap.removeItem(decryptHandle->decryptId); } } return result; }