| Index: Source/core/frame/FrameDestructionObserver.h
|
| diff --git a/Source/core/frame/FrameDestructionObserver.h b/Source/core/frame/FrameDestructionObserver.h
|
| index fd3b11a06ebb8ec1fc2769bc6ff0e219cdc999fb..1ce014568874d89b1ed8c3128b24db88e0c9da93 100644
|
| --- a/Source/core/frame/FrameDestructionObserver.h
|
| +++ b/Source/core/frame/FrameDestructionObserver.h
|
| @@ -26,24 +26,35 @@
|
| #ifndef FrameDestructionObserver_h
|
| #define FrameDestructionObserver_h
|
|
|
| +#include "platform/heap/Handle.h"
|
| +
|
| namespace blink {
|
|
|
| class LocalFrame;
|
|
|
| -class FrameDestructionObserver {
|
| +class FrameDestructionObserver : public WillBeGarbageCollectedMixin {
|
| public:
|
| explicit FrameDestructionObserver(LocalFrame*);
|
|
|
| +#if !ENABLE(OILPAN)
|
| + // Oilpan: Frame finalization can now only be observed via
|
| + // a weak callback -- deriving objects should register such
|
| + // a weak callback if they need to catch when that happens.
|
| virtual void frameDestroyed();
|
| +#endif
|
| virtual void willDetachFrameHost();
|
|
|
| LocalFrame* frame() const { return m_frame; }
|
|
|
| + virtual void trace(Visitor*);
|
| +
|
| protected:
|
| +#if !ENABLE(OILPAN)
|
| virtual ~FrameDestructionObserver();
|
| +#endif
|
| void observeFrame(LocalFrame*);
|
|
|
| - LocalFrame* m_frame;
|
| + RawPtrWillBeWeakMember<LocalFrame> m_frame;
|
| };
|
|
|
| }
|
|
|