| Index: third_party/WebKit/Source/core/loader/PrerenderHandle.cpp
|
| diff --git a/third_party/WebKit/Source/core/loader/PrerenderHandle.cpp b/third_party/WebKit/Source/core/loader/PrerenderHandle.cpp
|
| index 9efd6f9c05bbcdeb8b826b04227fcdbb809af4a6..33c5ccbc658547a2bf05247ca12b0505c731dffc 100644
|
| --- a/third_party/WebKit/Source/core/loader/PrerenderHandle.cpp
|
| +++ b/third_party/WebKit/Source/core/loader/PrerenderHandle.cpp
|
| @@ -48,17 +48,17 @@ PrerenderHandle* PrerenderHandle::create(Document& document, PrerenderClient* cl
|
| if (!document.frame())
|
| return nullptr;
|
|
|
| - RefPtr<Prerender> prerender = Prerender::create(client, url, prerenderRelTypes, SecurityPolicy::generateReferrer(document.getReferrerPolicy(), url, document.outgoingReferrer()));
|
| + Prerender* prerender = Prerender::create(client, url, prerenderRelTypes, SecurityPolicy::generateReferrer(document.getReferrerPolicy(), url, document.outgoingReferrer()));
|
|
|
| PrerendererClient* prerendererClient = PrerendererClient::from(document.page());
|
| if (prerendererClient)
|
| - prerendererClient->willAddPrerender(prerender.get());
|
| + prerendererClient->willAddPrerender(prerender);
|
| prerender->add();
|
|
|
| - return new PrerenderHandle(document, prerender.release());
|
| + return new PrerenderHandle(document, prerender);
|
| }
|
|
|
| -PrerenderHandle::PrerenderHandle(Document& document, PassRefPtr<Prerender> prerender)
|
| +PrerenderHandle::PrerenderHandle(Document& document, Prerender* prerender)
|
| : DocumentLifecycleObserver(&document)
|
| , m_prerender(prerender)
|
| {
|
| @@ -101,12 +101,13 @@ void PrerenderHandle::documentWasDetached()
|
|
|
| void PrerenderHandle::detach()
|
| {
|
| - m_prerender->removeClient();
|
| + m_prerender->dispose();
|
| m_prerender.clear();
|
| }
|
|
|
| DEFINE_TRACE(PrerenderHandle)
|
| {
|
| + visitor->trace(m_prerender);
|
| DocumentLifecycleObserver::trace(visitor);
|
| }
|
|
|
|
|