Fix bug in sync daemon when deleting locally objects from different containers/accoun...
[pithos-macos] / pithos-macos / PithosSyncDaemon.m
index 35c1a3d..442bf7e 100644 (file)
         pithos.storageURLPrefix = [aPithos.storageURLPrefix copy];
         pithos.authURL = [aPithos.authURL copy];
         pithos.publicURLPrefix = [aPithos.publicURLPrefix copy];
+        pithos.userCatalogURL = [aPithos.userCatalogURL copy];
     }
     if (aPithos && 
         (![aPithos.authUser isEqualToString:pithos.authUser] || 
         pithos.storageURLPrefix = [aPithos.storageURLPrefix copy];
         pithos.authURL = [aPithos.authURL copy];
         pithos.publicURLPrefix = [aPithos.publicURLPrefix copy];
-    }        
+        pithos.userCatalogURL = [aPithos.userCatalogURL copy];
+    }
 }
 
 #pragma mark -
         BOOL isDirectory;
         BOOL fileExists = [fileManager fileExistsAtPath:filePath isDirectory:&isDirectory];
         NSError *error = nil;
-        NSString *containerDirectoryPath = [self dirPathForAccount:accountName container:pithosContainer.name];
-        NSString *newFilePath = [filePath stringByReplacingOccurrencesOfString:containerDirectoryPath withString:self.tempTrashDirPath];
+        NSString *newFilePath = [filePath stringByReplacingOccurrencesOfString:directoryPath withString:self.tempTrashDirPath];
         NSString *newDirPath = [newFilePath stringByDeletingLastPathComponent];
         if (fileExists && isDirectory) {
             NSArray *subPaths = [fileManager subpathsOfDirectoryAtPath:filePath error:&error];
             }
             for (NSString *subPath in subPaths) {
                 NSString *subFilePath = [filePath stringByAppendingPathComponent:subPath];
-                NSString *newSubFilePath = [subFilePath stringByReplacingOccurrencesOfString:containerDirectoryPath 
+                NSString *newSubFilePath = [subFilePath stringByReplacingOccurrencesOfString:directoryPath
                                                                                   withString:self.tempTrashDirPath];
                 currentState = [currentLocalObjectStates objectForKey:subFilePath];
                 if (currentState) {