| Index: Source/core/dom/MainThreadTaskRunner.h
|
| diff --git a/Source/core/dom/MainThreadTaskRunner.h b/Source/core/dom/MainThreadTaskRunner.h
|
| index c3c9287cc01706ceca563ad8e312d6a97fdacde3..dfd414ad44d950c71bf0819c0616f3bf12bcefd3 100644
|
| --- a/Source/core/dom/MainThreadTaskRunner.h
|
| +++ b/Source/core/dom/MainThreadTaskRunner.h
|
| @@ -29,7 +29,7 @@
|
|
|
| #include "core/CoreExport.h"
|
| #include "platform/Timer.h"
|
| -
|
| +#include "platform/heap/Handle.h"
|
| #include "wtf/FastAllocBase.h"
|
| #include "wtf/Noncopyable.h"
|
| #include "wtf/OwnPtr.h"
|
| @@ -42,15 +42,17 @@ namespace blink {
|
| class ExecutionContext;
|
| class ExecutionContextTask;
|
|
|
| -class CORE_EXPORT MainThreadTaskRunner {
|
| +class CORE_EXPORT MainThreadTaskRunner final : public NoBaseWillBeGarbageCollectedFinalized<MainThreadTaskRunner> {
|
| WTF_MAKE_NONCOPYABLE(MainThreadTaskRunner);
|
| - WTF_MAKE_FAST_ALLOCATED(MainThreadTaskRunner);
|
| + WTF_MAKE_FAST_ALLOCATED_WILL_BE_REMOVED(MainThreadTaskRunner);
|
|
|
| public:
|
| - static PassOwnPtr<MainThreadTaskRunner> create(ExecutionContext*);
|
| + static PassOwnPtrWillBeRawPtr<MainThreadTaskRunner> create(ExecutionContext*);
|
|
|
| ~MainThreadTaskRunner();
|
|
|
| + DECLARE_TRACE();
|
| +
|
| void postTask(const WebTraceLocation&, PassOwnPtr<ExecutionContextTask>); // Executes the task on context's thread asynchronously.
|
| void postInspectorTask(const WebTraceLocation&, PassOwnPtr<ExecutionContextTask>);
|
| void perform(PassOwnPtr<ExecutionContextTask>, bool);
|
| @@ -63,16 +65,20 @@ private:
|
|
|
| void pendingTasksTimerFired(Timer<MainThreadTaskRunner>*);
|
|
|
| - ExecutionContext* m_context;
|
| + WeakPtrWillBeRawPtr<MainThreadTaskRunner> createWeakPointerToSelf();
|
| +
|
| + RawPtrWillBeMember<ExecutionContext> m_context;
|
| +#if !ENABLE(OILPAN)
|
| WeakPtrFactory<MainThreadTaskRunner> m_weakFactory;
|
| +#endif
|
| Timer<MainThreadTaskRunner> m_pendingTasksTimer;
|
| Vector<OwnPtr<ExecutionContextTask>> m_pendingTasks;
|
| bool m_suspended;
|
| };
|
|
|
| -inline PassOwnPtr<MainThreadTaskRunner> MainThreadTaskRunner::create(ExecutionContext* context)
|
| +inline PassOwnPtrWillBeRawPtr<MainThreadTaskRunner> MainThreadTaskRunner::create(ExecutionContext* context)
|
| {
|
| - return adoptPtr(new MainThreadTaskRunner(context));
|
| + return adoptPtrWillBeNoop(new MainThreadTaskRunner(context));
|
| }
|
|
|
| } // namespace
|
|
|