Marino Faggiana 6 years ago
parent
commit
5ddf9821ee

+ 8 - 2
PickerFileProvider/FileProviderExtension+Network.swift

@@ -217,7 +217,9 @@ extension FileProviderExtension {
             // itemChanged
             if (selectorPost == selectorPostItemChanged) {
                 
-                uploadFileItemChanged(for: metadata, url: url)
+                DispatchQueue.main.asyncAfter(deadline: .now() + Double(k_timerProcessAutoUploadExtension)) {
+                    self.uploadFileItemChanged(for: itemIdentifier, url: url)
+                }
             }
             
             let item = FileProviderItem(metadata: metadata, parentItemIdentifier: parentItemIdentifier, providerData: providerData)
@@ -251,7 +253,11 @@ extension FileProviderExtension {
         }
     }
     
-    func uploadFileItemChanged(for metadata: tableMetadata, url: URL) {
+    func uploadFileItemChanged(for itemIdentifier: NSFileProviderItemIdentifier, url: URL) {
+        
+        guard let metadata = providerData.getTableMetadataFromItemIdentifier(itemIdentifier) else {
+            return
+        }
         
         metadata.assetLocalIdentifier = ""
         metadata.session = k_upload_session_extension

+ 2 - 6
PickerFileProvider/FileProviderExtension.swift

@@ -466,13 +466,9 @@ class FileProviderExtension: NSFileProviderExtension, CCNetworkingDelegate {
 
             assert(pathComponents.count > 2)
 
-            let identifier = NSFileProviderItemIdentifier(pathComponents[pathComponents.count - 2])
-            
-            guard let metadata = providerData.getTableMetadataFromItemIdentifier(identifier) else {
-                return
-            }
+            let itemIdentifier = NSFileProviderItemIdentifier(pathComponents[pathComponents.count - 2])
             
-            uploadFileItemChanged(for: metadata, url: url)
+            uploadFileItemChanged(for: itemIdentifier, url: url)
             
         } else {