summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--ios/MullvadVPN/Account.swift58
-rw-r--r--ios/MullvadVPN/AppStorePaymentManager/AppStorePaymentManager.swift34
-rw-r--r--ios/MullvadVPN/ProblemReportViewController.swift4
-rw-r--r--ios/MullvadVPN/WireguardKeysViewController.swift24
4 files changed, 54 insertions, 66 deletions
diff --git a/ios/MullvadVPN/Account.swift b/ios/MullvadVPN/Account.swift
index ede13beb77..3d6ac59d29 100644
--- a/ios/MullvadVPN/Account.swift
+++ b/ios/MullvadVPN/Account.swift
@@ -101,28 +101,26 @@ class Account {
func loginWithNewAccount(completionHandler: @escaping (Result<REST.AccountResponse, Account.Error>) -> Void) {
let operation = AsyncBlockOperation { operation in
_ = REST.Client.shared.createAccount(retryStrategy: .noRetry) { result in
- DispatchQueue.main.async {
- switch result {
- case .success(let response):
- self.setupTunnel(accountToken: response.token, expiry: response.expires) { error in
- if let error = error {
- completionHandler(.failure(error))
- } else {
- self.observerList.forEach { observer in
- observer.account(self, didLoginWithToken: response.token, expiry: response.expires)
- }
-
- completionHandler(.success(response))
+ switch result {
+ case .success(let response):
+ self.setupTunnel(accountToken: response.token, expiry: response.expires) { error in
+ if let error = error {
+ completionHandler(.failure(error))
+ } else {
+ self.observerList.forEach { observer in
+ observer.account(self, didLoginWithToken: response.token, expiry: response.expires)
}
- operation.finish()
+ completionHandler(.success(response))
}
- case .failure(let error):
- completionHandler(.failure(.createAccount(error)))
-
operation.finish()
}
+
+ case .failure(let error):
+ completionHandler(.failure(.createAccount(error)))
+
+ operation.finish()
}
}
}
@@ -135,25 +133,23 @@ class Account {
func login(accountToken: String, completionHandler: @escaping (Result<REST.AccountResponse, Account.Error>) -> Void) {
let operation = AsyncBlockOperation { operation in
_ = REST.Client.shared.getAccountExpiry(token: accountToken, retryStrategy: .default) { result in
- DispatchQueue.main.async {
- switch result {
- case .success(let response):
- self.setupTunnel(accountToken: response.token, expiry: response.expires) { error in
- if let error = error {
- completionHandler(.failure(error))
- } else {
- self.observerList.forEach { observer in
- observer.account(self, didLoginWithToken: response.token, expiry: response.expires)
- }
- completionHandler(.success(response))
+ switch result {
+ case .success(let response):
+ self.setupTunnel(accountToken: response.token, expiry: response.expires) { error in
+ if let error = error {
+ completionHandler(.failure(error))
+ } else {
+ self.observerList.forEach { observer in
+ observer.account(self, didLoginWithToken: response.token, expiry: response.expires)
}
- operation.finish()
+ completionHandler(.success(response))
}
-
- case .failure(let error):
- completionHandler(.failure(.verifyAccount(error)))
operation.finish()
}
+
+ case .failure(let error):
+ completionHandler(.failure(.verifyAccount(error)))
+ operation.finish()
}
}
}
diff --git a/ios/MullvadVPN/AppStorePaymentManager/AppStorePaymentManager.swift b/ios/MullvadVPN/AppStorePaymentManager/AppStorePaymentManager.swift
index eba1b0ee7a..041105124f 100644
--- a/ios/MullvadVPN/AppStorePaymentManager/AppStorePaymentManager.swift
+++ b/ios/MullvadVPN/AppStorePaymentManager/AppStorePaymentManager.swift
@@ -307,18 +307,16 @@ private class SendAppStoreReceiptOperation: AsyncOperation {
override func main() {
DispatchQueue.main.async {
self.fetchReceiptCancellable = AppStoreReceipt.fetch(forceRefresh: self.forceRefresh, receiptProperties: self.receiptProperties) { completion in
- DispatchQueue.main.async {
- switch completion {
- case .success(let receiptData):
- self.sendReceipt(receiptData)
+ switch completion {
+ case .success(let receiptData):
+ self.sendReceipt(receiptData)
- case .failure(let error):
- self.logger.error(chainedError: error, message: "Failed to fetch the AppStore receipt.")
- self.finish(completion: .failure(.readReceipt(error)))
+ case .failure(let error):
+ self.logger.error(chainedError: error, message: "Failed to fetch the AppStore receipt.")
+ self.finish(completion: .failure(.readReceipt(error)))
- case .cancelled:
- self.finish(completion: .cancelled)
- }
+ case .cancelled:
+ self.finish(completion: .cancelled)
}
}
}
@@ -329,16 +327,14 @@ private class SendAppStoreReceiptOperation: AsyncOperation {
token: self.accountToken,
receiptString: receiptData,
retryStrategy: .noRetry) { result in
- DispatchQueue.main.async {
- switch result {
- case .success(let response):
- self.logger.info("AppStore receipt was processed. Time added: \(response.timeAdded), New expiry: \(response.newExpiry.logFormatDate())")
- self.finish(completion: .success(response))
+ switch result {
+ case .success(let response):
+ self.logger.info("AppStore receipt was processed. Time added: \(response.timeAdded), New expiry: \(response.newExpiry.logFormatDate())")
+ self.finish(completion: .success(response))
- case .failure(let error):
- self.logger.error(chainedError: error, message: "Failed to send the AppStore receipt.")
- self.finish(completion: .failure(.sendReceipt(error)))
- }
+ case .failure(let error):
+ self.logger.error(chainedError: error, message: "Failed to send the AppStore receipt.")
+ self.finish(completion: .failure(.sendReceipt(error)))
}
}
}
diff --git a/ios/MullvadVPN/ProblemReportViewController.swift b/ios/MullvadVPN/ProblemReportViewController.swift
index 71df8bbc8e..e7370e76cf 100644
--- a/ios/MullvadVPN/ProblemReportViewController.swift
+++ b/ios/MullvadVPN/ProblemReportViewController.swift
@@ -598,9 +598,7 @@ class ProblemReportViewController: UIViewController, UITextFieldDelegate, Condit
willSendProblemReport()
_ = REST.Client.shared.sendProblemReport(request, retryStrategy: .default) { result in
- DispatchQueue.main.async {
- self.didSendProblemReport(viewModel: viewModel, result: result)
- }
+ self.didSendProblemReport(viewModel: viewModel, result: result)
}
}
diff --git a/ios/MullvadVPN/WireguardKeysViewController.swift b/ios/MullvadVPN/WireguardKeysViewController.swift
index d2935de816..ac5738eb2a 100644
--- a/ios/MullvadVPN/WireguardKeysViewController.swift
+++ b/ios/MullvadVPN/WireguardKeysViewController.swift
@@ -218,23 +218,21 @@ class WireguardKeysViewController: UIViewController, TunnelObserver {
publicKey: tunnelInfo.tunnelSettings.interface.publicKey,
retryStrategy: .default
) { [weak self] result in
- guard let self = self else { return }
+ guard let self = self else { return }
- DispatchQueue.main.async {
- switch result {
- case .success:
- self.updateViewState(.verifiedKey(true))
+ switch result {
+ case .success:
+ self.updateViewState(.verifiedKey(true))
- case .failure(let error):
- if case .server(.pubKeyNotFound) = error {
- self.updateViewState(.verifiedKey(false))
- } else {
- self.showKeyVerificationFailureAlert(error)
- self.updateViewState(.default)
- }
- }
+ case .failure(let error):
+ if case .server(.pubKeyNotFound) = error {
+ self.updateViewState(.verifiedKey(false))
+ } else {
+ self.showKeyVerificationFailureAlert(error)
+ self.updateViewState(.default)
}
}
+ }
}
private func regeneratePrivateKey() {