Marino Faggiana 7 years ago
parent
commit
aeee80a73d

+ 6 - 6
Picker/DocumentPickerViewController.swift

@@ -462,14 +462,14 @@ class DocumentPickerViewController: UIDocumentPickerExtensionViewController, CCN
             
         case selectorLoadPlist :
             
-            var metadata = CCUtility.insertInformationPlist(self.metadata, directoryUser: directoryUser)!
+            var metadata : tableMetadata? = CCUtility.insertInformationPlist(self.metadata, directoryUser: directoryUser)!
+            metadata = NCManageDatabase.sharedInstance.updateMetadata(metadata!, activeUrl: activeUrl!)
             
-            metadata = NCManageDatabase.sharedInstance.updateMetadata(metadata, activeUrl: activeUrl!)
-            
-            if metadata.type == k_metadataType_template {
-                NCManageDatabase.sharedInstance.setLocalFile(fileID: metadata.fileID, date: metadata.date, exifDate: nil, exifLatitude: nil, exifLongitude: nil, fileName: nil, fileNamePrint: metadata.fileNamePrint)
+            if metadata != nil {
+                if metadata!.type == k_metadataType_template {
+                    NCManageDatabase.sharedInstance.setLocalFile(fileID: metadata!.fileID, date: metadata!.date, exifDate: nil, exifLatitude: nil, exifLongitude: nil, fileName: nil, fileNamePrint: metadata!.fileNamePrint)
+                }
             }
-            
             tableView.reloadData()
             
         default :

+ 6 - 1
iOSClient/Database/NCManageDatabase.swift

@@ -580,6 +580,7 @@ class NCManageDatabase: NSObject {
             try realm.commitWrite()
         } catch let error {
             print("[LOG] Could not write to database: ", error)
+            return false
         }
         
         return true
@@ -664,6 +665,7 @@ class NCManageDatabase: NSObject {
             try realm.commitWrite()
         } catch let error {
             print("[LOG] Could not write to database: ", error)
+            return nil
         }
         
         return metadataNet
@@ -1190,6 +1192,7 @@ class NCManageDatabase: NSObject {
             }
         } catch let error {
             print("Could not write to database: ", error)
+            return false
         }
         
         return update
@@ -1476,6 +1479,7 @@ class NCManageDatabase: NSObject {
             try realm.commitWrite()
         } catch let error {
             print("[LOG] Could not write to database: ", error)
+            return nil
         }
         
         self.setDateReadDirectory(directoryID: metadataCopy.directoryID)
@@ -1579,7 +1583,7 @@ class NCManageDatabase: NSObject {
         self.setDateReadDirectory(directoryID: directoryIDTo)
     }
     
-    func updateMetadata(_ metadata: tableMetadata, activeUrl: String) -> tableMetadata {
+    func updateMetadata(_ metadata: tableMetadata, activeUrl: String) -> tableMetadata? {
         
         let autoUploadFileName = self.getAccountAutoUploadFileName()
         let autoUploadDirectory = self.getAccountAutoUploadDirectory(activeUrl)
@@ -1596,6 +1600,7 @@ class NCManageDatabase: NSObject {
             }
         } catch let error {
             print("Could not write to database: ", error)
+            return nil
         }
         
         self.setDateReadDirectory(directoryID: directoryID)