aboutsummaryrefslogtreecommitdiffhomepage
path: root/Firebase/Core
diff options
context:
space:
mode:
authorGravatar Gil <mcg@google.com>2017-12-22 15:09:20 -0800
committerGravatar GitHub <noreply@github.com>2017-12-22 15:09:20 -0800
commitf851af5323b8ded1d609ced61ad319645337d6d5 (patch)
treee59dec80ab08fdfe9190c97fb31da648535ffcf4 /Firebase/Core
parent08704a617c9b8ebb99d2eb0720c0952af70703df (diff)
Run FIRSetLoggerLevel and FIRIsLoggableLevel on the same thread (#592)
This fixes a race condition where a caller calls FIRSetLoggerLevel and then checks FIRIsLoggableLevel immediately after.
Diffstat (limited to 'Firebase/Core')
-rw-r--r--Firebase/Core/FIRLogger.m12
1 files changed, 6 insertions, 6 deletions
diff --git a/Firebase/Core/FIRLogger.m b/Firebase/Core/FIRLogger.m
index ba22bde..2b2a0ae 100644
--- a/Firebase/Core/FIRLogger.m
+++ b/Firebase/Core/FIRLogger.m
@@ -164,13 +164,13 @@ void FIRSetLoggerLevel(FIRLoggerLevel loggerLevel) {
return;
}
FIRLoggerInitializeASL();
- dispatch_async(sFIRClientQueue, ^{
- // We should not raise the logger level if we are running from App Store.
- if (loggerLevel >= FIRLoggerLevelNotice && [FIRAppEnvironmentUtil isFromAppStore]) {
- return;
- }
+ // We should not raise the logger level if we are running from App Store.
+ if (loggerLevel >= FIRLoggerLevelNotice && [FIRAppEnvironmentUtil isFromAppStore]) {
+ return;
+ }
- sFIRLoggerMaximumLevel = loggerLevel;
+ sFIRLoggerMaximumLevel = loggerLevel;
+ dispatch_async(sFIRClientQueue, ^{
asl_set_filter(sFIRLoggerClient, ASL_FILTER_MASK_UPTO(loggerLevel));
});
}