Modified: trunk/Source/WebCore/platform/graphics/freetype/FontCacheFreeType.cpp (187531 => 187532)
--- trunk/Source/WebCore/platform/graphics/freetype/FontCacheFreeType.cpp 2015-07-29 00:55:17 UTC (rev 187531)
+++ trunk/Source/WebCore/platform/graphics/freetype/FontCacheFreeType.cpp 2015-07-29 00:57:00 UTC (rev 187532)
@@ -41,60 +41,59 @@
ASSERT_NOT_REACHED();
}
-FcPattern* createFontConfigPatternForCharacters(const UChar* characters, int bufferLength)
+static RefPtr<FcPattern> createFontConfigPatternForCharacters(const UChar* characters, int bufferLength)
{
- FcPattern* pattern = FcPatternCreate();
- FcCharSet* fontConfigCharSet = FcCharSetCreate();
+ RefPtr<FcPattern> pattern = adoptRef(FcPatternCreate());
+ FcUniquePtr<FcCharSet> fontConfigCharSet(FcCharSetCreate());
UTF16UChar32Iterator iterator(characters, bufferLength);
UChar32 character = iterator.next();
while (character != iterator.end()) {
- FcCharSetAddChar(fontConfigCharSet, character);
+ FcCharSetAddChar(fontConfigCharSet.get(), character);
character = iterator.next();
}
- FcPatternAddCharSet(pattern, FC_CHARSET, fontConfigCharSet);
- FcCharSetDestroy(fontConfigCharSet);
+ FcPatternAddCharSet(pattern.get(), FC_CHARSET, fontConfigCharSet.get());
- FcPatternAddBool(pattern, FC_SCALABLE, FcTrue);
- FcConfigSubstitute(0, pattern, FcMatchPattern);
- FcDefaultSubstitute(pattern);
+ FcPatternAddBool(pattern.get(), FC_SCALABLE, FcTrue);
+ FcConfigSubstitute(nullptr, pattern.get(), FcMatchPattern);
+ FcDefaultSubstitute(pattern.get());
return pattern;
}
-FcPattern* findBestFontGivenFallbacks(const FontPlatformData& fontData, FcPattern* pattern)
+static RefPtr<FcPattern> findBestFontGivenFallbacks(const FontPlatformData& fontData, FcPattern* pattern)
{
if (!fontData.m_pattern)
- return 0;
+ return nullptr;
if (!fontData.m_fallbacks) {
FcResult fontConfigResult;
- fontData.m_fallbacks = FcFontSort(0, fontData.m_pattern.get(), FcTrue, 0, &fontConfigResult);
+ fontData.m_fallbacks = FcFontSort(nullptr, fontData.m_pattern.get(), FcTrue, nullptr, &fontConfigResult);
}
if (!fontData.m_fallbacks)
- return 0;
+ return nullptr;
FcFontSet* sets[] = { fontData.m_fallbacks };
FcResult fontConfigResult;
- return FcFontSetMatch(0, sets, 1, pattern, &fontConfigResult);
+ return FcFontSetMatch(nullptr, sets, 1, pattern, &fontConfigResult);
}
RefPtr<Font> FontCache::systemFallbackForCharacters(const FontDescription& description, const Font* originalFontData, bool, const UChar* characters, unsigned length)
{
- RefPtr<FcPattern> pattern = adoptRef(createFontConfigPatternForCharacters(characters, length));
+ RefPtr<FcPattern> pattern = createFontConfigPatternForCharacters(characters, length);
const FontPlatformData& fontData = originalFontData->platformData();
- RefPtr<FcPattern> fallbackPattern = adoptRef(findBestFontGivenFallbacks(fontData, pattern.get()));
+ RefPtr<FcPattern> fallbackPattern = findBestFontGivenFallbacks(fontData, pattern.get());
if (fallbackPattern) {
FontPlatformData alternateFontData(fallbackPattern.get(), description);
return fontForPlatformData(alternateFontData);
}
FcResult fontConfigResult;
- RefPtr<FcPattern> resultPattern = adoptRef(FcFontMatch(0, pattern.get(), &fontConfigResult));
+ RefPtr<FcPattern> resultPattern = adoptRef(FcFontMatch(nullptr, pattern.get(), &fontConfigResult));
if (!resultPattern)
- return 0;
+ return nullptr;
FontPlatformData alternateFontData(resultPattern.get(), description);
return fontForPlatformData(alternateFontData);
}
@@ -138,7 +137,7 @@
return "";
}
-int fontWeightToFontconfigWeight(FontWeight weight)
+static int fontWeightToFontconfigWeight(FontWeight weight)
{
switch (weight) {
case FontWeight100:
@@ -299,7 +298,6 @@
return false;
}
-
std::unique_ptr<FontPlatformData> FontCache::createFontPlatformData(const FontDescription& fontDescription, const AtomicString& family)
{
// The CSS font matching algorithm (http://www.w3.org/TR/css3-fonts/#font-matching-algorithm)
@@ -332,7 +330,7 @@
// Fontconfig is used in two stages: (1) configuration and (2) matching. During the
// configuration step, before any matching occurs, we allow arbitrary family substitutions,
// since this is an exact matter of respecting the user's font configuration.
- FcConfigSubstitute(0, pattern.get(), FcMatchPattern);
+ FcConfigSubstitute(nullptr, pattern.get(), FcMatchPattern);
FcDefaultSubstitute(pattern.get());
FcChar8* fontConfigFamilyNameAfterConfiguration;
@@ -340,7 +338,7 @@
String familyNameAfterConfiguration = String::fromUTF8(reinterpret_cast<char*>(fontConfigFamilyNameAfterConfiguration));
FcResult fontConfigResult;
- RefPtr<FcPattern> resultPattern = adoptRef(FcFontMatch(0, pattern.get(), &fontConfigResult));
+ RefPtr<FcPattern> resultPattern = adoptRef(FcFontMatch(nullptr, pattern.get(), &fontConfigResult));
if (!resultPattern) // No match.
return nullptr;