diff options
author | michaeln@chromium.org <michaeln@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-11-03 02:29:14 +0000 |
---|---|---|
committer | michaeln@chromium.org <michaeln@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-11-03 02:29:14 +0000 |
commit | 6ed2a5a54b7bb8ccd33da7bc948fee169f128459 (patch) | |
tree | 3752c15899760eef346dc2c1f66768aa2f3e676a /webkit/appcache/appcache_request_handler_unittest.cc | |
parent | d6bb669008e0308f3ee6e04e77fe903698864e7b (diff) | |
download | chromium_src-6ed2a5a54b7bb8ccd33da7bc948fee169f128459.zip chromium_src-6ed2a5a54b7bb8ccd33da7bc948fee169f128459.tar.gz chromium_src-6ed2a5a54b7bb8ccd33da7bc948fee169f128459.tar.bz2 |
Fix for WKBug 47000: a failure mode given bad content (in an unlikely form). The error occurs when an html page is put in an appcache as a fallback resource (so it's listed in a fallback section), but it contains a manifest attribute that refers to a different manifest file. The system should mark the resource as foreign and exclude it from main resource loads, but it was failing to do so. The fix is to do that.
BUG=WK47000
TEST=http/tests/appcache/foreign-fallback.html
Review URL: http://codereview.chromium.org/3529009
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@64868 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'webkit/appcache/appcache_request_handler_unittest.cc')
-rw-r--r-- | webkit/appcache/appcache_request_handler_unittest.cc | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/webkit/appcache/appcache_request_handler_unittest.cc b/webkit/appcache/appcache_request_handler_unittest.cc index 8d22a49..ae0be75 100644 --- a/webkit/appcache/appcache_request_handler_unittest.cc +++ b/webkit/appcache/appcache_request_handler_unittest.cc @@ -237,7 +237,8 @@ class AppCacheRequestHandlerTest : public testing::Test { EXPECT_TRUE(handler_.get()); mock_storage()->SimulateFindMainResource( - AppCacheEntry(AppCacheEntry::EXPLICIT, 1), AppCacheEntry(), + AppCacheEntry(AppCacheEntry::EXPLICIT, 1), + GURL(), AppCacheEntry(), 1, GURL("http://blah/manifest/")); job_ = handler_->MaybeLoadResource(request_.get()); @@ -277,7 +278,9 @@ class AppCacheRequestHandlerTest : public testing::Test { EXPECT_TRUE(handler_.get()); mock_storage()->SimulateFindMainResource( - AppCacheEntry(), AppCacheEntry(AppCacheEntry::EXPLICIT, 1), + AppCacheEntry(), + GURL("http://blah/fallbackurl"), + AppCacheEntry(AppCacheEntry::EXPLICIT, 1), 1, GURL("http://blah/manifest/")); job_ = handler_->MaybeLoadResource(request_.get()); @@ -310,6 +313,8 @@ class AppCacheRequestHandlerTest : public testing::Test { handler_->GetExtraResponseInfo(&cache_id, &manifest_url); EXPECT_EQ(1, cache_id); EXPECT_EQ(GURL("http://blah/manifest/"), manifest_url); + EXPECT_TRUE(host_->main_resource_was_fallback_); + EXPECT_EQ(GURL("http://blah/fallbackurl"), host_->fallback_url_); TestFinished(); } |