 Chromium Code Reviews
 Chromium Code Reviews Issue 678673002:
  Oilpan: clear FrameLoader during LocalFrame detach.  (Closed) 
  Base URL: https://chromium.googlesource.com/chromium/blink.git@master
    
  
    Issue 678673002:
  Oilpan: clear FrameLoader during LocalFrame detach.  (Closed) 
  Base URL: https://chromium.googlesource.com/chromium/blink.git@master| Index: Source/core/frame/LocalFrame.cpp | 
| diff --git a/Source/core/frame/LocalFrame.cpp b/Source/core/frame/LocalFrame.cpp | 
| index ff443ff96ca1c4c2c1369ea64adf988ef5127043..13876a85aca9cba18a9a9c7eb252709c4769ec99 100644 | 
| --- a/Source/core/frame/LocalFrame.cpp | 
| +++ b/Source/core/frame/LocalFrame.cpp | 
| @@ -269,6 +269,12 @@ void LocalFrame::detach() | 
| script().clearForClose(); | 
| InspectorInstrumentation::frameDetachedFromParent(this); | 
| Frame::detach(); | 
| +#if ENABLE(OILPAN) | 
| + // Clear the FrameLoader right here rather than during | 
| + // finalization. Too late to access various heap objects at that | 
| + // stage. | 
| + loader().clear(); | 
| +#endif | 
| } | 
| void LocalFrame::disconnectOwnerElement() | 
| @@ -282,12 +288,6 @@ void LocalFrame::disconnectOwnerElement() | 
| for (const auto& pluginElement : m_pluginElements) | 
| pluginElement->disconnectContentFrame(); | 
| m_pluginElements.clear(); | 
| - | 
| - // Clear the FrameView and FrameLoader right here rather than | 
| - // during finalization. Too late to access various heap objects | 
| - // at that stage. | 
| - setView(nullptr); | 
| 
dcheng
2014/10/24 20:03:51
One quick question--is this getting handled elsewh
 
sof
2014/10/24 20:05:41
Yes, 5 lines up in LocalFrame::detach().
 | 
| - loader().clear(); | 
| #endif | 
| } | 
| Frame::disconnectOwnerElement(); |