Index: Source/core/css/CSSSegmentedFontFace.h |
diff --git a/Source/core/css/CSSSegmentedFontFace.h b/Source/core/css/CSSSegmentedFontFace.h |
index 119f709fc456d087cb4c6d86a8bceff187ef7ebb..f495c038f13fa1c6d9828654883e2e2ae2c5ac62 100644 |
--- a/Source/core/css/CSSSegmentedFontFace.h |
+++ b/Source/core/css/CSSSegmentedFontFace.h |
@@ -27,6 +27,7 @@ |
#define CSSSegmentedFontFace_h |
#include "platform/fonts/FontTraits.h" |
+#include "platform/heap/Handle.h" |
#include "wtf/HashMap.h" |
#include "wtf/ListHashSet.h" |
#include "wtf/PassRefPtr.h" |
@@ -43,11 +44,11 @@ class FontDescription; |
class FontFace; |
class SegmentedFontData; |
-class CSSSegmentedFontFace : public RefCounted<CSSSegmentedFontFace> { |
+class CSSSegmentedFontFace : public RefCountedWillBeGarbageCollectedFinalized<CSSSegmentedFontFace> { |
public: |
- static PassRefPtr<CSSSegmentedFontFace> create(CSSFontSelector* selector, FontTraits traits) |
+ static PassRefPtrWillBeRawPtr<CSSSegmentedFontFace> create(CSSFontSelector* selector, FontTraits traits) |
{ |
- return adoptRef(new CSSSegmentedFontFace(selector, traits)); |
+ return adoptRefWillBeNoop(new CSSSegmentedFontFace(selector, traits)); |
} |
~CSSSegmentedFontFace(); |
@@ -67,6 +68,8 @@ public: |
void match(const String&, Vector<RefPtr<FontFace> >&) const; |
void willUseFontData(const FontDescription&); |
+ void trace(Visitor* visitor) { visitor->trace(m_fontSelector); } |
+ |
private: |
CSSSegmentedFontFace(CSSFontSelector*, FontTraits); |
@@ -77,7 +80,7 @@ private: |
typedef ListHashSet<RefPtr<FontFace> > FontFaceList; |
- CSSFontSelector* m_fontSelector; |
+ RawPtrWillBeMember<CSSFontSelector> m_fontSelector; |
FontTraits m_traits; |
HashMap<unsigned, RefPtr<SegmentedFontData> > m_fontDataTable; |
// All non-CSS-connected FontFaces are stored after the CSS-connected ones. |