summaryrefslogtreecommitdiffstats
path: root/webkit/database/database_connections.cc
diff options
context:
space:
mode:
authordumi@chromium.org <dumi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-02-12 19:24:04 +0000
committerdumi@chromium.org <dumi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-02-12 19:24:04 +0000
commit2b0ec8bb8b1d5e113ad072b27c3f157d985c6b21 (patch)
tree7fd39372550d1bbb60dba7483151344a06c3ca60 /webkit/database/database_connections.cc
parentd84ac11ef8abf2366f8544fe76db3cb0e645e177 (diff)
downloadchromium_src-2b0ec8bb8b1d5e113ad072b27c3f157d985c6b21.zip
chromium_src-2b0ec8bb8b1d5e113ad072b27c3f157d985c6b21.tar.gz
chromium_src-2b0ec8bb8b1d5e113ad072b27c3f157d985c6b21.tar.bz2
Ask renderers to immediately close all DB handles to a database file
when the file needs to be deleted. TEST=none BUG=none Review URL: http://codereview.chromium.org/594002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@38911 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'webkit/database/database_connections.cc')
-rw-r--r--webkit/database/database_connections.cc5
1 files changed, 4 insertions, 1 deletions
diff --git a/webkit/database/database_connections.cc b/webkit/database/database_connections.cc
index c6e9609..05efb1e 100644
--- a/webkit/database/database_connections.cc
+++ b/webkit/database/database_connections.cc
@@ -50,7 +50,8 @@ void DatabaseConnections::RemoveAllConnections() {
}
void DatabaseConnections::RemoveConnections(
- const DatabaseConnections& connections) {
+ const DatabaseConnections& connections,
+ std::vector<std::pair<string16, string16> >* closed_dbs) {
for (OriginConnections::const_iterator origin_it =
connections.connections_.begin();
origin_it != connections.connections_.end();
@@ -59,6 +60,8 @@ void DatabaseConnections::RemoveConnections(
for (DBConnections::const_iterator db_it = db_connections.begin();
db_it != db_connections.end(); db_it++) {
RemoveConnectionsHelper(origin_it->first, db_it->first, db_it->second);
+ if (!IsDatabaseOpened(origin_it->first, db_it->first))
+ closed_dbs->push_back(std::make_pair(origin_it->first, db_it->first));
}
}
}