namespace {} trick for SK_DECLARE_STATIC_ONCE
Like all our other SK_DECLARE_STATIC_*, it's usually not a thread-safe
thing to put inside a function. Adding namespace {} prevents that
syntactically.
Needs https://codereview.chromium.org/841263004/ to land first.
BUG=chromium:447890
No public API changes.
TBR=reed@google.com
Review URL: https://codereview.chromium.org/806473006
diff --git a/src/utils/SkEventTracer.cpp b/src/utils/SkEventTracer.cpp
index 4c0470b..ef2a055 100644
--- a/src/utils/SkEventTracer.cpp
+++ b/src/utils/SkEventTracer.cpp
@@ -51,8 +51,8 @@
}
+SK_DECLARE_STATIC_ONCE(once);
SkEventTracer* SkEventTracer::GetInstance() {
- SK_DECLARE_STATIC_ONCE(once);
SkOnce(&once, intialize_default_tracer, SkEventTracer::gInstance);
SkASSERT(SkEventTracer::gInstance);
return SkEventTracer::gInstance;
diff --git a/src/utils/win/SkDWrite.cpp b/src/utils/win/SkDWrite.cpp
index 7801059..363ac43 100644
--- a/src/utils/win/SkDWrite.cpp
+++ b/src/utils/win/SkDWrite.cpp
@@ -41,10 +41,9 @@
}
+SK_DECLARE_STATIC_ONCE(once);
IDWriteFactory* sk_get_dwrite_factory() {
- SK_DECLARE_STATIC_ONCE(once);
SkOnce(&once, create_dwrite_factory, &gDWriteFactory);
-
return gDWriteFactory;
}