marinofaggiana 4 жил өмнө
parent
commit
9f52f9cd3f

+ 4 - 1
iOSClient/AutoUpload/NCAutoUpload.m

@@ -444,6 +444,9 @@
                         
                         tableMetadata *metadataMOVForUpload = [[NCManageDatabase sharedInstance] createMetadataWithAccount:appDelegate.account fileName:fileNameMove ocId:ocId serverUrl:serverUrl urlBase:appDelegate.urlBase url:@"" contentType:@"" livePhoto:livePhoto];
                         
+                        metadataForUpload.livePhoto = true;
+                        metadataMOVForUpload.livePhoto = true;
+                        
                         metadataMOVForUpload.session = session;
                         metadataMOVForUpload.sessionSelector = selector;
                         metadataMOVForUpload.size = fileSize;
@@ -451,7 +454,7 @@
                         metadataMOVForUpload.typeFile = k_metadataTypeFile_video;
 
                         [metadataFull addObject:metadataMOVForUpload];
-                        
+                                                
                         // Update database Auto Upload
                         if ([selector isEqualToString:selectorUploadAutoUpload])
                             [[NCManageDatabase sharedInstance] addMetadata:metadataMOVForUpload];

+ 9 - 6
iOSClient/Main/CCMain.m

@@ -1034,12 +1034,6 @@
         metadataForUpload.size = [[NCUtilityFileSystem shared] getFileSizeWithAsset:asset];
         metadataForUpload.status = k_metadataStatusWaitUpload;
                         
-        if ([[NCUtility shared] getMetadataConflictWithAccount:appDelegate.account serverUrl:serverUrl fileName:fileName] != nil) {
-            [metadatasUploadInConflict addObject:metadataForUpload];
-        } else {
-            [metadatasNOConflict addObject:metadataForUpload];
-        }
-        
         // Add Medtadata MOV LIVE PHOTO for upload
         if (livePhoto) {
                 
@@ -1055,6 +1049,9 @@
                     
                     tableMetadata *metadataMOVForUpload = [[NCManageDatabase sharedInstance] createMetadataWithAccount:appDelegate.account fileName:fileNameMove ocId:ocId serverUrl:serverUrl urlBase:appDelegate.urlBase url:@"" contentType:@"" livePhoto:livePhoto];
                     
+                    metadataForUpload.livePhoto = true;
+                    metadataMOVForUpload.livePhoto = true;
+                    
                     metadataMOVForUpload.session = session;
                     metadataMOVForUpload.sessionSelector = selectorUploadFile;
                     metadataMOVForUpload.size = fileSize;
@@ -1070,6 +1067,12 @@
             while (dispatch_semaphore_wait(semaphore, DISPATCH_TIME_FOREVER))
                    [[NSRunLoop currentRunLoop] runMode:NSDefaultRunLoopMode beforeDate:[NSDate dateWithTimeIntervalSinceNow:30]];
         }
+        
+        if ([[NCUtility shared] getMetadataConflictWithAccount:appDelegate.account serverUrl:serverUrl fileName:fileName] != nil) {
+            [metadatasUploadInConflict addObject:metadataForUpload];
+        } else {
+            [metadatasNOConflict addObject:metadataForUpload];
+        }
     }
     
     dispatch_async(dispatch_get_main_queue(), ^{

+ 1 - 1
iOSClient/Networking/NCNetworkingAutoUpload.swift

@@ -73,7 +73,7 @@ class NCNetworkingAutoUpload: NSObject {
                 let limit = maxConcurrentOperationUpload - counterUpload
                 var predicate = NSPredicate()
                 if UIApplication.shared.applicationState == .background {
-                    predicate = NSPredicate(format: "sessionSelector == %@ AND status == %d AND typeFile != %@", sessionSelector, k_metadataStatusWaitUpload, k_metadataTypeFile_video)
+                    predicate = NSPredicate(format: "sessionSelector == %@ AND status == %d AND (typeFile != %@ || livePhoto == true)", sessionSelector, k_metadataStatusWaitUpload, k_metadataTypeFile_video)
                 } else {
                     predicate = NSPredicate(format: "sessionSelector == %@ AND status == %d", sessionSelector, k_metadataStatusWaitUpload)
                 }