Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit cdfd5fe2 authored by Mathias Agopian's avatar Mathias Agopian
Browse files

Fix a typo in Singleton<>

it could cause the sLock field to be emitted several times
in different compilation unit. it also prevented to
have 2 Singleton<> in the same file.
parent 009668bf
Loading
Loading
Loading
Loading
+5 −3
Original line number Diff line number Diff line
@@ -54,11 +54,13 @@ private:
 * (eg: <TYPE>.cpp) to create the static instance of Singleton<>'s attributes,
 * and avoid to have a copy of them in each compilation units Singleton<TYPE>
 * is used.
 * NOTE: we use a version of Mutex ctor that takes a parameter, because
 * for some unknown reason using the default ctor doesn't emit the variable!
 */

#define ANDROID_SINGLETON_STATIC_INSTANCE(TYPE)                 \
    template class Singleton< TYPE >;                           \
    template< class TYPE > Mutex Singleton< TYPE >::sLock;  \
    template<> Mutex Singleton< TYPE >::sLock(Mutex::PRIVATE);  \
    template<> TYPE* Singleton< TYPE >::sInstance(0);