summaryrefslogtreecommitdiff
path: root/src/3rdparty/webkit/WebCore/storage/OriginQuotaManager.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/3rdparty/webkit/WebCore/storage/OriginQuotaManager.cpp')
-rw-r--r--src/3rdparty/webkit/WebCore/storage/OriginQuotaManager.cpp14
1 files changed, 13 insertions, 1 deletions
diff --git a/src/3rdparty/webkit/WebCore/storage/OriginQuotaManager.cpp b/src/3rdparty/webkit/WebCore/storage/OriginQuotaManager.cpp
index 30b32717ac..88f75b8b56 100644
--- a/src/3rdparty/webkit/WebCore/storage/OriginQuotaManager.cpp
+++ b/src/3rdparty/webkit/WebCore/storage/OriginQuotaManager.cpp
@@ -42,6 +42,18 @@ OriginQuotaManager::OriginQuotaManager()
{
}
+bool OriginQuotaManager::tryLock()
+{
+ bool locked = m_usageRecordGuard.tryLock();
+#ifndef NDEBUG
+ if (locked)
+ m_usageRecordGuardLocked = true;
+ else
+ ASSERT(m_usageRecordGuardLocked);
+#endif
+ return locked;
+}
+
void OriginQuotaManager::lock()
{
m_usageRecordGuard.lock();
@@ -63,7 +75,7 @@ void OriginQuotaManager::trackOrigin(PassRefPtr<SecurityOrigin> origin)
ASSERT(m_usageRecordGuardLocked);
ASSERT(!m_usageMap.contains(origin.get()));
- m_usageMap.set(origin, new OriginUsageRecord);
+ m_usageMap.set(origin->threadsafeCopy(), new OriginUsageRecord);
}
bool OriginQuotaManager::tracksOrigin(SecurityOrigin* origin) const