aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/ports
diff options
context:
space:
mode:
authorGravatar mtklein <mtklein@chromium.org>2014-06-02 11:26:59 -0700
committerGravatar Commit bot <commit-bot@chromium.org>2014-06-02 11:26:59 -0700
commit1b81877880253c75f835eede9a8ee21b9e7b584a (patch)
treebda959b9910f98cfd9fe857cdf7c962359796542 /src/ports
parent173a5c544be92a09cd8f7eae0e1d50da114e2bc0 (diff)
Clean up SkOnce:
1 Remove atExit feature: clients can do it just as well as SkOnce can. 2 Remove support for functors: no one but the unit test did that. 3 Remove support for unused non-static SkOnceFlag (no SK_ONCE_INIT). 4 Add SkOnce variants for no-arg functions so we're not forced to pass dummy values all the time. 5 Merge SkSpinlock and SkOnceFlag, making all members private. 6 More notes about memory barriers, adding an acquire load after acquiring the spinlock. BUG=skia: R=bungeman@google.com, mtklein@google.com, reed@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/302083003
Diffstat (limited to 'src/ports')
-rw-r--r--src/ports/SkGlobalInitialization_chromium.cpp5
-rw-r--r--src/ports/SkGlobalInitialization_default.cpp5
2 files changed, 4 insertions, 6 deletions
diff --git a/src/ports/SkGlobalInitialization_chromium.cpp b/src/ports/SkGlobalInitialization_chromium.cpp
index 37e5450e19..f42b272f18 100644
--- a/src/ports/SkGlobalInitialization_chromium.cpp
+++ b/src/ports/SkGlobalInitialization_chromium.cpp
@@ -62,7 +62,7 @@
#include "SkMatrixImageFilter.h"
#include "SkXfermodeImageFilter.h"
-static void InitializeFlattenables(int*) {
+static void InitializeFlattenables() {
SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkAvoidXfermode)
SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkBicubicImageFilter)
SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkBitmapProcShader)
@@ -122,7 +122,6 @@ static void InitializeFlattenables(int*) {
}
void SkFlattenable::InitializeFlattenablesIfNeeded() {
- int dummy;
SK_DECLARE_STATIC_ONCE(once);
- SkOnce(&once, InitializeFlattenables, &dummy);
+ SkOnce(&once, InitializeFlattenables);
}
diff --git a/src/ports/SkGlobalInitialization_default.cpp b/src/ports/SkGlobalInitialization_default.cpp
index 949decd018..ce42ca5aad 100644
--- a/src/ports/SkGlobalInitialization_default.cpp
+++ b/src/ports/SkGlobalInitialization_default.cpp
@@ -62,7 +62,7 @@
#include "SkMatrixImageFilter.h"
#include "SkXfermodeImageFilter.h"
-static void InitializeFlattenables(int*) {
+static void InitializeFlattenables() {
SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkAvoidXfermode)
SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkBicubicImageFilter)
SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkBitmapProcShader)
@@ -123,7 +123,6 @@ static void InitializeFlattenables(int*) {
}
void SkFlattenable::InitializeFlattenablesIfNeeded() {
- int dummy;
SK_DECLARE_STATIC_ONCE(once);
- SkOnce(&once, InitializeFlattenables, &dummy);
+ SkOnce(&once, InitializeFlattenables);
}