From e4630e950dd48b49b778393505d2ff83c2c02353 Mon Sep 17 00:00:00 2001 From: Yishi Lin Date: Tue, 1 Oct 2019 01:19:41 +0800 Subject: [PATCH] Init PGPAgent while getting keyID --- pass/Controllers/SettingsTableViewController.swift | 9 ++++----- passKit/Crypto/PGPAgent.swift | 3 ++- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/pass/Controllers/SettingsTableViewController.swift b/pass/Controllers/SettingsTableViewController.swift index 9a5f0b7..e371d19 100644 --- a/pass/Controllers/SettingsTableViewController.swift +++ b/pass/Controllers/SettingsTableViewController.swift @@ -40,7 +40,7 @@ class SettingsTableViewController: UITableViewController, UITabBarControllerDele try KeyFileManager.PrivatePgp.importKey(from: SharedDefaults[.pgpPrivateKeyURL]!) try PGPAgent.shared.initKeys() DispatchQueue.main.async { - self.pgpKeyTableViewCell.detailTextLabel?.text = PGPAgent.shared.keyId + self.setPGPKeyTableViewCellDetailText() SVProgressHUD.showSuccess(withStatus: "Success".localize()) SVProgressHUD.dismiss(withDelay: 1) Utils.alert(title: "RememberToRemoveKey".localize(), message: "RememberToRemoveKeyFromServer.".localize(), controller: self, completion: nil) @@ -65,7 +65,7 @@ class SettingsTableViewController: UITableViewController, UITabBarControllerDele try KeyFileManager.PrivatePgp.importKey(from: controller.armorPrivateKeyTextView.text ?? "") try PGPAgent.shared.initKeys() DispatchQueue.main.async { - self.pgpKeyTableViewCell.detailTextLabel?.text = PGPAgent.shared.keyId + self.setPGPKeyTableViewCellDetailText() SVProgressHUD.showSuccess(withStatus: "Success".localize()) SVProgressHUD.dismiss(withDelay: 1) } @@ -91,7 +91,7 @@ class SettingsTableViewController: UITableViewController, UITabBarControllerDele try KeyFileManager.PrivatePgp.importKeyFromFileSharing() try PGPAgent.shared.initKeys() DispatchQueue.main.async { - self.pgpKeyTableViewCell.detailTextLabel?.text = PGPAgent.shared.keyId + self.setPGPKeyTableViewCellDetailText() SVProgressHUD.showSuccess(withStatus: "Imported".localize()) SVProgressHUD.dismiss(withDelay: 1) } @@ -135,8 +135,7 @@ class SettingsTableViewController: UITableViewController, UITabBarControllerDele } private func setPGPKeyTableViewCellDetailText() { - try? PGPAgent.shared.initKeys() - pgpKeyTableViewCell.detailTextLabel?.text = PGPAgent.shared.keyId ?? "NotSet".localize() + pgpKeyTableViewCell.detailTextLabel?.text = try? PGPAgent.shared.getKeyId() ?? "NotSet".localize() } private func setPasswordRepositoryTableViewCellDetailText() { diff --git a/passKit/Crypto/PGPAgent.swift b/passKit/Crypto/PGPAgent.swift index acb1b9d..2696a39 100644 --- a/passKit/Crypto/PGPAgent.swift +++ b/passKit/Crypto/PGPAgent.swift @@ -35,7 +35,8 @@ public class PGPAgent { pgpInterface = nil } - public var keyId: String? { + public func getKeyId() throws -> String? { + try checkAndInit() return pgpInterface?.keyId }