]> git.ipfire.org Git - thirdparty/wireguard-apple.git/commitdiff
Tunnel view model: No need to save if we already have a validated configuration object
authorRoopesh Chander <roop@roopc.net>
Mon, 5 Nov 2018 17:25:09 +0000 (22:55 +0530)
committerRoopesh Chander <roop@roopc.net>
Mon, 5 Nov 2018 17:25:09 +0000 (22:55 +0530)
Signed-off-by: Roopesh Chander <roop@roopc.net>
WireGuard/WireGuard/UI/TunnelViewModel.swift

index 6fa13b4fa2a31f2bfbd0df06d2abec9dd113a5a7..da292c44452829bf827c0f0e8f990026aae9cd50 100644 (file)
@@ -96,6 +96,10 @@ class TunnelViewModel {
         }
 
         func save() -> SaveResult<InterfaceConfiguration> {
+            if let validatedConfiguration = validatedConfiguration {
+                // It's already validated and saved
+                return .saved(validatedConfiguration)
+            }
             fieldsWithError.removeAll()
             guard let name = scratchpad[.name]?.trimmingCharacters(in: .whitespacesAndNewlines), (!name.isEmpty) else {
                 fieldsWithError.insert(.name)
@@ -234,6 +238,10 @@ class TunnelViewModel {
         }
 
         func save() -> SaveResult<PeerConfiguration> {
+            if let validatedConfiguration = validatedConfiguration {
+                // It's already validated and saved
+                return .saved(validatedConfiguration)
+            }
             fieldsWithError.removeAll()
             guard let publicKeyString = scratchpad[.publicKey] else {
                 fieldsWithError.insert(.publicKey)