summaryrefslogtreecommitdiffstats
path: root/webkit/appcache/appcache_storage_impl.cc
diff options
context:
space:
mode:
authormichaeln@google.com <michaeln@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2012-01-05 00:19:40 +0000
committermichaeln@google.com <michaeln@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2012-01-05 00:19:40 +0000
commit2abcade13437abb0a3b92cb0b7236b3dd5f1a236 (patch)
tree268c2baca793e8e865d4b24c69376cf212927133 /webkit/appcache/appcache_storage_impl.cc
parent17e6cde51ff33a5dac5290e978c4e7acf08a473c (diff)
downloadchromium_src-2abcade13437abb0a3b92cb0b7236b3dd5f1a236.zip
chromium_src-2abcade13437abb0a3b92cb0b7236b3dd5f1a236.tar.gz
chromium_src-2abcade13437abb0a3b92cb0b7236b3dd5f1a236.tar.bz2
Fix some loose ends around recently introduced AppCache INTERCEPT namespaces
- if an intercept entry cant be fetched, the appcache update should fail - properly mark the intercept entry as FORIEGN when thats detected BUG=101565 Review URL: http://codereview.chromium.org/8949001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@116417 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'webkit/appcache/appcache_storage_impl.cc')
-rw-r--r--webkit/appcache/appcache_storage_impl.cc25
1 files changed, 13 insertions, 12 deletions
diff --git a/webkit/appcache/appcache_storage_impl.cc b/webkit/appcache/appcache_storage_impl.cc
index 617bc27..4e3c3be 100644
--- a/webkit/appcache/appcache_storage_impl.cc
+++ b/webkit/appcache/appcache_storage_impl.cc
@@ -851,7 +851,7 @@ class AppCacheStorageImpl::FindMainResponseTask : public DatabaseTask {
std::set<int64> cache_ids_in_use_;
AppCacheEntry entry_;
AppCacheEntry fallback_entry_;
- GURL fallback_url_;
+ GURL namespace_entry_url_;
int64 cache_id_;
int64 group_id_;
GURL manifest_url_;
@@ -1004,13 +1004,12 @@ FindMainResponseTask::FindFirstValidNamespace(
manifest_url_ = group_record.manifest_url;
group_id_ = group_record.group_id;
cache_id_ = (*iter)->cache_id;
- if ((*iter)->type == FALLBACK_NAMESPACE) {
- fallback_url_ = (*iter)->target_url;
- fallback_entry_ = AppCacheEntry(
- entry_record.flags, entry_record.response_id);
- } else {
+ namespace_entry_url_ = (*iter)->target_url;
+ if ((*iter)->type == FALLBACK_NAMESPACE)
+ fallback_entry_ = AppCacheEntry(entry_record.flags,
+ entry_record.response_id);
+ else
entry_ = AppCacheEntry(entry_record.flags, entry_record.response_id);
- }
return true; // We found one.
}
}
@@ -1019,7 +1018,7 @@ FindMainResponseTask::FindFirstValidNamespace(
void AppCacheStorageImpl::FindMainResponseTask::RunCompleted() {
storage_->CallOnMainResponseFound(
- &delegates_, url_, entry_, fallback_url_, fallback_entry_,
+ &delegates_, url_, entry_, namespace_entry_url_, fallback_entry_,
cache_id_, group_id_, manifest_url_);
}
@@ -1453,12 +1452,12 @@ void AppCacheStorageImpl::DeliverShortCircuitedFindMainResponse(
void AppCacheStorageImpl::CallOnMainResponseFound(
DelegateReferenceVector* delegates,
const GURL& url, const AppCacheEntry& entry,
- const GURL& fallback_url, const AppCacheEntry& fallback_entry,
+ const GURL& namespace_entry_url, const AppCacheEntry& fallback_entry,
int64 cache_id, int64 group_id, const GURL& manifest_url) {
FOR_EACH_DELEGATE(
(*delegates),
OnMainResponseFound(url, entry,
- fallback_url, fallback_entry,
+ namespace_entry_url, fallback_entry,
cache_id, group_id, manifest_url));
}
@@ -1479,9 +1478,11 @@ void AppCacheStorageImpl::FindResponseForSubRequest(
}
GURL fallback_namespace_not_used;
+ GURL intercept_namespace_not_used;
cache->FindResponseForRequest(
- url, found_entry, found_fallback_entry,
- &fallback_namespace_not_used, found_network_namespace);
+ url, found_entry, &intercept_namespace_not_used,
+ found_fallback_entry, &fallback_namespace_not_used,
+ found_network_namespace);
}
void AppCacheStorageImpl::MarkEntryAsForeign(