> On 2015/03/25, at 9:44, Daryle Walker <[email protected]> wrote:
> 
> A segment from my command-line tool:
> 
>>                NSURL * const  finalLocation = [NSURL 
>> fileURLWithPath:response.suggestedFilename isDirectory:NO];
>> 
>>                [[NSFileManager defaultManager] moveItemAtURL:location 
>> toURL:finalLocation error:&error];
>>                if (error) {
>>                    gbfprint(stderr, @"Error, copying: %@", 
>> error.localizedDescription);
>>                    gbfprintln(stderr, error.localizedFailureReason ? @" 
>> (%@)" : @"", error.localizedFailureReason);
>>                    returnCode = EXIT_FAILURE;
>>                } else {
>>                    gbprintln(@"%@", finalLocation.path);
>>                }
> 
> When I run the tool a second time, with the same URL argument, so it tries 
> moving the temp file to a place where a file already exists, I get:
> 
>> Error, copying: “CFNetworkDownload_8gfN5h.tmp” couldn’t be moved to “Debug” 
>> because an item with the same name already exists. (A file with the name 
>> “CFNetworkDownload_8gfN5h.tmp” already exists.)
>> Program ended with exit code: 1
> 
> The localized failure reason uses the source file name, the real reason is 
> that the DESTINATION file name is the one already in use.
> 
> Am I misunderstanding something here, or should I try to figure out how to 
> send in bug reports to Apple?
> 
> ― 
The message is correct. 
In the view of the underlying POSIX API a file exists already with that name at 
that path. 
If your file name is too simplistic you're going to struggle. 
You need to determine your move policy. File names can be unique with simple 
things like timestamps or UUIDs which are easy to create. 
You need to decide whether to unique them (proactively avoid collisions) or 
handle collisions and how. 
You could replace it or append. 
_______________________________________________

Cocoa-dev mailing list ([email protected])

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to [email protected]

Reply via email to