Index: Source/core/dom/Document.cpp |
diff --git a/Source/core/dom/Document.cpp b/Source/core/dom/Document.cpp |
index a6b44f96311547563a39b13d928aa08c8d4c6a01..8900974ee35a7f71134db584b77912b23a1d0b27 100644 |
--- a/Source/core/dom/Document.cpp |
+++ b/Source/core/dom/Document.cpp |
@@ -3381,8 +3381,15 @@ |
{ |
styleEngine().resolverChanged(updateMode); |
- if (m_pendingSheetLayout == DidLayoutWithPendingSheets && !styleEngine().hasPendingSheets()) |
+ if (didLayoutWithPendingStylesheets() && !styleEngine().hasPendingSheets()) { |
+ // We need to manually repaint because we avoid doing all repaints in layout or style |
+ // recalc while sheets are still loading to avoid FOUC. |
m_pendingSheetLayout = IgnoreLayoutWithPendingSheets; |
+ |
+ ASSERT(layoutView() || importsController()); |
+ if (layoutView()) |
+ layoutView()->invalidatePaintForViewAndCompositedLayers(); |
+ } |
} |
void Document::styleResolverMayHaveChanged() |