| Index: third_party/WebKit/Source/platform/fonts/FontFallbackList.cpp
|
| diff --git a/third_party/WebKit/Source/platform/fonts/FontFallbackList.cpp b/third_party/WebKit/Source/platform/fonts/FontFallbackList.cpp
|
| index 71d18519bf0aaf8ac392055961946fcd542fb61d..2840a61a4330ecf81b1610978817d38652cd573d 100644
|
| --- a/third_party/WebKit/Source/platform/fonts/FontFallbackList.cpp
|
| +++ b/third_party/WebKit/Source/platform/fonts/FontFallbackList.cpp
|
| @@ -134,7 +134,7 @@ const SimpleFontData* FontFallbackList::determinePrimarySimpleFontData(const Fon
|
| if (fontData->isSegmented()) {
|
| const SegmentedFontData* segmented = toSegmentedFontData(fontData);
|
| for (unsigned i = 0; i < segmented->numFaces(); i++) {
|
| - const SimpleFontData* rangeFontData = segmented->faceAt(i).fontData();
|
| + const SimpleFontData* rangeFontData = segmented->faceAt(i)->fontData();
|
| if (!rangeFontData->isLoadingFallback())
|
| return rangeFontData;
|
| }
|
| @@ -195,8 +195,11 @@ FallbackListCompositeKey FontFallbackList::compositeKey(const FontDescription& f
|
| if (FontPlatformData* platformData = FontCache::fontCache()->getFontPlatformData(fontDescription, params))
|
| result = FontCache::fontCache()->fontDataFromFontPlatformData(platformData);
|
| }
|
| - if (result)
|
| + if (result) {
|
| key.add(fontDescription.cacheKey(params));
|
| + if (!result->isSegmented() && !result->isCustomFont())
|
| + FontCache::fontCache()->releaseFontData(toSimpleFontData(result));
|
| + }
|
| }
|
| currentFamily = currentFamily->next();
|
| }
|
|
|