summaryrefslogtreecommitdiffstats
path: root/WebKit/mac/Storage/WebDatabaseManager.mm
diff options
context:
space:
mode:
Diffstat (limited to 'WebKit/mac/Storage/WebDatabaseManager.mm')
-rw-r--r--WebKit/mac/Storage/WebDatabaseManager.mm28
1 files changed, 17 insertions, 11 deletions
diff --git a/WebKit/mac/Storage/WebDatabaseManager.mm b/WebKit/mac/Storage/WebDatabaseManager.mm
index a84f235..8c5e8a2 100644
--- a/WebKit/mac/Storage/WebDatabaseManager.mm
+++ b/WebKit/mac/Storage/WebDatabaseManager.mm
@@ -49,6 +49,8 @@ NSString *WebDatabaseDidModifyOriginNotification = @"WebDatabaseDidModifyOriginN
NSString *WebDatabaseDidModifyDatabaseNotification = @"WebDatabaseDidModifyDatabaseNotification";
NSString *WebDatabaseIdentifierKey = @"WebDatabaseIdentifierKey";
+static NSString *databasesDirectoryPath();
+
@implementation WebDatabaseManager
+ (WebDatabaseManager *) sharedWebDatabaseManager
@@ -107,18 +109,28 @@ NSString *WebDatabaseIdentifierKey = @"WebDatabaseIdentifierKey";
DatabaseTracker::tracker().deleteAllDatabases();
}
-- (void)deleteOrigin:(WebSecurityOrigin *)origin
+- (BOOL)deleteOrigin:(WebSecurityOrigin *)origin
{
- DatabaseTracker::tracker().deleteOrigin([origin _core]);
+ return DatabaseTracker::tracker().deleteOrigin([origin _core]);
}
-- (void)deleteDatabase:(NSString *)databaseIdentifier withOrigin:(WebSecurityOrigin *)origin
+- (BOOL)deleteDatabase:(NSString *)databaseIdentifier withOrigin:(WebSecurityOrigin *)origin
{
- DatabaseTracker::tracker().deleteDatabase([origin _core], databaseIdentifier);
+ return DatabaseTracker::tracker().deleteDatabase([origin _core], databaseIdentifier);
}
@end
+static NSString *databasesDirectoryPath()
+{
+ NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
+ NSString *databasesDirectory = [defaults objectForKey:WebDatabaseDirectoryDefaultsKey];
+ if (!databasesDirectory || ![databasesDirectory isKindOfClass:[NSString class]])
+ databasesDirectory = @"~/Library/WebKit/Databases";
+
+ return [databasesDirectory stringByStandardizingPath];
+}
+
void WebKitInitializeDatabasesIfNecessary()
{
static BOOL initialized = NO;
@@ -126,13 +138,7 @@ void WebKitInitializeDatabasesIfNecessary()
return;
// Set the database root path in WebCore
- NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
-
- NSString *databasesDirectory = [defaults objectForKey:WebDatabaseDirectoryDefaultsKey];
- if (!databasesDirectory || ![databasesDirectory isKindOfClass:[NSString class]])
- databasesDirectory = @"~/Library/WebKit/Databases";
-
- DatabaseTracker::tracker().setDatabaseDirectoryPath([databasesDirectory stringByStandardizingPath]);
+ DatabaseTracker::initializeTracker(databasesDirectoryPath());
// Set the DatabaseTrackerClient
DatabaseTracker::tracker().setClient(WebDatabaseTrackerClient::sharedWebDatabaseTrackerClient());