| Index: src/ports/SkFontConfigInterface_direct.cpp
|
| ===================================================================
|
| --- src/ports/SkFontConfigInterface_direct.cpp (revision 14580)
|
| +++ src/ports/SkFontConfigInterface_direct.cpp (working copy)
|
| @@ -15,6 +15,7 @@
|
|
|
| #include "SkBuffer.h"
|
| #include "SkFontConfigInterface.h"
|
| +#include "SkOnce.h"
|
| #include "SkStream.h"
|
|
|
| size_t SkFontConfigInterface::FontIdentity::writeToMemory(void* addr) const {
|
| @@ -123,16 +124,13 @@
|
| SkMutex mutex_;
|
| };
|
|
|
| +static void create_singleton_direct_interface(SkFontConfigInterface** singleton) {
|
| + *singleton = new SkFontConfigInterfaceDirect;
|
| +}
|
| SkFontConfigInterface* SkFontConfigInterface::GetSingletonDirectInterface() {
|
| static SkFontConfigInterface* gDirect;
|
| - if (NULL == gDirect) {
|
| - static SkMutex gMutex;
|
| - SkAutoMutexAcquire ac(gMutex);
|
| -
|
| - if (NULL == gDirect) {
|
| - gDirect = new SkFontConfigInterfaceDirect;
|
| - }
|
| - }
|
| + SK_DECLARE_STATIC_ONCE(once);
|
| + SkOnce(&once, create_singleton_direct_interface, &gDirect);
|
| return gDirect;
|
| }
|
|
|
|
|