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. 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); }
SkEventTracer* SkEventTracer::GetInstance() { SK_DECLARE_STATIC_ONCE(once); SkOnce(&once, intialize_default_tracer, SkEventTracer::gInstance); SkASSERT(NULL != SkEventTracer::gInstance); return SkEventTracer::gInstance; }
void SkFlattenable::InitializeFlattenablesIfNeeded() { SK_DECLARE_STATIC_ONCE(once); SkOnce(&once, SkPrivateEffectInitializer::Init); }
void SkFlattenable::InitializeFlattenablesIfNeeded() { int dummy; SK_DECLARE_STATIC_ONCE(once); SkOnce(&once, InitializeFlattenables, &dummy); }