avoid crashing optional unwrapping introduced by Swift5 migration

pull/2/head
Michael Kirk 6 years ago
parent cfebb53719
commit 89ae37cea5

@ -484,17 +484,13 @@ import PromiseKit
} }
public class func downloadDataFromCloud(recordName: String) -> Promise<Data> { public class func downloadDataFromCloud(recordName: String) -> Promise<Data> {
return downloadFromCloud(recordName: recordName, return downloadFromCloud(recordName: recordName,
remainingRetries: maxRetries) remainingRetries: maxRetries)
.then { (asset) -> Promise<Data> in .map { (asset) -> Data in
do { guard let fileURL = asset.fileURL else {
let data = try Data(contentsOf: asset.fileURL!) throw invalidServiceResponseError()
return Promise.value(data)
} catch {
Logger.error("couldn't load asset file: \(error).")
return Promise(error: invalidServiceResponseError())
} }
return try Data(contentsOf: fileURL)
} }
} }
@ -510,14 +506,11 @@ import PromiseKit
return downloadFromCloud(recordName: recordName, return downloadFromCloud(recordName: recordName,
remainingRetries: maxRetries) remainingRetries: maxRetries)
.then { (asset) -> Promise<Void> in .done { asset in
do { guard let fileURL = asset.fileURL else {
try FileManager.default.copyItem(at: asset.fileURL!, to: toFileUrl) throw invalidServiceResponseError()
return Promise.value(())
} catch {
Logger.error("couldn't copy asset file: \(error).")
return Promise(error: invalidServiceResponseError())
} }
try FileManager.default.copyItem(at: fileURL, to: toFileUrl)
} }
} }

Loading…
Cancel
Save