From e3e53544e6b248018adb3e8e5b46728e6e02edbe Mon Sep 17 00:00:00 2001 From: Albert Martin Date: Tue, 15 Aug 2017 15:36:46 -0500 Subject: [PATCH] prevent UIApplication methods from being called on background thread --- ios/RNFetchBlobNetwork.m | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/ios/RNFetchBlobNetwork.m b/ios/RNFetchBlobNetwork.m index 7be57fc59..2e643cd09 100644 --- a/ios/RNFetchBlobNetwork.m +++ b/ios/RNFetchBlobNetwork.m @@ -245,8 +245,11 @@ - (void) sendRequest:(__weak NSDictionary * _Nullable )options [task resume]; // network status indicator - if([[options objectForKey:CONFIG_INDICATOR] boolValue] == YES) - [[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:YES]; + if ([[options objectForKey:CONFIG_INDICATOR] boolValue] == YES) { + dispatch_async(dispatch_get_main_queue(), ^{ + [[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:YES]; + }); + } __block UIApplication * app = [UIApplication sharedApplication]; } @@ -483,7 +486,9 @@ - (void) URLSession:(NSURLSession *)session task:(NSURLSessionTask *)task didCom NSString * respStr = [NSNull null]; NSString * rnfbRespType = @""; - [[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:NO]; + dispatch_async(dispatch_get_main_queue(), ^{ + [[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:NO]; + }); if(respInfo == nil) {