diff options
author | hans@chromium.org <hans@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-06-16 09:38:59 +0000 |
---|---|---|
committer | hans@chromium.org <hans@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-06-16 09:38:59 +0000 |
commit | 927843f13a5ba127760c0ba1db92d48ad3ba85f5 (patch) | |
tree | d6a574fccba988380204ea5dfba32ec49e38f91a /chrome/browser/in_process_webkit | |
parent | b962c22c0d5c725b3ecf49b7d8a2f510b5da7836 (diff) | |
download | chromium_src-927843f13a5ba127760c0ba1db92d48ad3ba85f5.zip chromium_src-927843f13a5ba127760c0ba1db92d48ad3ba85f5.tar.gz chromium_src-927843f13a5ba127760c0ba1db92d48ad3ba85f5.tar.bz2 |
Implement WebKitClientImpl::databaseDeleteFile.
Calls to SQLiteFileSystem::deleteDatabaseFile() end up here. So far, this
functionality does not seem to have been used, but it is needed for deleting
empty local storage databases as per the bug below.
BUG=39067
TEST=None. Will be covered by test for the bug in question.
Review URL: http://codereview.chromium.org/2846004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49913 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/in_process_webkit')
-rw-r--r-- | chrome/browser/in_process_webkit/browser_webkitclient_impl.cc | 8 | ||||
-rw-r--r-- | chrome/browser/in_process_webkit/browser_webkitclient_impl.h | 2 |
2 files changed, 10 insertions, 0 deletions
diff --git a/chrome/browser/in_process_webkit/browser_webkitclient_impl.cc b/chrome/browser/in_process_webkit/browser_webkitclient_impl.cc index b9cd9a5..6ed0680 100644 --- a/chrome/browser/in_process_webkit/browser_webkitclient_impl.cc +++ b/chrome/browser/in_process_webkit/browser_webkitclient_impl.cc @@ -4,11 +4,13 @@ #include "chrome/browser/in_process_webkit/browser_webkitclient_impl.h" +#include "base/file_util.h" #include "base/logging.h" #include "chrome/browser/in_process_webkit/dom_storage_dispatcher_host.h" #include "third_party/WebKit/WebKit/chromium/public/WebData.h" #include "third_party/WebKit/WebKit/chromium/public/WebString.h" #include "third_party/WebKit/WebKit/chromium/public/WebURL.h" +#include "webkit/glue/webkit_glue.h" BrowserWebKitClientImpl::BrowserWebKitClientImpl() { file_system_.set_sandbox_enabled(false); @@ -130,3 +132,9 @@ BrowserWebKitClientImpl::sharedWorkerRepository() { NOTREACHED(); return NULL; } + +int BrowserWebKitClientImpl::databaseDeleteFile( + const WebKit::WebString& vfs_file_name, bool sync_dir) { + const FilePath path = webkit_glue::WebStringToFilePath(vfs_file_name); + return file_util::Delete(path, false) ? 0 : 1; +} diff --git a/chrome/browser/in_process_webkit/browser_webkitclient_impl.h b/chrome/browser/in_process_webkit/browser_webkitclient_impl.h index c81503a9..bbd6018 100644 --- a/chrome/browser/in_process_webkit/browser_webkitclient_impl.h +++ b/chrome/browser/in_process_webkit/browser_webkitclient_impl.h @@ -42,6 +42,8 @@ class BrowserWebKitClientImpl : public webkit_glue::WebKitClientImpl { const WebKit::WebString& origin, const WebKit::WebURL& url, bool isLocalStorage); virtual WebKit::WebSharedWorkerRepository* sharedWorkerRepository(); + virtual int databaseDeleteFile(const WebKit::WebString& vfs_file_name, + bool sync_dir); private: webkit_glue::WebFileSystemImpl file_system_; |