Title: [263278] trunk/Source/WebCore
Revision
263278
Author
cdu...@apple.com
Date
2020-06-19 11:43:38 -0700 (Fri, 19 Jun 2020)

Log Message

[iOS] Drop std::call_once() from RenderThemeIOS::cssValueToSystemColorMap()
https://bugs.webkit.org/show_bug.cgi?id=213392

Reviewed by Geoffrey Garen.

Drop std::call_once() from RenderThemeIOS::cssValueToSystemColorMap() since this function
is always called from the main thread.

* rendering/RenderThemeIOS.mm:
(WebCore::RenderThemeIOS::cssValueToSystemColorMap):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (263277 => 263278)


--- trunk/Source/WebCore/ChangeLog	2020-06-19 18:07:16 UTC (rev 263277)
+++ trunk/Source/WebCore/ChangeLog	2020-06-19 18:43:38 UTC (rev 263278)
@@ -1,3 +1,16 @@
+2020-06-19  Chris Dumez  <cdu...@apple.com>
+
+        [iOS] Drop std::call_once() from RenderThemeIOS::cssValueToSystemColorMap()
+        https://bugs.webkit.org/show_bug.cgi?id=213392
+
+        Reviewed by Geoffrey Garen.
+
+        Drop std::call_once() from RenderThemeIOS::cssValueToSystemColorMap() since this function
+        is always called from the main thread.
+
+        * rendering/RenderThemeIOS.mm:
+        (WebCore::RenderThemeIOS::cssValueToSystemColorMap):
+
 2020-06-19  Rob Buis  <rb...@igalia.com>
 
         Enable referrer policy attribute support by default

Modified: trunk/Source/WebCore/rendering/RenderThemeIOS.mm (263277 => 263278)


--- trunk/Source/WebCore/rendering/RenderThemeIOS.mm	2020-06-19 18:07:16 UTC (rev 263277)
+++ trunk/Source/WebCore/rendering/RenderThemeIOS.mm	2020-06-19 18:43:38 UTC (rev 263278)
@@ -1311,23 +1311,20 @@
 
 const RenderThemeIOS::CSSValueToSystemColorMap& RenderThemeIOS::cssValueToSystemColorMap()
 {
-    static NeverDestroyed<CSSValueToSystemColorMap> map;
-
-    static std::once_flag onceFlag;
-    std::call_once(
-        onceFlag,
-        [] {
+    ASSERT(RunLoop::isMain());
+    static const NeverDestroyed<CSSValueToSystemColorMap> colorMap = [] {
+        CSSValueToSystemColorMap map;
         for (auto& cssValueIDSelector : cssValueIDSelectorList()) {
             for (bool useDarkAppearance : { false, true }) {
                 for (bool useElevatedUserInterfaceLevel : { false, true }) {
                     if (auto color = systemColorFromCSSValueID(cssValueIDSelector.cssValueID, useDarkAppearance, useElevatedUserInterfaceLevel))
-                        map.get().add(CSSValueKey { cssValueIDSelector.cssValueID, useDarkAppearance, useElevatedUserInterfaceLevel }, *color);
+                        map.add(CSSValueKey { cssValueIDSelector.cssValueID, useDarkAppearance, useElevatedUserInterfaceLevel }, *color);
                 }
             }
         }
-    });
-
-    return map;
+        return map;
+    }();
+    return colorMap;
 }
 
 void RenderThemeIOS::setCSSValueToSystemColorMap(CSSValueToSystemColorMap&& colorMap)
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to