Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1541)

Unified Diff: Source/modules/webdatabase/DatabaseBackendBase.cpp

Issue 332393002: [oilpan]: Add SafePointAwareMutexLocker to allow GC when waiting for lock. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: review feedback Created 6 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | Source/modules/webdatabase/sqlite/SQLiteFileSystem.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: Source/modules/webdatabase/DatabaseBackendBase.cpp
diff --git a/Source/modules/webdatabase/DatabaseBackendBase.cpp b/Source/modules/webdatabase/DatabaseBackendBase.cpp
index 4cc6b32069273546e603fb907205936a775a5d94..c5e5f9b7e7df058a75775052d3f5c55d906b174e 100644
--- a/Source/modules/webdatabase/DatabaseBackendBase.cpp
+++ b/Source/modules/webdatabase/DatabaseBackendBase.cpp
@@ -220,7 +220,7 @@ DatabaseBackendBase::DatabaseBackendBase(DatabaseContext* databaseContext, const
m_name = "";
{
- MutexLocker locker(guidMutex());
+ SafePointAwareMutexLocker locker(guidMutex());
m_guid = guidForOriginAndName(securityOrigin()->toString(), name);
HashSet<DatabaseBackendBase*>* hashSet = guidToDatabaseMap().get(m_guid);
if (!hashSet) {
@@ -266,7 +266,7 @@ void DatabaseBackendBase::closeDatabase()
// See comment at the top this file regarding calling removeOpenDatabase().
DatabaseTracker::tracker().removeOpenDatabase(this);
{
- MutexLocker locker(guidMutex());
+ SafePointAwareMutexLocker locker(guidMutex());
HashSet<DatabaseBackendBase*>* hashSet = guidToDatabaseMap().get(m_guid);
ASSERT(hashSet);
@@ -329,7 +329,7 @@ bool DatabaseBackendBase::performOpenAndVerify(bool shouldSetVersionInNewDatabas
String currentVersion;
{
- MutexLocker locker(guidMutex());
+ SafePointAwareMutexLocker locker(guidMutex());
GuidVersionMap::iterator entry = guidToVersionMap().find(m_guid);
if (entry != guidToVersionMap().end()) {
@@ -506,14 +506,14 @@ void DatabaseBackendBase::setExpectedVersion(const String& version)
String DatabaseBackendBase::getCachedVersion() const
{
- MutexLocker locker(guidMutex());
+ SafePointAwareMutexLocker locker(guidMutex());
return guidToVersionMap().get(m_guid).isolatedCopy();
}
void DatabaseBackendBase::setCachedVersion(const String& actualVersion)
{
// Update the in memory database version map.
- MutexLocker locker(guidMutex());
+ SafePointAwareMutexLocker locker(guidMutex());
updateGuidVersionMap(m_guid, actualVersion);
}
« no previous file with comments | « no previous file | Source/modules/webdatabase/sqlite/SQLiteFileSystem.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698