From ccce82f4497bc19cd600080d4601ad5b0a2904fb Mon Sep 17 00:00:00 2001 From: Pavlos Vinieratos Date: Tue, 5 Jun 2018 15:12:16 +0200 Subject: [PATCH] replace deprecated `sendSynchronousRequest:returningResponse:error:` with `dataTaskWithURL:completionHandler:` --- React/Base/RCTBundleURLProvider.m | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/React/Base/RCTBundleURLProvider.m b/React/Base/RCTBundleURLProvider.m index 53af54d93efff0..f830aabe556020 100644 --- a/React/Base/RCTBundleURLProvider.m +++ b/React/Base/RCTBundleURLProvider.m @@ -69,9 +69,16 @@ - (void)resetToDefaults - (BOOL)isPackagerRunning:(NSString *)host { NSURL *url = [serverRootWithHost(host) URLByAppendingPathComponent:@"status"]; - NSURLRequest *request = [NSURLRequest requestWithURL:url]; - NSURLResponse *response; - NSData *data = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:NULL]; + __block NSData *data; + + dispatch_semaphore_t semaphore = dispatch_semaphore_create(0); + [[[NSURLSession sharedSession] dataTaskWithURL:url + completionHandler:^(NSData *d, NSURLResponse *response, NSError *error) { + data = d; + dispatch_semaphore_signal(semaphore); + }] resume]; + dispatch_semaphore_wait(semaphore, DISPATCH_TIME_FOREVER); + NSString *status = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]; return [status isEqualToString:@"packager-status:running"]; }