Commit progress on NSFileManager

This commit is contained in:
Gregory John Casamento 2019-08-04 22:19:28 -04:00
parent ac523fb169
commit 12db1f62c7
2 changed files with 43 additions and 2 deletions

View file

@ -133,7 +133,9 @@ enum
#if OS_API_VERSION(MAC_OS_X_VERSION_10_6, GS_API_LATEST)
NSMoviesDirectory = 17, /** location of video/movie files */
NSMusicDirectory = 18, /** location of music files */
NSPicturesDirectory = 19, /** location of picture/images files */
NSPicturesDirectory = 19, /** location of picture/images files */
NSItemReplacementDirectory = 99, /** pass to URLFirDirectory:inDomain:
appropriateForURL:create:error to create a temporary directory */
#endif
NSAllApplicationsDirectory = 100, /** all app directories */
@ -177,6 +179,7 @@ enum
NSApplicationSupportDirectory
NSAllApplicationsDirectory,
NSAllLibrariesDirectory,
NSItemReplacementDirectory,
GSLibrariesDirectory,
GSToolsDirectory,
GSAdminToolsDirectory,

View file

@ -779,7 +779,45 @@ static NSStringEncoding defaultEncoding;
create: (BOOL)shouldCreate
error: (NSError **)error
{
return nil;
NSURL *result = nil;
if((domain == NSUserDomainMask ||
domain == NSLocalDomainMask ||
domain == NSNetworkDomainMask ||
domain == NSSystemDomainMask ) &&
domain != NSAllDomainsMask)
{
NSArray *urlArray = NSSearchPathForDirectoriesInDomains(directory, domain, YES);
switch(directory)
{
case NSApplicationDirectory:
case NSDemoApplicationDirectory:
case NSDeveloperApplicationDirectory:
case NSAdminApplicationDirectory:
case NSLibraryDirectory:
case NSDeveloperDirectory:
case NSUserDirectory:
case NSDocumentationDirectory:
case NSDocumentDirectory:
case NSCoreServicesDirectory:
case NSDesktopDirectory:
case NSCachesDirectory:
case NSApplicationSupportDirectory:
case NSAllApplicationsDirectory:
case NSAllLibrariesDirectory:
break;
case NSItemReplacementDirectory:
result = [NSURL URLWithString: NSTemporaryDirectory()];
break;
case GSLibrariesDirectory:
case GSToolsDirectory:
case GSAdminToolsDirectory:
case GSFontsDirectory:
case GSFrameworksDirectory:
case GSWebApplicationsDirectory:
break;
}
}
return result;
}
- (NSDirectoryEnumerator *)enumeratorAtURL: (NSURL *)url