Title: [97257] trunk/Source/WebKit/chromium
- Revision
- 97257
- Author
- [email protected]
- Date
- 2011-10-12 06:31:03 -0700 (Wed, 12 Oct 2011)
Log Message
[Chromium] Prevent fallback fonts from purging while measuring
https://bugs.webkit.org/show_bug.cgi?id=69855
Reviewed by Eric Seidel.
When Chrome computes the page width, an international page
may bring in a fallback font. FontCache::getCachedFontData
expects the font cache to be locked, so the measure path
needs to include an instance of FontCachePurgePreventer.
Adding FontCachePurgePreventer suppresses a debug-time assert
when running PageCycler over international tests.
* src/WebFrameImpl.cpp:
(WebKit::WebFrameImpl::contentsPreferredWidth):
Modified Paths
Diff
Modified: trunk/Source/WebKit/chromium/ChangeLog (97256 => 97257)
--- trunk/Source/WebKit/chromium/ChangeLog 2011-10-12 13:23:19 UTC (rev 97256)
+++ trunk/Source/WebKit/chromium/ChangeLog 2011-10-12 13:31:03 UTC (rev 97257)
@@ -1,3 +1,21 @@
+2011-10-12 Cary Clark <[email protected]>
+
+ [Chromium] Prevent fallback fonts from purging while measuring
+ https://bugs.webkit.org/show_bug.cgi?id=69855
+
+ Reviewed by Eric Seidel.
+
+ When Chrome computes the page width, an international page
+ may bring in a fallback font. FontCache::getCachedFontData
+ expects the font cache to be locked, so the measure path
+ needs to include an instance of FontCachePurgePreventer.
+
+ Adding FontCachePurgePreventer suppresses a debug-time assert
+ when running PageCycler over international tests.
+
+ * src/WebFrameImpl.cpp:
+ (WebKit::WebFrameImpl::contentsPreferredWidth):
+
2011-10-12 Pavel Podivilov <[email protected]>
Unreviewed, CCThreadTest.startPostAndWaitOnCondition is flaky on linux.
Modified: trunk/Source/WebKit/chromium/src/WebFrameImpl.cpp (97256 => 97257)
--- trunk/Source/WebKit/chromium/src/WebFrameImpl.cpp 2011-10-12 13:23:19 UTC (rev 97256)
+++ trunk/Source/WebKit/chromium/src/WebFrameImpl.cpp 2011-10-12 13:31:03 UTC (rev 97257)
@@ -86,6 +86,7 @@
#include "Editor.h"
#include "EventHandler.h"
#include "FocusController.h"
+#include "FontCache.h"
#include "FormState.h"
#include "FrameLoadRequest.h"
#include "FrameLoader.h"
@@ -579,8 +580,11 @@
int WebFrameImpl::contentsPreferredWidth() const
{
- if (m_frame->document() && m_frame->document()->renderView())
+ if (m_frame->document() && m_frame->document()->renderView()) {
+ FontCachePurgePreventer fontCachePurgePreventer;
+
return m_frame->document()->renderView()->minPreferredLogicalWidth();
+ }
return 0;
}
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes