Index: Source/web/FrameLoaderClientImpl.h |
diff --git a/Source/web/FrameLoaderClientImpl.h b/Source/web/FrameLoaderClientImpl.h |
index b2a6b9d1892877d2620aab1067dff2ba23e4c520..c70029a0c0d169398355966845d6c493148068cf 100644 |
--- a/Source/web/FrameLoaderClientImpl.h |
+++ b/Source/web/FrameLoaderClientImpl.h |
@@ -45,10 +45,13 @@ class WebPluginLoadObserver; |
class FrameLoaderClientImpl final : public FrameLoaderClient { |
public: |
- explicit FrameLoaderClientImpl(WebLocalFrameImpl* webFrame); |
+ static PassOwnPtrWillBeRawPtr<FrameLoaderClientImpl> create(WebLocalFrameImpl*); |
+ |
~FrameLoaderClientImpl() override; |
- WebLocalFrameImpl* webFrame() const { return m_webFrame; } |
+ DECLARE_VIRTUAL_TRACE(); |
+ |
+ WebLocalFrameImpl* webFrame() const { return m_webFrame.get(); } |
// FrameLoaderClient ---------------------------------------------- |
@@ -180,14 +183,17 @@ public: |
unsigned backForwardLength() override; |
void suddenTerminationDisablerChanged(bool present, SuddenTerminationDisablerType) override; |
+ |
private: |
+ explicit FrameLoaderClientImpl(WebLocalFrameImpl*); |
+ |
bool isFrameLoaderClientImpl() const override { return true; } |
PassOwnPtr<WebPluginLoadObserver> pluginLoadObserver(DocumentLoader*); |
// The WebFrame that owns this object and manages its lifetime. Therefore, |
// the web frame object is guaranteed to exist. |
- WebLocalFrameImpl* m_webFrame; |
+ RawPtrWillBeMember<WebLocalFrameImpl> m_webFrame; |
}; |
DEFINE_TYPE_CASTS(FrameLoaderClientImpl, FrameLoaderClient, client, client->isFrameLoaderClientImpl(), client.isFrameLoaderClientImpl()); |