summaryrefslogtreecommitdiffstats
path: root/webkit/appcache/appcache_storage_impl.h
diff options
context:
space:
mode:
Diffstat (limited to 'webkit/appcache/appcache_storage_impl.h')
-rw-r--r--webkit/appcache/appcache_storage_impl.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/webkit/appcache/appcache_storage_impl.h b/webkit/appcache/appcache_storage_impl.h
index c7bae95..96fc876 100644
--- a/webkit/appcache/appcache_storage_impl.h
+++ b/webkit/appcache/appcache_storage_impl.h
@@ -23,6 +23,8 @@ class AppCacheStorageImpl : public AppCacheStorage {
virtual ~AppCacheStorageImpl();
void Initialize(const FilePath& cache_directory);
+ void Disable();
+ bool is_disabled() const { return is_disabled_; }
// AppCacheStorage methods
virtual void LoadCache(int64 id, Delegate* delegate);
@@ -55,6 +57,7 @@ class AppCacheStorageImpl : public AppCacheStorage {
class DatabaseTask;
class InitTask;
class CloseConnectionTask;
+ class DisableDatabaseTask;
class StoreOrLoadTask;
class CacheLoadTask;
class GroupLoadTask;
@@ -116,6 +119,10 @@ class AppCacheStorageImpl : public AppCacheStorage {
// Created on the IO thread, but only used on the DB thread.
AppCacheDatabase* database_;
+ // Set if we discover a fatal error like a corrupt sql database or
+ // disk cache and cannot continue.
+ bool is_disabled_;
+
// TODO(michaeln): use a disk_cache per group (manifest or group_id).
scoped_ptr<disk_cache::Backend> disk_cache_;