diff --git a/FirebaseRemoteConfig/Sources/RCNConfigRealtime.m b/FirebaseRemoteConfig/Sources/RCNConfigRealtime.m index 921bb31dce3..d57c76187d0 100644 --- a/FirebaseRemoteConfig/Sources/RCNConfigRealtime.m +++ b/FirebaseRemoteConfig/Sources/RCNConfigRealtime.m @@ -462,10 +462,12 @@ - (void)fetchLatestConfig:(NSInteger)remainingAttempts targetVersion:(NSInteger) integerValue] >= targetVersion) { // only notify listeners if there is a change if ([update updatedKeys].count > 0) { - for (RCNConfigUpdateCompletion listener in strongSelf - ->_listeners) { - listener(update, nil); - } + dispatch_async(strongSelf->_realtimeLockQueue, ^{ + for (RCNConfigUpdateCompletion listener in strongSelf + ->_listeners) { + listener(update, nil); + } + }); } } else { FIRLogDebug(