summaryrefslogtreecommitdiffstats
path: root/Source/WebCore/platform
diff options
context:
space:
mode:
authorChris Craik <ccraik@google.com>2011-10-20 08:50:56 -0700
committerChris Craik <ccraik@google.com>2011-10-20 11:03:44 -0700
commit458b4b11924c3bcc70dcdd3d69f64a855870e72d (patch)
tree8a0d1f7982d923718d77a0cef051248d81f81829 /Source/WebCore/platform
parent94cabcbdc194d4a28d31cfb82be98a287b8cf1c9 (diff)
downloadexternal_webkit-458b4b11924c3bcc70dcdd3d69f64a855870e72d.zip
external_webkit-458b4b11924c3bcc70dcdd3d69f64a855870e72d.tar.gz
external_webkit-458b4b11924c3bcc70dcdd3d69f64a855870e72d.tar.bz2
Mark tiles dirty, even if repainting
bug:5484131 The current repainting tile could avoid being painted with the newest picture if it was repainting, since markAsDirty wouldn't change its state Change-Id: I4f3de909984d1ceb872bf294a1da211ad87c9bcc
Diffstat (limited to 'Source/WebCore/platform')
-rw-r--r--Source/WebCore/platform/graphics/android/BaseTile.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/Source/WebCore/platform/graphics/android/BaseTile.cpp b/Source/WebCore/platform/graphics/android/BaseTile.cpp
index f0b0dd2..98eb623 100644
--- a/Source/WebCore/platform/graphics/android/BaseTile.cpp
+++ b/Source/WebCore/platform/graphics/android/BaseTile.cpp
@@ -190,13 +190,14 @@ void BaseTile::markAsDirty(int unsigned pictureCount,
// current paint
m_state = Unpainted;
} else if (m_state != Unpainted) {
- // layer tiles and prefetch page tiles are potentially marked dirty
- // while in the process of painting, due to not using an update lock
-
// TODO: fix it so that they can paint while deferring the markAsDirty
// call (or block updates)
XLOG("Warning: tried to mark tile %p at %d, %d islayertile %d as dirty, state %d, page %p",
this, m_x, m_y, isLayerTile(), m_state, m_page);
+
+ // prefetch tiles can be marked dirty while in the process of painting,
+ // due to not using an update lock. force them to fail validate step.
+ m_state = Unpainted;
}
}