summaryrefslogtreecommitdiffstats
path: root/Source/WebCore/platform/graphics/android/rendering/Tile.h
diff options
context:
space:
mode:
authorChris Craik <ccraik@google.com>2012-06-12 13:47:12 -0700
committerChris Craik <ccraik@google.com>2012-06-12 13:53:03 -0700
commit0c274b96c2dfb5a83b12a99f1ca9069378f73bdb (patch)
tree600aaa401cb11dd4bf42316673c4e326c5a73e91 /Source/WebCore/platform/graphics/android/rendering/Tile.h
parent7fc1c095b5cb85afd90f47a7bf9a35495bcc64bd (diff)
downloadexternal_webkit-0c274b96c2dfb5a83b12a99f1ca9069378f73bdb.zip
external_webkit-0c274b96c2dfb5a83b12a99f1ca9069378f73bdb.tar.gz
external_webkit-0c274b96c2dfb5a83b12a99f1ca9069378f73bdb.tar.bz2
Workaround double blit failure
An issue occurs on Stingray where calling glTexSubImage2d in order to blit an update to a texture fails silently if the texture has already been updated this frame. With this change, we now draw the tile off-screen to work around the issue just before the second blit is required. This way, the second blit succeeds. bug:6630040 Change-Id: I07213954669b0f3d3f5b87a748a591e532b097b4
Diffstat (limited to 'Source/WebCore/platform/graphics/android/rendering/Tile.h')
-rw-r--r--Source/WebCore/platform/graphics/android/rendering/Tile.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/Source/WebCore/platform/graphics/android/rendering/Tile.h b/Source/WebCore/platform/graphics/android/rendering/Tile.h
index 2dc5414..b045f1f 100644
--- a/Source/WebCore/platform/graphics/android/rendering/Tile.h
+++ b/Source/WebCore/platform/graphics/android/rendering/Tile.h
@@ -127,6 +127,7 @@ public:
int y() const { return m_y; }
TileTexture* frontTexture() { return m_frontTexture; }
TileTexture* backTexture() { return m_backTexture; }
+ TileTexture* lastDrawnTexture() { return m_lastDrawnTexture; }
// only used for prioritization - the higher, the more relevant the tile is
unsigned long long drawCount() { return m_drawCount; }
@@ -151,6 +152,7 @@ private:
TileTexture* m_frontTexture;
TileTexture* m_backTexture;
+ TileTexture* m_lastDrawnTexture;
float m_scale;
// used to signal that the that the tile is out-of-date and needs to be