@@ -255,7 +255,7 @@ class LibraryRegistry {
255255};
256256
257257// Guards g_apps and g_default_app.
258- static Mutex g_app_mutex; // NOLINT
258+ static Mutex* g_app_mutex = new Mutex();
259259static std::map<std::string, UniquePtr<AppData>>* g_apps;
260260static App* g_default_app = nullptr ;
261261LibraryRegistry* LibraryRegistry::library_registry_ = nullptr ;
@@ -265,7 +265,7 @@ App* AddApp(App* app, std::map<std::string, InitResult>* results) {
265265 assert (app);
266266 App* existing_app = FindAppByName (app->name ());
267267 FIREBASE_ASSERT_RETURN (nullptr , !existing_app);
268- MutexLock lock (g_app_mutex);
268+ MutexLock lock (* g_app_mutex);
269269 if (IsDefaultAppName (app->name ())) {
270270 assert (!g_default_app);
271271 g_default_app = app;
@@ -309,7 +309,7 @@ App* AddApp(App* app, std::map<std::string, InitResult>* results) {
309309
310310App* FindAppByName (const char * name) {
311311 assert (name);
312- MutexLock lock (g_app_mutex);
312+ MutexLock lock (* g_app_mutex);
313313 if (g_apps) {
314314 auto it = g_apps->find (std::string (name));
315315 if (it == g_apps->end ()) return nullptr ;
@@ -325,7 +325,7 @@ App* GetAnyApp() {
325325 return g_default_app;
326326 }
327327
328- MutexLock lock (g_app_mutex);
328+ MutexLock lock (* g_app_mutex);
329329 if (g_apps && !g_apps->empty ()) {
330330 return g_apps->begin ()->second ->app ;
331331 }
@@ -334,7 +334,7 @@ App* GetAnyApp() {
334334
335335void RemoveApp (App* app) {
336336 assert (app);
337- MutexLock lock (g_app_mutex);
337+ MutexLock lock (* g_app_mutex);
338338 if (g_apps) {
339339 auto it = g_apps->find (std::string (app->name ()));
340340 bool last_app = false ;
@@ -369,7 +369,7 @@ void RemoveApp(App* app) {
369369void DestroyAllApps () {
370370 std::vector<App*> apps_to_delete;
371371 App* const default_app = GetDefaultApp ();
372- MutexLock lock (g_app_mutex);
372+ MutexLock lock (* g_app_mutex);
373373 if (g_apps) {
374374 for (auto it = g_apps->begin (); it != g_apps->end (); ++it) {
375375 if (it->second ->app != default_app)
@@ -391,15 +391,15 @@ bool IsDefaultAppName(const char* name) {
391391}
392392
393393void RegisterLibrary (const char * library, const char * version) {
394- MutexLock lock (g_app_mutex);
394+ MutexLock lock (* g_app_mutex);
395395 LibraryRegistry* registry = LibraryRegistry::Initialize ();
396396 if (registry->RegisterLibrary (library, version)) {
397397 registry->UpdateUserAgent ();
398398 }
399399}
400400
401401void RegisterLibrariesFromUserAgent (const char * user_agent) {
402- MutexLock lock (g_app_mutex);
402+ MutexLock lock (* g_app_mutex);
403403 LibraryRegistry* registry = LibraryRegistry::Initialize ();
404404 // Copy the string into a vector so that we can safely mutate the string.
405405 std::vector<char > user_agent_vector (user_agent,
@@ -427,12 +427,12 @@ void RegisterLibrariesFromUserAgent(const char* user_agent) {
427427}
428428
429429const char * GetUserAgent () {
430- MutexLock lock (g_app_mutex);
430+ MutexLock lock (* g_app_mutex);
431431 return LibraryRegistry::Initialize ()->GetUserAgent ();
432432}
433433
434434std::string GetLibraryVersion (const char * library) {
435- MutexLock lock (g_app_mutex);
435+ MutexLock lock (* g_app_mutex);
436436 return LibraryRegistry::Initialize ()->GetLibraryVersion (library);
437437}
438438
@@ -442,7 +442,7 @@ void GetOuterMostSdkAndVersion(std::string* sdk, std::string* version) {
442442 sdk->clear ();
443443 version->clear ();
444444
445- MutexLock lock (g_app_mutex);
445+ MutexLock lock (* g_app_mutex);
446446 // Set of library versions to query in order of outer wrapper to inner.
447447 // We're only retrieving the outer-most SDK version here as we can only send
448448 // one component as part of the user agent string to the storage backend.
@@ -466,7 +466,7 @@ void GetOuterMostSdkAndVersion(std::string* sdk, std::string* version) {
466466// Find a logger associated with an app by app name.
467467Logger* FindAppLoggerByName (const char * name) {
468468 assert (name);
469- MutexLock lock (g_app_mutex);
469+ MutexLock lock (* g_app_mutex);
470470 if (g_apps) {
471471 auto it = g_apps->find (std::string (name));
472472 if (it == g_apps->end ()) return nullptr ;
0 commit comments