Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(397)

Unified Diff: Source/core/css/FontFaceCache.cpp

Issue 227083006: [Oilpan]: Moving the FontSelector/FontCacheClient, CSSSegmentedFontFace, and FontFaceCache to the o… (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: Source/core/css/FontFaceCache.cpp
diff --git a/Source/core/css/FontFaceCache.cpp b/Source/core/css/FontFaceCache.cpp
index a85e9fa38b717455679aedeec71e2b3a1d82f5d8..c4ab2a56dc3c635810b38bde73caa9212c3f8424 100644
--- a/Source/core/css/FontFaceCache.cpp
+++ b/Source/core/css/FontFaceCache.cpp
@@ -58,11 +58,11 @@ void FontFaceCache::addFontFace(CSSFontSelector* cssFontSelector, PassRefPtr<Fon
{
RefPtr<FontFace> fontFace = prpFontFace;
- OwnPtr<TraitsMap>& familyFontFaces = m_fontFaces.add(fontFace->family(), nullptr).storedValue->value;
+ OwnPtrWillBeMember<TraitsMap>& familyFontFaces = m_fontFaces.add(fontFace->family(), nullptr).storedValue->value;
if (!familyFontFaces)
- familyFontFaces = adoptPtr(new TraitsMap);
+ familyFontFaces = adoptPtrWillBeNoop(new TraitsMap);
haraken 2014/04/07 14:10:12 In our experimental branch, I think we were using
wibling-chromium 2014/04/08 09:35:59 I am not sure we need conservative scanning to kee
haraken 2014/04/08 11:14:40 Sorry, this issue is not related to conservative s
wibling-chromium 2014/04/08 12:47:23 Just talked to Mads about this:) As he also mentio
tkent 2014/04/08 13:45:38 Shouldn't we apply the add-new idiom to HeapHashMa
- RefPtr<CSSSegmentedFontFace>& segmentedFontFace = familyFontFaces->add(fontFace->traits().mask(), nullptr).storedValue->value;
+ RefPtrWillBeMember<CSSSegmentedFontFace>& segmentedFontFace = familyFontFaces->add(fontFace->traits().mask(), nullptr).storedValue->value;
if (!segmentedFontFace)
segmentedFontFace = CSSSegmentedFontFace::create(cssFontSelector, fontFace->traits());
@@ -92,7 +92,7 @@ void FontFaceCache::removeFontFace(FontFace* fontFace, bool cssConnected)
TraitsMap::iterator familyFontFacesIter = familyFontFaces->find(fontFace->traits().mask());
if (familyFontFacesIter == familyFontFaces->end())
return;
- RefPtr<CSSSegmentedFontFace> segmentedFontFace = familyFontFacesIter->value;
+ RefPtrWillBeRawPtr<CSSSegmentedFontFace> segmentedFontFace = familyFontFacesIter->value;
segmentedFontFace->removeFontFace(fontFace);
if (segmentedFontFace->isEmpty()) {
@@ -193,12 +193,12 @@ CSSSegmentedFontFace* FontFaceCache::get(const FontDescription& fontDescription,
if (!familyFontFaces || familyFontFaces->isEmpty())
return 0;
- OwnPtr<TraitsMap>& segmentedFontFaceCache = m_fonts.add(family, nullptr).storedValue->value;
+ OwnPtrWillBeMember<TraitsMap>& segmentedFontFaceCache = m_fonts.add(family, nullptr).storedValue->value;
if (!segmentedFontFaceCache)
- segmentedFontFaceCache = adoptPtr(new TraitsMap);
+ segmentedFontFaceCache = adoptPtrWillBeNoop(new TraitsMap);
FontTraits traits = fontDescription.traits();
- RefPtr<CSSSegmentedFontFace>& face = segmentedFontFaceCache->add(traits.mask(), nullptr).storedValue->value;
+ RefPtrWillBeMember<CSSSegmentedFontFace>& face = segmentedFontFaceCache->add(traits.mask(), nullptr).storedValue->value;
if (!face) {
for (TraitsMap::const_iterator i = familyFontFaces->begin(); i != familyFontFaces->end(); ++i) {
CSSSegmentedFontFace* candidate = i->value.get();
@@ -214,4 +214,10 @@ CSSSegmentedFontFace* FontFaceCache::get(const FontDescription& fontDescription,
return face.get();
}
+void FontFaceCache::trace(Visitor* visitor)
+{
+ visitor->trace(m_fontFaces);
+ visitor->trace(m_fonts);
+}
+
}

Powered by Google App Engine
This is Rietveld 408576698