Chromium Code Reviews| Index: src/ports/SkGlobalInitialization_default.cpp |
| diff --git a/src/ports/SkGlobalInitialization_default.cpp b/src/ports/SkGlobalInitialization_default.cpp |
| index 1c22f231789150fa3a6b5e165970e1f47220bbdf..b218f53ee5890e332727bee9e3e02b0fc88a913c 100644 |
| --- a/src/ports/SkGlobalInitialization_default.cpp |
| +++ b/src/ports/SkGlobalInitialization_default.cpp |
| @@ -15,7 +15,6 @@ |
| #include "Sk1DPathEffect.h" |
| #include "Sk2DPathEffect.h" |
| -#include "SkAnnotation.h" |
| #include "SkArithmeticMode.h" |
| #include "SkAvoidXfermode.h" |
| #include "SkBicubicImageFilter.h" |
| @@ -31,7 +30,6 @@ |
| #include "SkComposeShader.h" |
| #include "SkCornerPathEffect.h" |
| #include "SkDashPathEffect.h" |
| -#include "SkData.h" |
| #include "SkDiscretePathEffect.h" |
| #include "SkDisplacementMapEffect.h" |
| #include "SkDropShadowImageFilter.h" |
| @@ -50,6 +48,7 @@ |
| #include "SkMergeImageFilter.h" |
| #include "SkMorphologyImageFilter.h" |
| #include "SkOffsetImageFilter.h" |
| +#include "SkOnce.h" |
| #include "SkPerlinNoiseShader.h" |
| #include "SkPixelXorXfermode.h" |
| #include "SkRectShaderImageFilter.h" |
| @@ -59,8 +58,7 @@ |
| #include "SkTileImageFilter.h" |
| #include "SkXfermodeImageFilter.h" |
| -void SkFlattenable::InitializeFlattenables() { |
| - |
| +DEF_SK_ONCE(InitializeFlattenables, int*) { |
|
mtklein
2013/10/16 18:54:09
Should be safe to use void* and NULL here too. Th
sugoi1
2013/10/16 20:07:41
I think you need an actual type for the template,
mtklein
2013/10/16 20:09:39
I just mean, write DEF_SK_ONCE(InitializeFlattenab
|
| SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkAvoidXfermode) |
| SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkBicubicImageFilter) |
| SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkBitmapProcShader) |
| @@ -114,3 +112,8 @@ void SkFlattenable::InitializeFlattenables() { |
| SkTableColorFilter::InitializeFlattenables(); |
| SkXfermode::InitializeFlattenables(); |
| } |
| + |
| +void SkFlattenable::InitializeFlattenablesIfNeeded() { |
| + int dummy; |
| + SK_ONCE(InitializeFlattenables, &dummy); |
| +} |