From 1cbdecfa9fc428ac2d8aca0fa91c9580b3d57353 Mon Sep 17 00:00:00 2001 From: The Android Open Source Project Date: Wed, 17 Dec 2008 18:05:15 -0800 Subject: Code drop from //branches/cupcake/...@124589 --- WebKit/mac/Misc/WebKitNSStringExtras.m | 27 ++++++++++++++++++++++----- 1 file changed, 22 insertions(+), 5 deletions(-) (limited to 'WebKit/mac/Misc/WebKitNSStringExtras.m') diff --git a/WebKit/mac/Misc/WebKitNSStringExtras.m b/WebKit/mac/Misc/WebKitNSStringExtras.m index 940e63c..157069a 100644 --- a/WebKit/mac/Misc/WebKitNSStringExtras.m +++ b/WebKit/mac/Misc/WebKitNSStringExtras.m @@ -35,6 +35,7 @@ #import #import +#import @implementation NSString (WebKitExtras) @@ -322,22 +323,38 @@ static BOOL canUseFastRenderer(const UniChar *buffer, unsigned length) if ([[fileManager _webkit_startupVolumeName] isEqualToString:volumeName]) { // Startup volume name is included in path, remove it. [pathComponents removeObjectAtIndex:1]; - } else if ([[fileManager directoryContentsAtPath:@"/Volumes"] containsObject:volumeName]) { + } else if ([[fileManager contentsOfDirectoryAtPath:@"/Volumes" error:NULL] containsObject:volumeName]) { // Path starts with other volume name, prepend "/Volumes". [pathComponents insertObject:@"Volumes" atIndex:1]; - } else { + } else // It's valid. return self; - } NSString *path = [NSString pathWithComponents:pathComponents]; - if (![fileManager fileExistsAtPath:path]) { + if (![fileManager fileExistsAtPath:path]) // File at canonicalized path doesn't exist, return original. return self; - } return path; } ++ (NSString *)_webkit_localCacheDirectoryWithBundleIdentifier:(NSString*)bundleIdentifier +{ + NSString* cacheDir = nil; + +#ifdef BUILDING_ON_TIGER + cacheDir = [NSHomeDirectory() stringByAppendingPathComponent:@"Library/Caches"]; +#else + char cacheDirectory[MAXPATHLEN]; + size_t cacheDirectoryLen = confstr(_CS_DARWIN_USER_CACHE_DIR, cacheDirectory, MAXPATHLEN); + + if (cacheDirectoryLen) + cacheDir = [[NSFileManager defaultManager] stringWithFileSystemRepresentation:cacheDirectory length:cacheDirectoryLen - 1]; +#endif + + return [cacheDir stringByAppendingPathComponent:bundleIdentifier]; +} + + @end -- cgit v1.1