Skip to content

Commit f851af5

Browse files
authored
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.
1 parent 08704a6 commit f851af5

File tree

1 file changed

+6
-6
lines changed

1 file changed

+6
-6
lines changed

Firebase/Core/FIRLogger.m

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -164,13 +164,13 @@ void FIRSetLoggerLevel(FIRLoggerLevel loggerLevel) {
164164
return;
165165
}
166166
FIRLoggerInitializeASL();
167-
dispatch_async(sFIRClientQueue, ^{
168-
// We should not raise the logger level if we are running from App Store.
169-
if (loggerLevel >= FIRLoggerLevelNotice && [FIRAppEnvironmentUtil isFromAppStore]) {
170-
return;
171-
}
167+
// We should not raise the logger level if we are running from App Store.
168+
if (loggerLevel >= FIRLoggerLevelNotice && [FIRAppEnvironmentUtil isFromAppStore]) {
169+
return;
170+
}
172171

173-
sFIRLoggerMaximumLevel = loggerLevel;
172+
sFIRLoggerMaximumLevel = loggerLevel;
173+
dispatch_async(sFIRClientQueue, ^{
174174
asl_set_filter(sFIRLoggerClient, ASL_FILTER_MASK_UPTO(loggerLevel));
175175
});
176176
}

0 commit comments

Comments
 (0)