| Index: Source/core/frame/Frame.cpp
|
| diff --git a/Source/core/frame/Frame.cpp b/Source/core/frame/Frame.cpp
|
| index d45db355c975bbb0c7041fed3c7f2504b8a9c281..e27a9901c1a8995ae0c45e6099426458d4871566 100644
|
| --- a/Source/core/frame/Frame.cpp
|
| +++ b/Source/core/frame/Frame.cpp
|
| @@ -80,11 +80,9 @@ Frame::Frame(FrameClient* client, FrameHost* host, FrameOwner* owner)
|
|
|
| Frame::~Frame()
|
| {
|
| -#if ENABLE(OILPAN)
|
| ASSERT(!m_owner);
|
| -#else
|
| +#if !ENABLE(OILPAN)
|
| // FIXME: We should not be doing all this work inside the destructor
|
| - disconnectOwnerElement();
|
| setDOMWindow(nullptr);
|
| #endif
|
|
|
| @@ -109,6 +107,7 @@ void Frame::detach()
|
| // http://crbug.com/371084 is a probable explanation.
|
| if (!client())
|
| return;
|
| + disconnectOwnerElement();
|
| // After this, we must no longer talk to the client since this clears
|
| // its owning reference back to our owning LocalFrame.
|
| m_client->detached();
|
|
|