Browse Source

e2e : fix first record ?

Marino Faggiana 7 years ago
parent
commit
bd30cd92dd

+ 4 - 4
iOSClient/Security/NCEndToEndMetadata.swift

@@ -142,10 +142,7 @@ class NCEndToEndMetadata : NSObject  {
         
         
         let jsonDecoder = JSONDecoder.init()
         let jsonDecoder = JSONDecoder.init()
         let data = e2eMetaDataJSON.data(using: .utf8)
         let data = e2eMetaDataJSON.data(using: .utf8)
-        
-        // Remove all records e2eMetadata
-        NCManageDatabase.sharedInstance.deleteE2eEncryption(predicate: NSPredicate(format: "account = %@ AND serverUrl = %@", account, serverUrl))
-        
+                
         do {
         do {
             
             
             // *** metadataKey ***
             // *** metadataKey ***
@@ -210,6 +207,9 @@ class NCEndToEndMetadata : NSObject  {
                         object.serverUrl = serverUrl
                         object.serverUrl = serverUrl
                         object.version = encryptedFileAttributes.version
                         object.version = encryptedFileAttributes.version
                     
                     
+                        // If exists remove records
+                        NCManageDatabase.sharedInstance.deleteE2eEncryption(predicate: NSPredicate(format: "account = %@ AND fileNamePath = %@", object.account, object.fileNamePath))
+                        
                         // Write file parameter for decrypted on DB
                         // Write file parameter for decrypted on DB
                         if NCManageDatabase.sharedInstance.addE2eEncryption(object) == false {
                         if NCManageDatabase.sharedInstance.addE2eEncryption(object) == false {
                             return false
                             return false

+ 1 - 2
iOSClient/Security/NCEntoToEndInterface.swift

@@ -390,8 +390,7 @@ class NCEntoToEndInterface : NSObject, OCNetworkingDelegate  {
             
             
         } else if (errorCode == 404) {
         } else if (errorCode == 404) {
             
             
-            // Remove all record e2eEncryption
-            NCManageDatabase.sharedInstance.deleteE2eEncryption(predicate: NSPredicate(format: "account = %@ AND serverUrl = %@", appDelegate.activeAccount, metadataNet.serverUrl+"/"+metadataNet.fileName))
+            print("No metadata found: "+metadataNet.serverUrl+"/"+metadataNet.fileName)
             
             
         } else if (errorCode != 404) {
         } else if (errorCode != 404) {