]> dgit.raspbian.org Git - nextcloud-desktop.git/commitdiff
Fix return of updated and deleted metadatas in database manager
authorClaudio Cambra <claudio.cambra@nextcloud.com>
Fri, 10 Mar 2023 17:36:01 +0000 (18:36 +0100)
committerClaudio Cambra <claudio.cambra@nextcloud.com>
Fri, 12 May 2023 05:21:25 +0000 (13:21 +0800)
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
shell_integration/MacOSX/NextcloudIntegration/FileProviderExt/NextcloudFilesDatabaseManager.swift

index bc1ab1e80246b2af8010c8a45d2c067cf5a3d5cf..a44eb873b73862b2a6f50adbdebf57da56839444 100644 (file)
@@ -194,7 +194,7 @@ class NextcloudFilesDatabaseManager : NSObject {
         return (returningNewMetadatas, returningUpdatedMetadatas)
     }
 
-    func updateItemMetadatas(account: String, serverUrl: String, updatedMetadatas: [NextcloudItemMetadataTable]) -> (newMetadatas: [NextcloudItemMetadataTable]?, updatedMetadatas: [NextcloudItemMetadataTable]?, deletedMetadatas: [NextcloudItemMetadataTable]?) {
+    func updateItemMetadatas(account: String, serverUrl: String, updatedMetadatas: [NextcloudItemMetadataTable], completionHandler: @escaping(_ newMetadatas: [NextcloudItemMetadataTable]?, _ updatedMetadatas: [NextcloudItemMetadataTable]?, _ deletedMetadatas: [NextcloudItemMetadataTable]?) -> Void) {
         let database = ncDatabase()
 
         do {
@@ -209,13 +209,12 @@ class NextcloudFilesDatabaseManager : NSObject {
                                                                        existingMetadatas: existingMetadatas,
                                                                        updatedMetadatas: updatedMetadatas)
 
-                return (metadatasFromUpdate.newMetadatas, metadatasFromUpdate.updatedMetadatas, deletedMetadatas)
+                completionHandler(metadatasFromUpdate.newMetadatas, metadatasFromUpdate.updatedMetadatas, deletedMetadatas)
             }
         } catch let error {
             NSLog("Could not update any metadatas, received error: %@", error.localizedDescription)
+            completionHandler(nil, nil, nil)
         }
-
-        return (nil, nil, nil)
     }
 
     func setStatusForItemMetadata(_ metadata: NextcloudItemMetadataTable, status: NextcloudItemMetadataTable.Status) -> NextcloudItemMetadataTable? {