Title: [283210] trunk/Source/WebCore
Revision
283210
Author
[email protected]
Date
2021-09-28 21:52:27 -0700 (Tue, 28 Sep 2021)

Log Message

Factor out rare members of FontCreationContext into FontCreationContextRareData
https://bugs.webkit.org/show_bug.cgi?id=230800
<rdar://problem/83538227>

Reviewed by Alan Bujtas.

FontCreationContext is used inside HashMap keys in font caches, so we want the type to be
small. Palettes and font features are rare, so we can move those into a heap-allocated
rare data object, thereby decreasing the size of FontCreationContext for most fonts.
Importantly, if palettes and font features aren't used, the RefPtr will just be null, and
no allocation is performed.

No new tests because there is no behavior change.

* css/CSSFontFace.h:
* css/CSSFontFaceSource.h:
* css/CSSSegmentedFontFace.h:
* loader/FontLoadRequest.h:
* loader/cache/CachedFont.h:
* loader/cache/CachedFontLoadRequest.h:
* loader/cache/CachedSVGFont.h:
* platform/graphics/FontCreationContext.h:
(WebCore::FontCreationContextRareData::create):
(WebCore::FontCreationContextRareData::fontFaceFeatures const):
(WebCore::FontCreationContextRareData::fontPaletteValues const):
(WebCore::FontCreationContextRareData::operator== const):
(WebCore::FontCreationContextRareData::operator!= const):
(WebCore::FontCreationContextRareData::FontCreationContextRareData):
(WebCore::FontCreationContext::FontCreationContext):
(WebCore::FontCreationContext::fontFaceFeatures const):
(WebCore::FontCreationContext::fontFaceCapabilities const):
(WebCore::FontCreationContext::fontPaletteValues const):
(WebCore::FontCreationContext::operator== const):
(WebCore::add):
* platform/graphics/FontPaletteValues.h:
(WebCore::FontPaletteValues::operator bool const):
* platform/graphics/cocoa/FontCacheCoreText.cpp:
(WebCore::addAttributesForFontPalettes):
(WebCore::preparePlatformFont):
* platform/graphics/cocoa/FontCacheCoreText.h:
* platform/graphics/freetype/FontCacheFreeType.cpp:
* platform/graphics/freetype/FontCustomPlatformDataFreeType.cpp:
* platform/graphics/mac/FontCustomPlatformData.h:
* workers/WorkerFontLoadRequest.h:

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (283209 => 283210)


