diff options
Diffstat (limited to 'Source/WebCore/platform/graphics/SegmentedFontData.h')
-rw-r--r-- | Source/WebCore/platform/graphics/SegmentedFontData.h | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/Source/WebCore/platform/graphics/SegmentedFontData.h b/Source/WebCore/platform/graphics/SegmentedFontData.h index 645dc0d5f..45d7d158c 100644 --- a/Source/WebCore/platform/graphics/SegmentedFontData.h +++ b/Source/WebCore/platform/graphics/SegmentedFontData.h @@ -34,7 +34,7 @@ namespace WebCore { class SimpleFontData; struct FontDataRange { - FontDataRange(UChar32 from, UChar32 to, const SimpleFontData* fontData) + FontDataRange(UChar32 from, UChar32 to, PassRefPtr<SimpleFontData> fontData) : m_from(from) , m_to(to) , m_fontData(fontData) @@ -43,16 +43,18 @@ struct FontDataRange { UChar32 from() const { return m_from; } UChar32 to() const { return m_to; } - const SimpleFontData* fontData() const { return m_fontData; } + PassRefPtr<SimpleFontData> fontData() const { return m_fontData; } private: UChar32 m_from; UChar32 m_to; - const SimpleFontData* m_fontData; + RefPtr<SimpleFontData> m_fontData; }; class SegmentedFontData : public FontData { public: + static PassRefPtr<SegmentedFontData> create() { return adoptRef(new SegmentedFontData); } + virtual ~SegmentedFontData(); void appendRange(const FontDataRange& range) { m_ranges.append(range); } @@ -64,6 +66,8 @@ public: #endif private: + SegmentedFontData() { } + virtual const SimpleFontData* fontDataForCharacter(UChar32) const; virtual bool containsCharacters(const UChar*, int length) const; |