summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris Craik <ccraik@google.com>2012-08-20 14:20:00 -0700
committerChris Craik <ccraik@google.com>2012-08-20 14:20:00 -0700
commit27928248689bbdd6c1e12107345427d2ecbd9257 (patch)
tree04053d51297b81b9ebf2570d3ffd57313b18f06a
parentde7ee90281a581b2d1c1db13644b5a01e08bd150 (diff)
downloadexternal_webkit-27928248689bbdd6c1e12107345427d2ecbd9257.zip
external_webkit-27928248689bbdd6c1e12107345427d2ecbd9257.tar.gz
external_webkit-27928248689bbdd6c1e12107345427d2ecbd9257.tar.bz2
Exit fast tile swap mode immediately upon SurfaceCollection swap
bug:7002755 This prevents the SurfaceCollectionManager from getting stuck in fast swap mode, where because swaps are occuring in process mode, and not in draw mode, which would previously have prevented the flag from being cleared. Change-Id: Ie888438c73aabeeff0534caad68b58e4acd2c440
-rw-r--r--Source/WebCore/platform/graphics/android/rendering/SurfaceCollectionManager.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/Source/WebCore/platform/graphics/android/rendering/SurfaceCollectionManager.cpp b/Source/WebCore/platform/graphics/android/rendering/SurfaceCollectionManager.cpp
index 1270498..9914176 100644
--- a/Source/WebCore/platform/graphics/android/rendering/SurfaceCollectionManager.cpp
+++ b/Source/WebCore/platform/graphics/android/rendering/SurfaceCollectionManager.cpp
@@ -258,6 +258,7 @@ int SurfaceCollectionManager::drawGL(double currentTime, IntRect& viewRect,
if (!TilesManager::instance()->useDoubleBuffering() || m_paintingCollection->isReady()) {
ALOGV("have painting collection %p ready, swapping!", m_paintingCollection);
didCollectionSwap = true;
+ m_fastSwapMode = false;
TilesManager::instance()->incContentUpdates();
if (collectionsSwappedPtr)
*collectionsSwappedPtr = true;