--- trunk/Source/WebCore/ChangeLog	2021-09-29 03:52:14 UTC (rev 283209)
+++ trunk/Source/WebCore/ChangeLog	2021-09-29 04:52:27 UTC (rev 283210)
@@ -1,3 +1,50 @@
+2021-09-28  Myles C. Maxfield  <[email protected]>
+
+        Factor out rare members of FontCreationContext into FontCreationContextRareData
+        https://bugs.webkit.org/show_bug.cgi?id=230800
+        <rdar://problem/83538227>
+
+        Reviewed by Alan Bujtas.
+
+        FontCreationContext is used inside HashMap keys in font caches, so we want the type to be
+        small. Palettes and font features are rare, so we can move those into a heap-allocated
+        rare data object, thereby decreasing the size of FontCreationContext for most fonts.
+        Importantly, if palettes and font features aren't used, the RefPtr will just be null, and
+        no allocation is performed.
+
+        No new tests because there is no behavior change.
+
+        * css/CSSFontFace.h:
+        * css/CSSFontFaceSource.h:
+        * css/CSSSegmentedFontFace.h:
+        * loader/FontLoadRequest.h:
+        * loader/cache/CachedFont.h:
+        * loader/cache/CachedFontLoadRequest.h:
+        * loader/cache/CachedSVGFont.h:
+        * platform/graphics/FontCreationContext.h:
+        (WebCore::FontCreationContextRareData::create):
+        (WebCore::FontCreationContextRareData::fontFaceFeatures const):
+        (WebCore::FontCreationContextRareData::fontPaletteValues const):
+        (WebCore::FontCreationContextRareData::operator== const):
+        (WebCore::FontCreationContextRareData::operator!= const):
+        (WebCore::FontCreationContextRareData::FontCreationContextRareData):
+        (WebCore::FontCreationContext::FontCreationContext):
+        (WebCore::FontCreationContext::fontFaceFeatures const):
+        (WebCore::FontCreationContext::fontFaceCapabilities const):
+        (WebCore::FontCreationContext::fontPaletteValues const):
+        (WebCore::FontCreationContext::operator== const):
+        (WebCore::add):
+        * platform/graphics/FontPaletteValues.h:
+        (WebCore::FontPaletteValues::operator bool const):
+        * platform/graphics/cocoa/FontCacheCoreText.cpp:
+        (WebCore::addAttributesForFontPalettes):
+        (WebCore::preparePlatformFont):
+        * platform/graphics/cocoa/FontCacheCoreText.h:
+        * platform/graphics/freetype/FontCacheFreeType.cpp:
+        * platform/graphics/freetype/FontCustomPlatformDataFreeType.cpp:
+        * platform/graphics/mac/FontCustomPlatformData.h:
+        * workers/WorkerFontLoadRequest.h:
+
 2021-09-28  Takashi Komori  <[email protected]>
 
         [Curl] Set CURL_LOCK_DATA_SSL_SESSION option to reduce SSL/TLS handshake time

Modified: trunk/Source/WebCore/css/CSSFontFace.h (283209 => 283210)


--- trunk/Source/WebCore/css/CSSFontFace.h	2021-09-29 03:52:14 UTC (rev 283209)
+++ trunk/Source/WebCore/css/CSSFontFace.h	2021-09-29 04:52:27 UTC (rev 283210)
@@ -47,7 +47,7 @@
 class CSSValue;
 class CSSValueList;
 class FontCache;
-struct FontCreationContext;
+class FontCreationContext;
 class FontDescription;
 class Font;
 class FontFace;

Modified: trunk/Source/WebCore/css/CSSFontFaceSource.h (283209 => 283210)


--- trunk/Source/WebCore/css/CSSFontFaceSource.h	2021-09-29 03:52:14 UTC (rev 283209)
+++ trunk/Source/WebCore/css/CSSFontFaceSource.h	2021-09-29 04:52:27 UTC (rev 283210)
@@ -36,7 +36,7 @@
 class CSSFontSelector;
 class Document;
 class Font;
-struct FontCreationContext;
+class FontCreationContext;
 struct FontCustomPlatformData;
 class FontDescription;
 struct FontSelectionSpecifiedCapabilities;

Modified: trunk/Source/WebCore/css/CSSSegmentedFontFace.h (283209 => 283210)


