Browse Source

Fixed bug where data task delegate was never being called.

Noon, Christian 11 years ago
parent
commit
dfab3f3f62
1 changed files with 5 additions and 5 deletions
  1. 5 5
      Source/Alamofire.swift

+ 5 - 5
Source/Alamofire.swift

@@ -497,13 +497,13 @@ public class Manager {
         }
         }
 
 
         func URLSession(session: NSURLSession!, dataTask: NSURLSessionDataTask!, willCacheResponse proposedResponse: NSCachedURLResponse!, completionHandler: ((NSCachedURLResponse!) -> Void)!) {
         func URLSession(session: NSURLSession!, dataTask: NSURLSessionDataTask!, willCacheResponse proposedResponse: NSCachedURLResponse!, completionHandler: ((NSCachedURLResponse!) -> Void)!) {
-            var cachedResponse = proposedResponse
-
             if dataTaskWillCacheResponse != nil {
             if dataTaskWillCacheResponse != nil {
-                cachedResponse = dataTaskWillCacheResponse!(session, dataTask, proposedResponse)
+                completionHandler(dataTaskWillCacheResponse!(session, dataTask, proposedResponse))
+            } else if let delegate = self[dataTask] as? Request.DataTaskDelegate {
+                delegate.URLSession(session, dataTask: dataTask, willCacheResponse: proposedResponse, completionHandler: completionHandler)
+            } else {
+                completionHandler(proposedResponse)
             }
             }
-
-            completionHandler(cachedResponse)
         }
         }
 
 
         // MARK: NSURLSessionDownloadDelegate
         // MARK: NSURLSessionDownloadDelegate