| Index: tests/OnceTest.cpp
|
| diff --git a/tests/OnceTest.cpp b/tests/OnceTest.cpp
|
| index 83ee66b6c8b41c42d08fe9b6ebae0f2e7bf64e41..ef8d3d92251ead88dc5d046166665abbb3cc70ba 100644
|
| --- a/tests/OnceTest.cpp
|
| +++ b/tests/OnceTest.cpp
|
| @@ -13,27 +13,27 @@ static void add_five(int* x) {
|
| *x += 5;
|
| }
|
|
|
| -SK_DECLARE_STATIC_ONCE(st_once);
|
| DEF_TEST(SkOnce_Singlethreaded, r) {
|
| int x = 0;
|
|
|
| // No matter how many times we do this, x will be 5.
|
| - SkOnce(&st_once, add_five, &x);
|
| - SkOnce(&st_once, add_five, &x);
|
| - SkOnce(&st_once, add_five, &x);
|
| - SkOnce(&st_once, add_five, &x);
|
| - SkOnce(&st_once, add_five, &x);
|
| + SkOnce once;
|
| + once(add_five, &x);
|
| + once(add_five, &x);
|
| + once(add_five, &x);
|
| + once(add_five, &x);
|
| + once(add_five, &x);
|
|
|
| REPORTER_ASSERT(r, 5 == x);
|
| }
|
|
|
| -SK_DECLARE_STATIC_ONCE(mt_once);
|
| DEF_TEST(SkOnce_Multithreaded, r) {
|
| int x = 0;
|
| +
|
| // Run a bunch of tasks to be the first to add six to x.
|
| + SkOnce once;
|
| SkTaskGroup().batch(1021, [&](int) {
|
| - void(*add_six)(int*) = [](int* p) { *p += 6; };
|
| - SkOnce(&mt_once, add_six, &x);
|
| + once([&] { x += 6; });
|
| });
|
|
|
| // Only one should have done the +=.
|
| @@ -43,10 +43,10 @@ DEF_TEST(SkOnce_Multithreaded, r) {
|
| static int gX = 0;
|
| static void inc_gX() { gX++; }
|
|
|
| -SK_DECLARE_STATIC_ONCE(noarg_once);
|
| DEF_TEST(SkOnce_NoArg, r) {
|
| - SkOnce(&noarg_once, inc_gX);
|
| - SkOnce(&noarg_once, inc_gX);
|
| - SkOnce(&noarg_once, inc_gX);
|
| + SkOnce once;
|
| + once(inc_gX);
|
| + once(inc_gX);
|
| + once(inc_gX);
|
| REPORTER_ASSERT(r, 1 == gX);
|
| }
|
|
|