Browse Source

fix importDocument (directory import)

Marino Faggiana 6 năm trước cách đây
mục cha
commit
a2baf68466
1 tập tin đã thay đổi với 13 bổ sung7 xóa
  1. 13 7
      PickerFileProvider/FileProvider.swift

+ 13 - 7
PickerFileProvider/FileProvider.swift

@@ -909,6 +909,19 @@ class FileProvider: NSFileProviderExtension, CCNetworkingDelegate {
         let fileCoordinator = NSFileCoordinator()
         var error: NSError?
         
+        do {
+            let attributes = try self.fileManager.attributesOfItem(atPath: fileURL.path)
+            size = attributes[FileAttributeKey.size] as! Double
+            let typeFile = attributes[FileAttributeKey.type] as! FileAttributeType
+            if typeFile == FileAttributeType.typeDirectory {
+                completionHandler(nil, NSFileProviderError(.noSuchItem))
+                return
+            }
+        } catch {
+            completionHandler(nil, NSFileProviderError(.noSuchItem))
+            return
+        }
+        
         DispatchQueue.main.async {
             
             guard let tableDirectory = getTableDirectoryFromParentItemIdentifier(parentItemIdentifier) else {
@@ -940,13 +953,6 @@ class FileProvider: NSFileProviderExtension, CCNetworkingDelegate {
             
             // ---------------------------------------------------------------------------------
             
-            do {
-                let attributes = try self.fileManager.attributesOfItem(atPath: fileNamePathDirectory + "/" + fileName)
-                size = attributes[FileAttributeKey.size] as! Double
-            } catch let error {
-                print("error: \(error)")
-            }
-            
             // Metadata TEMP
             metadata.account = account
             metadata.date = NSDate()