Change from custom Lock to std::mutex.
[ Merge of http://go/wvgerrit/67884 ] Now that we can use C++11, we should use the cross-platform std::mutex type, not the custom pthread version. Bug: 111850982 Test: WV unit/integration tests Change-Id: If2fde2836826c5184609e6b1f3a6511206bd4594
This commit is contained in:
@@ -87,7 +87,7 @@ CdmEngine::CdmEngine(FileSystem* file_system, const std::string& spoid)
|
||||
|
||||
CdmEngine::~CdmEngine() {
|
||||
usage_session_.reset();
|
||||
AutoLock lock(session_map_lock_);
|
||||
std::unique_lock<std::mutex> lock(session_map_lock_);
|
||||
session_map_.Terminate();
|
||||
}
|
||||
|
||||
@@ -147,7 +147,7 @@ CdmResponseType CdmEngine::OpenSession(
|
||||
CdmSessionId id = new_session->session_id();
|
||||
LOGI("CdmEngine::OpenSession: %s", id.c_str());
|
||||
|
||||
AutoLock lock(session_map_lock_);
|
||||
std::unique_lock<std::mutex> lock(session_map_lock_);
|
||||
session_map_.Add(id, new_session.release());
|
||||
if (session_id) *session_id = id;
|
||||
return NO_ERROR;
|
||||
@@ -167,7 +167,7 @@ CdmResponseType CdmEngine::OpenKeySetSession(
|
||||
// resources (CryptoSession etc).
|
||||
bool key_set_in_use = false;
|
||||
{
|
||||
AutoLock lock(release_key_sets_lock_);
|
||||
std::unique_lock<std::mutex> lock(release_key_sets_lock_);
|
||||
key_set_in_use =
|
||||
release_key_sets_.find(key_set_id) != release_key_sets_.end();
|
||||
}
|
||||
@@ -180,7 +180,7 @@ CdmResponseType CdmEngine::OpenKeySetSession(
|
||||
|
||||
if (sts != NO_ERROR) return sts;
|
||||
|
||||
AutoLock lock(release_key_sets_lock_);
|
||||
std::unique_lock<std::mutex> lock(release_key_sets_lock_);
|
||||
release_key_sets_[key_set_id] = std::make_pair(session_id,
|
||||
clock_.GetCurrentTime() + kReleaseSessionTimeToLive);
|
||||
|
||||
@@ -189,7 +189,7 @@ CdmResponseType CdmEngine::OpenKeySetSession(
|
||||
|
||||
CdmResponseType CdmEngine::CloseSession(const CdmSessionId& session_id) {
|
||||
LOGI("CdmEngine::CloseSession: %s", session_id.c_str());
|
||||
AutoLock lock(session_map_lock_);
|
||||
std::unique_lock<std::mutex> lock(session_map_lock_);
|
||||
if (!session_map_.CloseSession(session_id)) {
|
||||
LOGE("CdmEngine::CloseSession: session not found = %s", session_id.c_str());
|
||||
return SESSION_NOT_FOUND_1;
|
||||
@@ -202,7 +202,7 @@ CdmResponseType CdmEngine::CloseKeySetSession(const CdmKeySetId& key_set_id) {
|
||||
|
||||
CdmSessionId session_id;
|
||||
{
|
||||
AutoLock lock(release_key_sets_lock_);
|
||||
std::unique_lock<std::mutex> lock(release_key_sets_lock_);
|
||||
CdmReleaseKeySetMap::iterator iter = release_key_sets_.find(key_set_id);
|
||||
if (iter == release_key_sets_.end()) {
|
||||
LOGE("CdmEngine::CloseKeySetSession: key set id not found = %s",
|
||||
@@ -214,7 +214,7 @@ CdmResponseType CdmEngine::CloseKeySetSession(const CdmKeySetId& key_set_id) {
|
||||
|
||||
CdmResponseType sts = CloseSession(session_id);
|
||||
|
||||
AutoLock lock(release_key_sets_lock_);
|
||||
std::unique_lock<std::mutex> lock(release_key_sets_lock_);
|
||||
CdmReleaseKeySetMap::iterator iter = release_key_sets_.find(key_set_id);
|
||||
if (iter != release_key_sets_.end()) {
|
||||
release_key_sets_.erase(iter);
|
||||
@@ -223,7 +223,7 @@ CdmResponseType CdmEngine::CloseKeySetSession(const CdmKeySetId& key_set_id) {
|
||||
}
|
||||
|
||||
bool CdmEngine::IsOpenSession(const CdmSessionId& session_id) {
|
||||
AutoLock lock(session_map_lock_);
|
||||
std::unique_lock<std::mutex> lock(session_map_lock_);
|
||||
return session_map_.Exists(session_id);
|
||||
}
|
||||
|
||||
@@ -251,7 +251,7 @@ CdmResponseType CdmEngine::GenerateKeyRequest(
|
||||
return INVALID_SESSION_ID;
|
||||
}
|
||||
|
||||
AutoLock lock(release_key_sets_lock_);
|
||||
std::unique_lock<std::mutex> lock(release_key_sets_lock_);
|
||||
CdmReleaseKeySetMap::iterator iter = release_key_sets_.find(key_set_id);
|
||||
if (iter == release_key_sets_.end()) {
|
||||
LOGE("CdmEngine::GenerateKeyRequest: key set ID not found = %s",
|
||||
@@ -328,7 +328,7 @@ CdmResponseType CdmEngine::AddKey(const CdmSessionId& session_id,
|
||||
return EMPTY_KEYSET_ID_ENG_3;
|
||||
}
|
||||
|
||||
AutoLock lock(release_key_sets_lock_);
|
||||
std::unique_lock<std::mutex> lock(release_key_sets_lock_);
|
||||
CdmReleaseKeySetMap::iterator iter = release_key_sets_.find(*key_set_id);
|
||||
if (iter == release_key_sets_.end()) {
|
||||
LOGE("CdmEngine::AddKey: key set id not found = %s", key_set_id->c_str());
|
||||
@@ -1525,7 +1525,7 @@ CdmResponseType CdmEngine::Decrypt(const CdmSessionId& session_id,
|
||||
// else we must be level 1 direct and we don't need to return a buffer.
|
||||
}
|
||||
|
||||
AutoLock lock(session_map_lock_);
|
||||
std::unique_lock<std::mutex> lock(session_map_lock_);
|
||||
std::shared_ptr<CdmSession> session;
|
||||
if (session_id.empty()) {
|
||||
CdmSessionList sessions;
|
||||
@@ -1646,7 +1646,7 @@ bool CdmEngine::FindSessionForKey(const KeyId& key_id,
|
||||
|
||||
uint32_t session_sharing_id = Properties::GetSessionSharingId(*session_id);
|
||||
|
||||
AutoLock lock(session_map_lock_);
|
||||
std::unique_lock<std::mutex> lock(session_map_lock_);
|
||||
CdmSessionList sessions;
|
||||
session_map_.GetSessionList(sessions);
|
||||
|
||||
@@ -1703,7 +1703,7 @@ void CdmEngine::OnTimerEvent() {
|
||||
bool is_usage_update_needed = false;
|
||||
|
||||
{
|
||||
AutoLock lock(session_map_lock_);
|
||||
std::unique_lock<std::mutex> lock(session_map_lock_);
|
||||
CdmSessionList sessions;
|
||||
session_map_.GetSessionList(sessions);
|
||||
|
||||
@@ -1798,7 +1798,7 @@ void CdmEngine::CloseExpiredReleaseSessions() {
|
||||
|
||||
std::set<CdmSessionId> close_session_set;
|
||||
{
|
||||
AutoLock lock(release_key_sets_lock_);
|
||||
std::unique_lock<std::mutex> lock(release_key_sets_lock_);
|
||||
for (CdmReleaseKeySetMap::iterator iter = release_key_sets_.begin();
|
||||
iter != release_key_sets_.end();) {
|
||||
if (iter->second.second < current_time) {
|
||||
|
||||
Reference in New Issue
Block a user