@@ -682,7 +682,7 @@ extension _HTTPURLProtocol {
682
682
return
683
683
}
684
684
685
- if case . toFile( let url , let fileHandle? ) = bodyDataDrain {
685
+ if case . toFile( _ , let fileHandle? ) = bodyDataDrain {
686
686
fileHandle. closeFile ( )
687
687
}
688
688
self . client? . urlProtocolDidFinishLoading ( self )
@@ -709,7 +709,7 @@ extension _HTTPURLProtocol {
709
709
fatalError ( " Trying to redirect, but the transfer is not complete. " )
710
710
}
711
711
712
- let session = task? . session as! URLSession
712
+ guard let session = task? . session as? URLSession else { fatalError ( ) }
713
713
switch session. behaviour ( for: task!) {
714
714
case . taskDelegate( let delegate) :
715
715
// At this point we need to change the internal state to note
@@ -724,9 +724,8 @@ extension _HTTPURLProtocol {
724
724
725
725
self . internalState = . waitingForRedirectCompletionHandler( response: response, bodyDataDrain: bodyDataDrain)
726
726
// We need this ugly cast in order to be able to support `URLSessionTask.init()`
727
- guard let s = session as? URLSession else { fatalError ( ) }
728
- s. delegateQueue. addOperation {
729
- delegate. urlSession ( s, task: self . task!, willPerformHTTPRedirection: response as! HTTPURLResponse , newRequest: request) { [ weak self] ( request: URLRequest ? ) in
727
+ session. delegateQueue. addOperation {
728
+ delegate. urlSession ( session, task: self . task!, willPerformHTTPRedirection: response as! HTTPURLResponse , newRequest: request) { [ weak self] ( request: URLRequest ? ) in
730
729
guard let task = self else { return }
731
730
self ? . task? . workQueue. async {
732
731
task. didCompleteRedirectCallback ( request)
@@ -763,7 +762,7 @@ internal extension _HTTPURLProtocol {
763
762
guard let dt = task as? URLSessionDataTask else { return }
764
763
guard case . transferInProgress( let ts) = self . internalState else { fatalError ( " Transfer not in progress. " ) }
765
764
guard let response = ts. response else { fatalError ( " Header complete, but not URL response. " ) }
766
- let session = task? . session as! URLSession
765
+ guard let session = task? . session as? URLSession else { fatalError ( ) }
767
766
switch session. behaviour ( for: self . task!) {
768
767
case . noDelegate:
769
768
break
@@ -774,13 +773,12 @@ internal extension _HTTPURLProtocol {
774
773
//
775
774
// For now, we'll notify the delegate, but won't pause the transfer,
776
775
// and we'll disregard the completion handler:
777
- guard let s = session as? URLSession else { fatalError ( ) }
778
776
switch response. statusCode {
779
777
case 301 , 302 , 303 , 307 :
780
778
break
781
779
default :
782
- s . delegateQueue. addOperation {
783
- delegate. urlSession ( s , dataTask: dt, didReceive: response, completionHandler: { _ in
780
+ session . delegateQueue. addOperation {
781
+ delegate. urlSession ( session , dataTask: dt, didReceive: response, completionHandler: { _ in
784
782
URLSession . printDebug ( " warning: Ignoring disposition from completion handler. " )
785
783
} )
786
784
}
0 commit comments