Forráskód Böngészése

Fix occasional NSURLSessionTask creation crash (#6265)

* Fix crash when creating session from nil task

* Update changelog
Morgan Chen 5 éve
szülő
commit
602993983e

+ 1 - 0
Crashlytics/CHANGELOG.md

@@ -1,5 +1,6 @@
 # v4.5.0
 - [fixed] Fixed a compiler warning and removed unused networking code (#6210).
+- [fixed] Fixed a crash that occurred rarely when trying to restart a URL session task without a valid request (#5984).
 - [added] Introduced watchOS support (#6262).
 
 # v4.3.1

+ 6 - 0
Crashlytics/Crashlytics/Controllers/FIRCLSNetworkClient.m

@@ -296,6 +296,12 @@ NSString *const FIRCLSNetworkClientBackgroundIdentifierSuffix = @".crash.backgro
 - (void)restartTask:(NSURLSessionTask *)task {
   NSURLRequest *request = [task originalRequest];
 
+  if (request == nil) {
+    FIRCLSWarningLog(@"Unable to restart task: Could not retrieve original request from task %@",
+                     task);
+    return;
+  }
+
   [self runAfterRetryValueFromResponse:[task response]
                                  block:^{
                                    NSString *path = [self