--- trunk/Source/WebCore/css/CSSSegmentedFontFace.h	2021-09-29 03:52:14 UTC (rev 283209)
+++ trunk/Source/WebCore/css/CSSSegmentedFontFace.h	2021-09-29 04:52:27 UTC (rev 283210)
@@ -34,7 +34,7 @@
 namespace WebCore {
 
 class CSSFontSelector;
-struct FontCreationContext;
+class FontCreationContext;
 class FontDescription;
 class FontPaletteValues;
 class FontRanges;

Modified: trunk/Source/WebCore/loader/FontLoadRequest.h (283209 => 283210)


--- trunk/Source/WebCore/loader/FontLoadRequest.h	2021-09-29 03:52:14 UTC (rev 283209)
+++ trunk/Source/WebCore/loader/FontLoadRequest.h	2021-09-29 04:52:27 UTC (rev 283210)
@@ -32,7 +32,7 @@
 namespace WebCore {
 
 class Font;
-struct FontCreationContext;
+class FontCreationContext;
 class FontDescription;
 class FontLoadRequest;
 struct FontSelectionSpecifiedCapabilities;

Modified: trunk/Source/WebCore/loader/cache/CachedFont.h (283209 => 283210)


--- trunk/Source/WebCore/loader/cache/CachedFont.h	2021-09-29 03:52:14 UTC (rev 283209)
+++ trunk/Source/WebCore/loader/cache/CachedFont.h	2021-09-29 04:52:27 UTC (rev 283210)
@@ -34,7 +34,7 @@
 namespace WebCore {
 
 class CachedResourceLoader;
-struct FontCreationContext;
+class FontCreationContext;
 class FontDescription;
 class FontPlatformData;
 struct FontSelectionSpecifiedCapabilities;

Modified: trunk/Source/WebCore/loader/cache/CachedFontLoadRequest.h (283209 => 283210)


--- trunk/Source/WebCore/loader/cache/CachedFontLoadRequest.h	2021-09-29 03:52:14 UTC (rev 283209)
+++ trunk/Source/WebCore/loader/cache/CachedFontLoadRequest.h	2021-09-29 04:52:27 UTC (rev 283210)
@@ -34,7 +34,7 @@
 
 namespace WebCore {
 
-struct FontCreationContext;
+class FontCreationContext;
 
 class CachedFontLoadRequest final : public FontLoadRequest, public CachedFontClient {
     WTF_MAKE_FAST_ALLOCATED;

Modified: trunk/Source/WebCore/loader/cache/CachedSVGFont.h (283209 => 283210)


--- trunk/Source/WebCore/loader/cache/CachedSVGFont.h	2021-09-29 03:52:14 UTC (rev 283209)
+++ trunk/Source/WebCore/loader/cache/CachedSVGFont.h	2021-09-29 04:52:27 UTC (rev 283210)
@@ -29,7 +29,7 @@
 
 namespace WebCore {
 
-struct FontCreationContext;
+class FontCreationContext;
 class SVGFontFaceElement;
 class Settings;
 

Modified: trunk/Source/WebCore/platform/graphics/FontCreationContext.h (283209 => 283210)


--- trunk/Source/WebCore/platform/graphics/FontCreationContext.h	2021-09-29 03:52:14 UTC (rev 283209)
+++ trunk/Source/WebCore/platform/graphics/FontCreationContext.h	2021-09-29 04:52:27 UTC (rev 283210)
@@ -28,15 +28,80 @@
 #include "FontPaletteValues.h"
 #include "FontSelectionAlgorithm.h"
 #include "FontTaggedSettings.h"
+#include <wtf/PointerComparison.h>
 
 namespace WebCore {
 
-struct FontCreationContext {
+class FontCreationContextRareData : public RefCounted<FontCreationContextRareData> {
+public:
+    static Ref<FontCreationContextRareData> create(const FontFeatureSettings& fontFaceFeatures, const FontPaletteValues& fontPaletteValues)
+    {
+        return adoptRef(*new FontCreationContextRareData(fontFaceFeatures, fontPaletteValues));
+    }
+
+    const FontFeatureSettings& fontFaceFeatures() const
+    {
+        return m_fontFaceFeatures;
+    }
+
+    const FontPaletteValues& fontPaletteValues() const
+    {
+        return m_fontPaletteValues;
+    }
+
+    bool operator==(const FontCreationContextRareData& other) const
+    {
+        return m_fontFaceFeatures == other.m_fontFaceFeatures
+            && m_fontPaletteValues == other.m_fontPaletteValues;
+    }
+
+    bool operator!=(const FontCreationContextRareData& other) const
+    {
+        return !(*this == other);
+    }
+
+private:
+    FontCreationContextRareData(const FontFeatureSettings& fontFaceFeatures, const FontPaletteValues& fontPaletteValues)
+        : m_fontFaceFeatures(fontFaceFeatures)
+        , m_fontPaletteValues(fontPaletteValues)
+    {
+    }
+
+    FontFeatureSettings m_fontFaceFeatures;
+    FontPaletteValues m_fontPaletteValues;
+    // FIXME: Add support for font-feature-values.
+};
+
+class FontCreationContext {
+public:
+    FontCreationContext() = default;
+
+    FontCreationContext(const FontFeatureSettings& fontFaceFeatures, const FontSelectionSpecifiedCapabilities& fontFaceCapabilities, const FontPaletteValues& fontPaletteValues)
+        : m_fontFaceCapabilities(fontFaceCapabilities)
+    {
+        if (!fontFaceFeatures.isEmpty() || fontPaletteValues)
+            m_rareData = FontCreationContextRareData::create(fontFaceFeatures, fontPaletteValues);
+    }
+
+    const FontFeatureSettings* fontFaceFeatures() const
+    {
+        return m_rareData ? &m_rareData->fontFaceFeatures() : nullptr;
+    }
+
+    const FontSelectionSpecifiedCapabilities& fontFaceCapabilities() const
+    {
+        return m_fontFaceCapabilities;
+    }
+
+    const FontPaletteValues* fontPaletteValues() const
+    {
+        return m_rareData ? &m_rareData->fontPaletteValues() : nullptr;
+    }
+
     bool operator==(const FontCreationContext& other) const
     {
-        return fontFaceFeatures == other.fontFaceFeatures
-            && fontFaceCapabilities == other.fontFaceCapabilities
-            && fontPaletteValues == other.fontPaletteValues;
+        return m_fontFaceCapabilities == other.m_fontFaceCapabilities
+            && arePointingToEqualData(m_rareData, other.m_rareData);
     }
 
     bool operator!=(const FontCreationContext& other) const
@@ -44,17 +109,18 @@
         return !(*this == other);
     }
 
-    FontFeatureSettings fontFaceFeatures;
-    FontSelectionSpecifiedCapabilities fontFaceCapabilities;
-    FontPaletteValues fontPaletteValues;
-    // FIXME: Add support for font-feature-values.
+private:
+    FontSelectionSpecifiedCapabilities m_fontFaceCapabilities;
+    RefPtr<FontCreationContextRareData> m_rareData;
 };
 
 inline void add(Hasher& hasher, const FontCreationContext& fontCreationContext)
 {
-    add(hasher, fontCreationContext.fontFaceFeatures);
-    add(hasher, fontCreationContext.fontFaceCapabilities.tied());
-    add(hasher, fontCreationContext.fontPaletteValues);
+    if (fontCreationContext.fontFaceFeatures())
+        add(hasher, *fontCreationContext.fontFaceFeatures());
+    add(hasher, fontCreationContext.fontFaceCapabilities().tied());
+    if (fontCreationContext.fontPaletteValues())
+        add(hasher, *fontCreationContext.fontPaletteValues());
 }
 
 }

Modified: trunk/Source/WebCore/platform/graphics/FontPaletteValues.h (283209 => 283210)


--- trunk/Source/WebCore/platform/graphics/FontPaletteValues.h	2021-09-29 03:52:14 UTC (rev 283209)
+++ trunk/Source/WebCore/platform/graphics/FontPaletteValues.h	2021-09-29 04:52:27 UTC (rev 283210)
@@ -58,6 +58,15 @@
         return m_overrideColors;
     }
 
+    operator bool() const
+    {
+        return WTF::switchOn(m_basePalette, [] (int64_t) {
+            return true;
+        }, [] (const AtomString& string) {
+            return !string.isNull();
+        }) || !m_overrideColors.isEmpty();
+    }
+
     bool operator==(const FontPaletteValues& other) const
     {
         return m_basePalette == other.m_basePalette && m_overrideColors == other.m_overrideColors;

Modified: trunk/Source/WebCore/platform/graphics/cairo/FontCustomPlatformData.h (283209 => 283210)


--- trunk/Source/WebCore/platform/graphics/cairo/FontCustomPlatformData.h	2021-09-29 03:52:14 UTC (rev 283209)
+++ trunk/Source/WebCore/platform/graphics/cairo/FontCustomPlatformData.h	2021-09-29 04:52:27 UTC (rev 283210)
@@ -31,7 +31,7 @@
 
 namespace WebCore {
 
-struct FontCreationContext;
+class FontCreationContext;
 class FontDescription;
 class FontPlatformData;
 class SharedBuffer;

Modified: trunk/Source/WebCore/platform/graphics/cocoa/FontCacheCoreText.cpp (283209 => 283210)


--- trunk/Source/WebCore/platform/graphics/cocoa/FontCacheCoreText.cpp	2021-09-29 03:52:14 UTC (rev 283209)
+++ trunk/Source/WebCore/platform/graphics/cocoa/FontCacheCoreText.cpp	2021-09-29 04:52:27 UTC (rev 283210)
@@ -443,7 +443,7 @@
     bool aatShaping { false };
 };
 
-static void addAttributesForFontPalettes(CFMutableDictionaryRef attributes, const FontPalette& fontPalette, const FontPaletteValues& fontPaletteValues)
+static void addAttributesForFontPalettes(CFMutableDictionaryRef attributes, const FontPalette& fontPalette, const FontPaletteValues* fontPaletteValues)
 {
     switch (fontPalette.type) {
     case FontPalette::Type::None:
@@ -464,7 +464,9 @@
         break;
     }
     case FontPalette::Type::Custom: {
-        WTF::switchOn(fontPaletteValues.basePalette(), [&](unsigned index) {
+        if (!fontPaletteValues)
+            break; 
+        WTF::switchOn(fontPaletteValues->basePalette(), [&](int64_t index) {
             int64_t rawIndex = index; // There is no kCFNumberUIntType.
             auto number = adoptCF(CFNumberCreate(kCFAllocatorDefault, kCFNumberSInt64Type, &rawIndex));
             CFDictionaryAddValue(attributes, kCTFontPaletteAttribute, number.get());
@@ -472,9 +474,9 @@
             // This is unimplementable in Core Text.
         });
 
-        if (!fontPaletteValues.overrideColors().isEmpty()) {
+        if (!fontPaletteValues->overrideColors().isEmpty()) {
             auto overrideDictionary = adoptCF(CFDictionaryCreateMutable(kCFAllocatorDefault, 0, &kCFTypeDictionaryKeyCallBacks, &kCFTypeDictionaryValueCallBacks));
-            for (const auto& pair : fontPaletteValues.overrideColors()) {
+            for (const auto& pair : fontPaletteValues->overrideColors()) {
                 const auto& paletteColorIndex = pair.first;
                 const auto& color = pair.second;
                 WTF::switchOn(paletteColorIndex, [](const AtomString&) {
@@ -523,7 +525,7 @@
     bool textRenderingModeIsAuto = textRenderingMode == TextRenderingMode::AutoTextRendering;
     bool variantSettingsIsNormal = variantSettings.isAllNormal();
     bool dontNeedToApplyOpticalSizing = fontOpticalSizing == FontOpticalSizing::Enabled && !forceOpticalSizingOn;
-    bool fontFaceDoesntSpecifyFeatures = fontCreationContext.fontFaceFeatures.isEmpty();
+    bool fontFaceDoesntSpecifyFeatures = !fontCreationContext.fontFaceFeatures() || fontCreationContext.fontFaceFeatures()->isEmpty();
     if (noFontFeatureSettings && noFontVariationSettings && textRenderingModeIsAuto && variantSettingsIsNormal && dontNeedToApplyOpticalSizing && fontFaceDoesntSpecifyFeatures && !shouldDisableLigaturesForSpacing && dontNeedToApplyFontPalettes) {
 #if HAVE(CTFONTCREATEFORCHARACTERSWITHLANGUAGEANDOPTION)
         return originalFont;
@@ -569,11 +571,11 @@
         float weight = fontSelectionRequest.weight;
         float width = fontSelectionRequest.width;
         float slope = fontSelectionRequest.slope.value_or(normalItalicValue());
-        if (auto weightValue = fontCreationContext.fontFaceCapabilities.weight)
+        if (auto weightValue = fontCreationContext.fontFaceCapabilities().weight)
             weight = std::max(std::min(weight, static_cast<float>(weightValue->maximum)), static_cast<float>(weightValue->minimum));
-        if (auto widthValue = fontCreationContext.fontFaceCapabilities.width)
+        if (auto widthValue = fontCreationContext.fontFaceCapabilities().width)
             width = std::max(std::min(width, static_cast<float>(widthValue->maximum)), static_cast<float>(widthValue->minimum));
-        if (auto slopeValue = fontCreationContext.fontFaceCapabilities.weight)
+        if (auto slopeValue = fontCreationContext.fontFaceCapabilities().weight)
             slope = std::max(std::min(slope, static_cast<float>(slopeValue->maximum)), static_cast<float>(slopeValue->minimum));
         if (needsConversion) {
             weight = denormalizeWeight(weight);
@@ -593,8 +595,8 @@
     // FIXME: Implement Step 6: the font-variation-settings descriptor inside @font-face
 
     // Step 7: Consult with font-feature-settings inside @font-face
-    if (!fontCreationContext.fontFaceFeatures.isEmpty()) {
-        for (auto& fontFaceFeature : fontCreationContext.fontFaceFeatures)
+    if (fontCreationContext.fontFaceFeatures() && !fontCreationContext.fontFaceFeatures()->isEmpty()) {
+        for (auto& fontFaceFeature : *fontCreationContext.fontFaceFeatures())
             applyFeature(fontFaceFeature.tag(), fontFaceFeature.value());
     }
 
@@ -674,7 +676,7 @@
 #endif
     }
 
-    addAttributesForFontPalettes(attributes.get(), fontDescription.fontPalette(), fontCreationContext.fontPaletteValues);
+    addAttributesForFontPalettes(attributes.get(), fontDescription.fontPalette(), fontCreationContext.fontPaletteValues());
 
     addAttributesForInstalledFonts(attributes.get(), fontDescription.shouldAllowUserInstalledFonts());
 

Modified: trunk/Source/WebCore/platform/graphics/cocoa/FontCacheCoreText.h (283209 => 283210)


--- trunk/Source/WebCore/platform/graphics/cocoa/FontCacheCoreText.h	2021-09-29 03:52:14 UTC (rev 283209)
+++ trunk/Source/WebCore/platform/graphics/cocoa/FontCacheCoreText.h	2021-09-29 04:52:27 UTC (rev 283210)
@@ -34,7 +34,7 @@
 
 namespace WebCore {
 
-struct FontCreationContext;
+class FontCreationContext;
 
 struct SynthesisPair {
     explicit SynthesisPair(bool needsSyntheticBold, bool needsSyntheticOblique)

Modified: trunk/Source/WebCore/platform/graphics/freetype/FontCacheFreeType.cpp (283209 => 283210)


--- trunk/Source/WebCore/platform/graphics/freetype/FontCacheFreeType.cpp	2021-09-29 03:52:14 UTC (rev 283209)
+++ trunk/Source/WebCore/platform/graphics/freetype/FontCacheFreeType.cpp	2021-09-29 04:52:27 UTC (rev 283210)
@@ -573,8 +573,8 @@
     bool fixedWidth, syntheticBold, syntheticOblique;
     getFontPropertiesFromPattern(resultPattern.get(), fontDescription, fixedWidth, syntheticBold, syntheticOblique);
 
-    if (!fontCreationContext.fontFaceFeatures.isEmpty()) {
-        for (auto& fontFaceFeature : fontCreationContext.fontFaceFeatures) {
+    if (fontCreationContext.fontFaceFeatures() && !fontCreationContext.fontFaceFeatures()->isEmpty()) {
+        for (auto& fontFaceFeature : *fontCreationContext.fontFaceFeatures()) {
             if (fontFaceFeature.enabled()) {
                 const auto& tag = fontFaceFeature.tag();
                 const char buffer[] = { tag[0], tag[1], tag[2], tag[3], '\0' };

Modified: trunk/Source/WebCore/platform/graphics/freetype/FontCustomPlatformDataFreeType.cpp (283209 => 283210)


--- trunk/Source/WebCore/platform/graphics/freetype/FontCustomPlatformDataFreeType.cpp	2021-09-29 03:52:14 UTC (rev 283209)
+++ trunk/Source/WebCore/platform/graphics/freetype/FontCustomPlatformDataFreeType.cpp	2021-09-29 04:52:27 UTC (rev 283210)
@@ -81,11 +81,13 @@
     RefPtr<FcPattern> pattern = defaultFontconfigOptions();
     FcPatternAddString(pattern.get(), FC_FAMILY, reinterpret_cast<const FcChar8*>(freeTypeFace->family_name));
 
-    for (auto& fontFaceFeature : fontCreationContext.fontFaceFeatures) {
-        if (fontFaceFeature.enabled()) {
-            const auto& tag = fontFaceFeature.tag();
-            const char buffer[] = { tag[0], tag[1], tag[2], tag[3], '\0' };
-            FcPatternAddString(pattern.get(), FC_FONT_FEATURES, reinterpret_cast<const FcChar8*>(buffer));
+    if (fontCreationContext.fontFaceFeatures()) {
+        for (auto& fontFaceFeature : *fontCreationContext.fontFaceFeatures()) {
+            if (fontFaceFeature.enabled()) {
+                const auto& tag = fontFaceFeature.tag();
+                const char buffer[] = { tag[0], tag[1], tag[2], tag[3], '\0' };
+                FcPatternAddString(pattern.get(), FC_FONT_FEATURES, reinterpret_cast<const FcChar8*>(buffer));
+            }
         }
     }
 

Modified: trunk/Source/WebCore/platform/graphics/mac/FontCustomPlatformData.h (283209 => 283210)


--- trunk/Source/WebCore/platform/graphics/mac/FontCustomPlatformData.h	2021-09-29 03:52:14 UTC (rev 283209)
+++ trunk/Source/WebCore/platform/graphics/mac/FontCustomPlatformData.h	2021-09-29 04:52:27 UTC (rev 283210)
@@ -33,7 +33,7 @@
 
 namespace WebCore {
 
-struct FontCreationContext;
+class FontCreationContext;
 class FontDescription;
 struct FontSelectionSpecifiedCapabilities;
 class SharedBuffer;

Modified: trunk/Source/WebCore/platform/graphics/win/FontCustomPlatformData.h (283209 => 283210)


--- trunk/Source/WebCore/platform/graphics/win/FontCustomPlatformData.h	2021-09-29 03:52:14 UTC (rev 283209)
+++ trunk/Source/WebCore/platform/graphics/win/FontCustomPlatformData.h	2021-09-29 04:52:27 UTC (rev 283210)
@@ -36,7 +36,7 @@
 
 namespace WebCore {
 
-struct FontCreationContext;
+class FontCreationContext;
 class FontDescription;
 class FontMemoryResource;
 class SharedBuffer;

Modified: trunk/Source/WebCore/workers/WorkerFontLoadRequest.h (283209 => 283210)


--- trunk/Source/WebCore/workers/WorkerFontLoadRequest.h	2021-09-29 03:52:14 UTC (rev 283209)
+++ trunk/Source/WebCore/workers/WorkerFontLoadRequest.h	2021-09-29 04:52:27 UTC (rev 283210)
@@ -34,7 +34,7 @@
 
 namespace WebCore {
 
-struct FontCreationContext;
+class FontCreationContext;
 class ScriptExecutionContext;
 class SharedBuffer;
 class WorkerGlobalScope;
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to