summaryrefslogtreecommitdiffstats
path: root/Source
diff options
context:
space:
mode:
authorChris Craik <ccraik@google.com>2011-12-06 09:56:07 -0800
committerAndroid Git Automerger <android-git-automerger@android.com>2011-12-06 09:56:07 -0800
commit10d8830f30f9475f146b2d5514b13e44613d43dc (patch)
tree195a6e2a3e12fc8ae3e81236c550b1edb0e4ecd1 /Source
parent91e8aa4e0e2405c977e58d79f4b6e439c5eb6518 (diff)
parentc34cfbd2a0063c85afcf6751478987b8c6b6f7e1 (diff)
downloadexternal_webkit-10d8830f30f9475f146b2d5514b13e44613d43dc.zip
external_webkit-10d8830f30f9475f146b2d5514b13e44613d43dc.tar.gz
external_webkit-10d8830f30f9475f146b2d5514b13e44613d43dc.tar.bz2
am c34cfbd2: Delete TextureGenerator operations outside the lock
* commit 'c34cfbd2a0063c85afcf6751478987b8c6b6f7e1': Delete TextureGenerator operations outside the lock
Diffstat (limited to 'Source')
-rw-r--r--Source/WebCore/platform/graphics/android/TexturesGenerator.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/Source/WebCore/platform/graphics/android/TexturesGenerator.cpp b/Source/WebCore/platform/graphics/android/TexturesGenerator.cpp
index 0820688..bccb99b 100644
--- a/Source/WebCore/platform/graphics/android/TexturesGenerator.cpp
+++ b/Source/WebCore/platform/graphics/android/TexturesGenerator.cpp
@@ -184,11 +184,10 @@ bool TexturesGenerator::threadLoop()
m_currentOperation->run();
}
+ QueuedOperation* oldOperation = m_currentOperation;
mRequestedOperationsLock.lock();
- if (m_currentOperation) {
- delete m_currentOperation;
+ if (m_currentOperation)
m_currentOperation = 0;
- }
if (!mRequestedOperations.size())
stop = true;
if (m_waitForCompletion) {
@@ -197,7 +196,8 @@ bool TexturesGenerator::threadLoop()
mRequestedOperationsCond.signal();
}
mRequestedOperationsLock.unlock();
-
+ if (oldOperation)
+ delete oldOperation; // delete outside lock
}
XLOG("threadLoop empty");