Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(654)

Unified Diff: chrome/browser/extensions/extension_special_storage_policy.cc

Issue 10826270: QuotaManager: Return the remaining free disk space as quota. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Review fixes. Created 8 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/extensions/extension_special_storage_policy.cc
diff --git a/chrome/browser/extensions/extension_special_storage_policy.cc b/chrome/browser/extensions/extension_special_storage_policy.cc
index 940a53ce0c986776b59da4b762007a83c2ef0b23..3d78c1628910d6407f04571b721a136bc921b2c2 100644
--- a/chrome/browser/extensions/extension_special_storage_policy.cc
+++ b/chrome/browser/extensions/extension_special_storage_policy.cc
@@ -41,6 +41,10 @@ bool ExtensionSpecialStoragePolicy::IsStorageSessionOnly(const GURL& origin) {
return cookie_settings_->IsCookieSessionOnly(origin);
}
+bool ExtensionSpecialStoragePolicy::IsInstalledApp(const GURL& origin) {
+ return installed_apps_.Contains(origin);
+}
+
bool ExtensionSpecialStoragePolicy::HasSessionOnlyOrigins() {
if (cookie_settings_ == NULL)
return false;
@@ -87,6 +91,9 @@ void ExtensionSpecialStoragePolicy::GrantRightsForExtension(
base::AutoLock locker(lock_);
if (NeedsProtection(extension))
protected_apps_.Add(extension);
+ // FIXME: Does GrantRightsForExtension imply |extension| is installed?
+ if (extension->is_app())
+ installed_apps_.Add(extension);
if (extension->HasAPIPermission(APIPermission::kUnlimitedStorage))
unlimited_extensions_.Add(extension);
if (extension->HasAPIPermission(
@@ -111,6 +118,8 @@ void ExtensionSpecialStoragePolicy::RevokeRightsForExtension(
base::AutoLock locker(lock_);
if (NeedsProtection(extension))
protected_apps_.Remove(extension);
+ if (extension->is_app())
+ installed_apps_.Remove(extension);
if (extension->HasAPIPermission(APIPermission::kUnlimitedStorage))
unlimited_extensions_.Remove(extension);
if (extension->HasAPIPermission(APIPermission::kFileBrowserHandler))
@@ -123,6 +132,7 @@ void ExtensionSpecialStoragePolicy::RevokeRightsForAllExtensions() {
{
base::AutoLock locker(lock_);
protected_apps_.Clear();
+ installed_apps_.Clear();
unlimited_extensions_.Clear();
file_handler_extensions_.Clear();
}

Powered by Google App Engine
This is Rietveld 408576698