Merge pull request #635 from pushkarnk/sr2630
diff --git a/Foundation/NSURLSession/NSURLSessionTask.swift b/Foundation/NSURLSession/NSURLSessionTask.swift
index 3830b60..c5bd0e4 100644
--- a/Foundation/NSURLSession/NSURLSessionTask.swift
+++ b/Foundation/NSURLSession/NSURLSessionTask.swift
@@ -839,10 +839,13 @@
guard case .inMemory(let bodyData) = bodyDataDrain else {
fatalError("Task has data completion handler, but data drain is not in-memory.")
}
+
guard let s = session as? URLSession else { fatalError() }
-
- var data = Data(capacity: bodyData!.length)
- data.append(Data(bytes: bodyData!.bytes, count: bodyData!.length))
+
+ var data = Data()
+ if let body = bodyData {
+ data = Data(bytes: body.bytes, count: body.length)
+ }
s.delegateQueue.addOperation {
completion(data, response, nil)