Chromium Code Reviews| Index: Source/web/WebFrame.cpp |
| diff --git a/Source/web/WebFrame.cpp b/Source/web/WebFrame.cpp |
| index 7fbdac76057e344dda465878c00fb1a4cde75209..826f69d06bb99574a13a752590594315a9d81917 100644 |
| --- a/Source/web/WebFrame.cpp |
| +++ b/Source/web/WebFrame.cpp |
| @@ -8,6 +8,7 @@ |
| #include "core/frame/RemoteFrame.h" |
| #include "core/html/HTMLFrameOwnerElement.h" |
| #include "platform/UserGestureIndicator.h" |
| +#include "platform/heap/Handle.h" |
| #include "web/OpenedFrameTracker.h" |
| #include "web/WebLocalFrameImpl.h" |
| #include "web/WebRemoteFrameImpl.h" |
| @@ -28,7 +29,7 @@ Frame* toCoreFrame(const WebFrame* frame) |
| bool WebFrame::swap(WebFrame* frame) |
| { |
| using std::swap; |
| - RefPtr<Frame> oldFrame = toCoreFrame(this); |
| + RefPtrWillBeRawPtr<Frame> oldFrame = toCoreFrame(this); |
| // All child frames must be detached first. |
| oldFrame->detachChildren(); |
| @@ -230,4 +231,20 @@ WebFrame::~WebFrame() |
| m_openedFrameTracker.reset(0); |
| } |
| +void WebFrame::traceChildren(Visitor* visitor, WebFrame* frame) |
|
haraken
2014/09/22 05:35:23
Just to confirm: We just need to trace children an
sof
2014/09/22 08:26:38
I'd say so, yes - if we assume that the topmost fr
haraken
2014/09/22 08:32:55
Yeah, that's what I wanted to ask :)
If this trac
sof
2014/09/22 09:52:51
Hmm. I'm going to try to keep this WebFrame tracin
|
| +{ |
| +#if ENABLE(OILPAN) |
| + // Trace the children frames. |
| + WebFrame* child = frame ? frame->firstChild() : 0; |
| + while (child) { |
| + if (child->isWebLocalFrame()) |
| + visitor->trace(toWebLocalFrameImpl(child)); |
| + else |
| + visitor->trace(toWebRemoteFrameImpl(child)); |
| + |
| + child = child->nextSibling(); |
| + } |
| +#endif |
| +} |
| + |
| } // namespace blink |