瀏覽代碼

Save delete key before saving it

Evgenii Neumerzhitckii 10 年之前
父節點
當前提交
4967910ace
共有 2 個文件被更改,包括 4 次插入4 次删除
  1. 2 2
      Distrib/KeychainSwiftDistrib.swift
  2. 2 2
      KeychainSwift/KeychainSwift.swift

+ 2 - 2
Distrib/KeychainSwiftDistrib.swift

@@ -77,6 +77,8 @@ public class KeychainSwift {
   */
   public func set(value: NSData, forKey key: String,
     withAccess access: KeychainSwiftAccessOptions? = nil) -> Bool {
+    
+    delete(key) // Delete any existing key before saving it
 
     let accessible = access?.value ?? KeychainSwiftAccessOptions.defaultOption.value
       
@@ -91,8 +93,6 @@ public class KeychainSwift {
       
     query = addAccessGroupWhenPresent(query)
     lastQueryParameters = query
-          
-    SecItemDelete(query as CFDictionaryRef)
     
     let status: OSStatus = SecItemAdd(query as CFDictionaryRef, nil)
     

+ 2 - 2
KeychainSwift/KeychainSwift.swift

@@ -62,6 +62,8 @@ public class KeychainSwift {
   */
   public func set(value: NSData, forKey key: String,
     withAccess access: KeychainSwiftAccessOptions? = nil) -> Bool {
+    
+    delete(key) // Delete any existing key before saving it
 
     let accessible = access?.value ?? KeychainSwiftAccessOptions.defaultOption.value
       
@@ -76,8 +78,6 @@ public class KeychainSwift {
       
     query = addAccessGroupWhenPresent(query)
     lastQueryParameters = query
-          
-    SecItemDelete(query as CFDictionaryRef)
     
     let status: OSStatus = SecItemAdd(query as CFDictionaryRef, nil)