diff options
author | Teng-Hui Zhu <ztenghui@google.com> | 2012-06-07 16:35:57 -0700 |
---|---|---|
committer | Teng-Hui Zhu <ztenghui@google.com> | 2012-06-07 17:04:21 -0700 |
commit | f7142c016687e13068e6954fe82895784ba8e0b2 (patch) | |
tree | 9a6142208ea36a92b591a04452d70de995f9f27c /Source/WebCore/platform/graphics/android | |
parent | 750f81c3eb609bfd132182bbbb9b467455175498 (diff) | |
download | external_webkit-f7142c016687e13068e6954fe82895784ba8e0b2.zip external_webkit-f7142c016687e13068e6954fe82895784ba8e0b2.tar.gz external_webkit-f7142c016687e13068e6954fe82895784ba8e0b2.tar.bz2 |
Make sure we gather the textures before any prepare work
The available tile textures pool is not updated while we try to prepare image.
This can lead to getting obsolete tile textures.
bug:6613009
Change-Id: I0170f0cfba197c7a7ed48866028b30075417af30
Diffstat (limited to 'Source/WebCore/platform/graphics/android')
-rw-r--r-- | Source/WebCore/platform/graphics/android/GLWebViewState.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/Source/WebCore/platform/graphics/android/GLWebViewState.cpp b/Source/WebCore/platform/graphics/android/GLWebViewState.cpp index d0273cf..55c4eec 100644 --- a/Source/WebCore/platform/graphics/android/GLWebViewState.cpp +++ b/Source/WebCore/platform/graphics/android/GLWebViewState.cpp @@ -342,6 +342,10 @@ int GLWebViewState::drawGL(IntRect& invScreenRect, SkRect& visibleContentRect, tilesManager->updateTilesIfContextVerified(); + // gather the textures we can use, make sure this happens before any + // texture preparation work. + tilesManager->gatherTextures(); + // Upload any pending ImageTexture // Return true if we still have some images to upload. // TODO: upload as many textures as possible within a certain time limit @@ -354,9 +358,6 @@ int GLWebViewState::drawGL(IntRect& invScreenRect, SkRect& visibleContentRect, scale = 1.0f; // WORKAROUND for corrupted scale: use 1.0 } - // gather the textures we can use - tilesManager->gatherTextures(); - double currentTime = setupDrawing(invScreenRect, visibleContentRect, screenRect, titleBarHeight, screenClip, scale); |