summaryrefslogtreecommitdiffstats
path: root/chrome/browser/profile.cc
diff options
context:
space:
mode:
authordumi@chromium.org <dumi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-06-13 09:08:41 +0000
committerdumi@chromium.org <dumi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-06-13 09:08:41 +0000
commitfe615f3a28aba7377b1ef177390b67927cc32290 (patch)
treeaac68857f269f74d0414627fb11657fde8706962 /chrome/browser/profile.cc
parent517507bd359f4ab111f6c119e4fdc9bcea145fbf (diff)
downloadchromium_src-fe615f3a28aba7377b1ef177390b67927cc32290.zip
chromium_src-fe615f3a28aba7377b1ef177390b67927cc32290.tar.gz
chromium_src-fe615f3a28aba7377b1ef177390b67927cc32290.tar.bz2
Support WebSQLDatabases in incognito mode.
BUG=43232 TEST=none Review URL: http://codereview.chromium.org/2746003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49644 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/profile.cc')
-rw-r--r--chrome/browser/profile.cc19
1 files changed, 15 insertions, 4 deletions
diff --git a/chrome/browser/profile.cc b/chrome/browser/profile.cc
index ea689e6..15ef278 100644
--- a/chrome/browser/profile.cc
+++ b/chrome/browser/profile.cc
@@ -316,6 +316,13 @@ class OffTheRecordProfileImpl : public Profile,
Source<Profile>(this),
NotificationService::NoDetails());
CleanupRequestContext(request_context_);
+
+ // Clean up all DB files/directories
+ ChromeThread::PostTask(
+ ChromeThread::FILE, FROM_HERE,
+ NewRunnableMethod(
+ db_tracker_.get(),
+ &webkit_database::DatabaseTracker::DeleteIncognitoDBDirectory));
}
virtual ProfileId GetRuntimeId() {
@@ -342,8 +349,10 @@ class OffTheRecordProfileImpl : public Profile,
}
virtual webkit_database::DatabaseTracker* GetDatabaseTracker() {
- if (!db_tracker_)
- db_tracker_ = new webkit_database::DatabaseTracker(FilePath());
+ if (!db_tracker_) {
+ db_tracker_ = new webkit_database::DatabaseTracker(
+ GetPath(), IsOffTheRecord());
+ }
return db_tracker_;
}
@@ -1017,8 +1026,10 @@ Profile* ProfileImpl::GetOriginalProfile() {
}
webkit_database::DatabaseTracker* ProfileImpl::GetDatabaseTracker() {
- if (!db_tracker_)
- db_tracker_ = new webkit_database::DatabaseTracker(GetPath());
+ if (!db_tracker_) {
+ db_tracker_ = new webkit_database::DatabaseTracker(
+ GetPath(), IsOffTheRecord());
+ }
return db_tracker_;
}