Ensure we don't cancel revalidation of a CachedResource
authorjaphet@chromium.org <japhet@chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 18 Jan 2012 02:06:42 +0000 (02:06 +0000)
committerjaphet@chromium.org <japhet@chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 18 Jan 2012 02:06:42 +0000 (02:06 +0000)
commit2aae2996d29a485e1b801af3f0b7d33b736ba7e5
tree7103b3917a5f715e461a1aeca8383ecbabe6821d
parenteffc5130e032fbc377a2458e0a3f2ccaae1a665b
Ensure we don't cancel revalidation of a CachedResource
in the middle of successful revalidation.
It's more reliable to enforce this in CachedResource than in
SubresourceLoader.
https://bugs.webkit.org/show_bug.cgi?id=75713

Reviewed by Adam Barth.

No new test, the buggy case requires a non-stubbed window.print().

* loader/SubresourceLoader.cpp:
(WebCore::SubresourceLoader::didReceiveResponse):
(WebCore::SubresourceLoader::didFinishLoading):
* loader/SubresourceLoader.h:
* loader/cache/CachedResource.cpp:
(WebCore::CachedResource::CachedResource):
(WebCore::CachedResource::clearResourceToRevalidate):
(WebCore::CachedResource::switchClientsToRevalidatedResource):
* loader/cache/CachedResource.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105226 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Source/WebCore/ChangeLog
Source/WebCore/loader/SubresourceLoader.cpp
Source/WebCore/loader/SubresourceLoader.h
Source/WebCore/loader/cache/CachedResource.cpp
Source/WebCore/loader/cache/CachedResource.h
Source/WebCore/loader/cache/MemoryCache.cpp