| Index: Source/core/fetch/ResourceFetcher.cpp
|
| diff --git a/Source/core/fetch/ResourceFetcher.cpp b/Source/core/fetch/ResourceFetcher.cpp
|
| index 0c567d4cd05e923593b035dcc3af21cdb059a914..15df4199fca8bb6f7daad13b5dc0b6440c20090e 100644
|
| --- a/Source/core/fetch/ResourceFetcher.cpp
|
| +++ b/Source/core/fetch/ResourceFetcher.cpp
|
| @@ -376,10 +376,12 @@ ResourcePtr<RawResource> ResourceFetcher::fetchMainResource(FetchRequest& reques
|
| void ResourceFetcher::preCacheSubstituteDataForMainResource(const FetchRequest& request, const SubstituteData& substituteData)
|
| {
|
| const KURL& url = request.url();
|
| - ASSERT(!memoryCache()->resourceForURL(url));
|
| + if (Resource* oldResource = memoryCache()->resourceForURL(url))
|
| + memoryCache()->remove(oldResource);
|
|
|
| ResourceResponse response(url, substituteData.mimeType(), substituteData.content()->size(), substituteData.textEncoding(), emptyString());
|
| ResourcePtr<Resource> resource = createResource(Resource::MainResource, request.resourceRequest(), substituteData.textEncoding());
|
| + resource->setNeedsSynchronousCacheHit(substituteData.forceSynchronousLoad());
|
| resource->setOptions(request.options());
|
| resource->setDataBufferingPolicy(BufferData);
|
| resource->responseReceived(response);
|
|
|