Loading media/codec2/sfplugin/CCodec.cpp +13 −10 Original line number Original line Diff line number Diff line Loading @@ -96,11 +96,14 @@ private: public: public: static sp<CCodecWatchdog> getInstance() { static sp<CCodecWatchdog> getInstance() { static sp<CCodecWatchdog> instance(new CCodecWatchdog); static sp<CCodecWatchdog> sInstance = [] { static std::once_flag flag; sp<CCodecWatchdog> instance = new CCodecWatchdog; // Call Init() only once. // the instance should never get destructed std::call_once(flag, Init, instance); instance->incStrong((void *)CCodecWatchdog::getInstance); instance->init(); return instance; return instance; }(); return sInstance; } } ~CCodecWatchdog() = default; ~CCodecWatchdog() = default; Loading Loading @@ -146,11 +149,11 @@ protected: private: private: CCodecWatchdog() : mLooper(new ALooper) {} CCodecWatchdog() : mLooper(new ALooper) {} static void Init(const sp<CCodecWatchdog> &thiz) { void init() { ALOGV("Init"); ALOGV("init"); thiz->mLooper->setName("CCodecWatchdog"); mLooper->setName("CCodecWatchdog"); thiz->mLooper->registerHandler(thiz); mLooper->registerHandler(this); thiz->mLooper->start(); mLooper->start(); } } sp<ALooper> mLooper; sp<ALooper> mLooper; Loading Loading
media/codec2/sfplugin/CCodec.cpp +13 −10 Original line number Original line Diff line number Diff line Loading @@ -96,11 +96,14 @@ private: public: public: static sp<CCodecWatchdog> getInstance() { static sp<CCodecWatchdog> getInstance() { static sp<CCodecWatchdog> instance(new CCodecWatchdog); static sp<CCodecWatchdog> sInstance = [] { static std::once_flag flag; sp<CCodecWatchdog> instance = new CCodecWatchdog; // Call Init() only once. // the instance should never get destructed std::call_once(flag, Init, instance); instance->incStrong((void *)CCodecWatchdog::getInstance); instance->init(); return instance; return instance; }(); return sInstance; } } ~CCodecWatchdog() = default; ~CCodecWatchdog() = default; Loading Loading @@ -146,11 +149,11 @@ protected: private: private: CCodecWatchdog() : mLooper(new ALooper) {} CCodecWatchdog() : mLooper(new ALooper) {} static void Init(const sp<CCodecWatchdog> &thiz) { void init() { ALOGV("Init"); ALOGV("init"); thiz->mLooper->setName("CCodecWatchdog"); mLooper->setName("CCodecWatchdog"); thiz->mLooper->registerHandler(thiz); mLooper->registerHandler(this); thiz->mLooper->start(); mLooper->start(); } } sp<ALooper> mLooper; sp<ALooper> mLooper; Loading