Fix root cause of threading issues with metadata updates
authorClaudio Cambra <claudio.cambra@nextcloud.com>
Fri, 10 Mar 2023 21:09:19 +0000 (22:09 +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 a44eb873b73862b2a6f50adbdebf57da56839444..8c759db22abb31972d5c1769c9a9822968c97ce9 100644 (file)
@@ -157,7 +157,7 @@ class NextcloudFilesDatabaseManager : NSObject {
                 if existingMetadata.status == NextcloudItemMetadataTable.Status.normal.rawValue &&
                     !existingMetadata.isInSameRemoteState(updatedMetadata) {
 
-                    returningUpdatedMetadatas.append(updatedMetadata)
+                    returningUpdatedMetadatas.append(NextcloudItemMetadataTable(value: updatedMetadata))
                     databaseToWriteTo.add(updatedMetadata, update: .all)
                     
                     NSLog("""
@@ -178,7 +178,7 @@ class NextcloudFilesDatabaseManager : NSObject {
                 }
 
             } else { // This is a new metadata
-                returningNewMetadatas.append(updatedMetadata)
+                returningNewMetadatas.append(NextcloudItemMetadataTable(value: updatedMetadata))
                 databaseToWriteTo.add(updatedMetadata, update: .all)
 
                 NSLog("""