Index: tests/OnceTest.cpp |
diff --git a/tests/OnceTest.cpp b/tests/OnceTest.cpp |
index 6c485a0f0ae35ba7e06be9aa3b376068a1ccaa7a..31c6a85a44cbd50213129f3c265ae8c71773cf55 100644 |
--- a/tests/OnceTest.cpp |
+++ b/tests/OnceTest.cpp |
@@ -10,32 +10,35 @@ |
#include "Test.h" |
#include "TestClassDef.h" |
-DEF_SK_ONCE(add_five, int* x) { |
+static void add_five(int* x) { |
*x += 5; |
} |
DEF_TEST(SkOnce_Singlethreaded, r) { |
int x = 0; |
+ SK_DECLARE_STATIC_ONCE(once); |
// No matter how many times we do this, x will be 5. |
- SK_ONCE(add_five, &x); |
- SK_ONCE(add_five, &x); |
- SK_ONCE(add_five, &x); |
- SK_ONCE(add_five, &x); |
- SK_ONCE(add_five, &x); |
+ SkOnce(&once, add_five, &x); |
+ SkOnce(&once, add_five, &x); |
+ SkOnce(&once, add_five, &x); |
+ SkOnce(&once, add_five, &x); |
+ SkOnce(&once, add_five, &x); |
REPORTER_ASSERT(r, 5 == x); |
} |
-DEF_SK_ONCE(add_six, int* x) { |
+static void add_six(int* x) { |
*x += 6; |
} |
class Racer : public SkRunnable { |
public: |
+ SkOnceFlag* once; |
int* ptr; |
+ |
virtual void run() SK_OVERRIDE { |
- SK_ONCE(add_six, ptr); |
+ SkOnce(once, add_six, ptr); |
} |
}; |
@@ -44,8 +47,10 @@ DEF_TEST(SkOnce_Multithreaded, r) { |
// Make a bunch of tasks that will race to be the first to add six to x. |
Racer racers[kTasks]; |
+ SK_DECLARE_STATIC_ONCE(once); |
int x = 0; |
for (int i = 0; i < kTasks; i++) { |
+ racers[i].once = &once; |
racers[i].ptr = &x; |
} |