| Index: Source/core/fetch/ResourceLoader.cpp
|
| diff --git a/Source/core/fetch/ResourceLoader.cpp b/Source/core/fetch/ResourceLoader.cpp
|
| index 5cd299f9eaab9c3d8a4c3c5de0b58cbd9c170542..2b734fb03b04167c8d617beb935970ede4f1ba7b 100644
|
| --- a/Source/core/fetch/ResourceLoader.cpp
|
| +++ b/Source/core/fetch/ResourceLoader.cpp
|
| @@ -68,9 +68,9 @@ ResourceLoader::RequestCountTracker::RequestCountTracker(const RequestCountTrack
|
| m_host->incrementRequestCount(m_resource);
|
| }
|
|
|
| -PassRefPtr<ResourceLoader> ResourceLoader::create(ResourceLoaderHost* host, Resource* resource, const ResourceRequest& request, const ResourceLoaderOptions& options)
|
| +PassRefPtrWillBeRawPtr<ResourceLoader> ResourceLoader::create(ResourceLoaderHost* host, Resource* resource, const ResourceRequest& request, const ResourceLoaderOptions& options)
|
| {
|
| - RefPtr<ResourceLoader> loader(adoptRef(new ResourceLoader(host, resource, options)));
|
| + RefPtrWillBeRawPtr<ResourceLoader> loader(adoptRefWillBeNoop(new ResourceLoader(host, resource, options)));
|
| loader->init(request);
|
| return loader.release();
|
| }
|
| @@ -92,6 +92,12 @@ ResourceLoader::~ResourceLoader()
|
| ASSERT(m_state == Terminated);
|
| }
|
|
|
| +void ResourceLoader::trace(Visitor* visitor)
|
| +{
|
| + visitor->trace(m_host);
|
| + visitor->trace(m_resource);
|
| +}
|
| +
|
| void ResourceLoader::releaseResources()
|
| {
|
| ASSERT(m_state != Terminated);
|
| @@ -109,7 +115,7 @@ void ResourceLoader::releaseResources()
|
| // deallocated and release the last reference to this object.
|
| // We need to retain to avoid accessing the object after it
|
| // has been deallocated and also to avoid reentering this method.
|
| - RefPtr<ResourceLoader> protector(this);
|
| + RefPtrWillBeRawPtr<ResourceLoader> protector(this);
|
|
|
| m_host.clear();
|
| m_state = Terminated;
|
| @@ -200,7 +206,7 @@ void ResourceLoader::attachThreadedDataReceiver(PassOwnPtr<blink::WebThreadedDat
|
|
|
| void ResourceLoader::didDownloadData(blink::WebURLLoader*, int length, int encodedDataLength)
|
| {
|
| - RefPtr<ResourceLoader> protect(this);
|
| + RefPtrWillBeRawPtr<ResourceLoader> protect(this);
|
| RELEASE_ASSERT(m_connectionState == ConnectionStateReceivedResponse);
|
| m_host->didDownloadData(m_resource, length, encodedDataLength);
|
| m_resource->didDownloadData(length);
|
| @@ -253,7 +259,7 @@ void ResourceLoader::cancel(const ResourceError& error)
|
|
|
| // This function calls out to clients at several points that might do
|
| // something that causes the last reference to this object to go away.
|
| - RefPtr<ResourceLoader> protector(this);
|
| + RefPtrWillBeRawPtr<ResourceLoader> protector(this);
|
|
|
| WTF_LOG(ResourceLoading, "Cancelled load of '%s'.\n", m_resource->url().string().latin1().data());
|
| if (m_state == Initialized)
|
| @@ -279,7 +285,7 @@ void ResourceLoader::cancel(const ResourceError& error)
|
|
|
| void ResourceLoader::willSendRequest(blink::WebURLLoader*, blink::WebURLRequest& passedRequest, const blink::WebURLResponse& passedRedirectResponse)
|
| {
|
| - RefPtr<ResourceLoader> protect(this);
|
| + RefPtrWillBeRawPtr<ResourceLoader> protect(this);
|
|
|
| ResourceRequest& request(applyOptions(passedRequest.toMutableResourceRequest()));
|
|
|
| @@ -316,7 +322,7 @@ void ResourceLoader::didReceiveCachedMetadata(blink::WebURLLoader*, const char*
|
| void ResourceLoader::didSendData(blink::WebURLLoader*, unsigned long long bytesSent, unsigned long long totalBytesToBeSent)
|
| {
|
| ASSERT(m_state == Initialized);
|
| - RefPtr<ResourceLoader> protect(this);
|
| + RefPtrWillBeRawPtr<ResourceLoader> protect(this);
|
| m_resource->didSendData(bytesSent, totalBytesToBeSent);
|
| }
|
|
|
| @@ -357,7 +363,7 @@ void ResourceLoader::didReceiveResponse(blink::WebURLLoader*, const blink::WebUR
|
|
|
| // Reference the object in this method since the additional processing can do
|
| // anything including removing the last reference to this object.
|
| - RefPtr<ResourceLoader> protect(this);
|
| + RefPtrWillBeRawPtr<ResourceLoader> protect(this);
|
| m_resource->responseReceived(resourceResponse);
|
| if (m_state == Terminated)
|
| return;
|
| @@ -404,7 +410,7 @@ void ResourceLoader::didReceiveData(blink::WebURLLoader*, const char* data, int
|
|
|
| // Reference the object in this method since the additional processing can do
|
| // anything including removing the last reference to this object.
|
| - RefPtr<ResourceLoader> protect(this);
|
| + RefPtrWillBeRawPtr<ResourceLoader> protect(this);
|
|
|
| // FIXME: If we get a resource with more than 2B bytes, this code won't do the right thing.
|
| // However, with today's computers and networking speeds, this won't happen in practice.
|
| @@ -422,7 +428,7 @@ void ResourceLoader::didFinishLoading(blink::WebURLLoader*, double finishTime, i
|
| ASSERT(m_state != Terminated);
|
| WTF_LOG(ResourceLoading, "Received '%s'.", m_resource->url().string().latin1().data());
|
|
|
| - RefPtr<ResourceLoader> protect(this);
|
| + RefPtrWillBeRawPtr<ResourceLoader> protect(this);
|
| ResourcePtr<Resource> protectResource(m_resource);
|
| m_state = Finishing;
|
| didFinishLoadingOnePart(finishTime, encodedDataLength);
|
| @@ -441,7 +447,7 @@ void ResourceLoader::didFail(blink::WebURLLoader*, const blink::WebURLError& err
|
| ASSERT(m_state != Terminated);
|
| WTF_LOG(ResourceLoading, "Failed to load '%s'.\n", m_resource->url().string().latin1().data());
|
|
|
| - RefPtr<ResourceLoader> protect(this);
|
| + RefPtrWillBeRawPtr<ResourceLoader> protect(this);
|
| RefPtrWillBeRawPtr<ResourceLoaderHost> protectHost(m_host.get());
|
| ResourcePtr<Resource> protectResource(m_resource);
|
| m_state = Finishing;
|
| @@ -473,7 +479,7 @@ void ResourceLoader::requestSynchronously()
|
| // downloadToFile is not supported for synchronous requests.
|
| ASSERT(!m_request.downloadToFile());
|
|
|
| - RefPtr<ResourceLoader> protect(this);
|
| + RefPtrWillBeRawPtr<ResourceLoader> protect(this);
|
| RefPtrWillBeRawPtr<ResourceLoaderHost> protectHost(m_host.get());
|
| ResourcePtr<Resource> protectResource(m_resource);
|
|
|
|
|