Index: Source/web/SuspendableScriptExecutor.h |
diff --git a/Source/web/SuspendableScriptExecutor.h b/Source/web/SuspendableScriptExecutor.h |
index ecbee08bcdafa985302e67e78c99303c65ed3a8e..8d6e07dd687bb299e37d56da2318069e86fcba04 100644 |
--- a/Source/web/SuspendableScriptExecutor.h |
+++ b/Source/web/SuspendableScriptExecutor.h |
@@ -7,7 +7,6 @@ |
#include "core/frame/SuspendableTimer.h" |
#include "platform/heap/Handle.h" |
-#include "wtf/OwnPtr.h" |
#include "wtf/Vector.h" |
namespace blink { |
@@ -16,7 +15,7 @@ class LocalFrame; |
class ScriptSourceCode; |
class WebScriptExecutionCallback; |
-class SuspendableScriptExecutor final : public RefCountedWillBeRefCountedGarbageCollected<SuspendableScriptExecutor>, public SuspendableTimer { |
+class SuspendableScriptExecutor final : public GarbageCollectedFinalized<SuspendableScriptExecutor>, public SuspendableTimer { |
WILL_BE_USING_GARBAGE_COLLECTED_MIXIN(SuspendableScriptExecutor); |
public: |
static void createAndRun(LocalFrame*, int worldID, const WillBeHeapVector<ScriptSourceCode>& sources, int extensionGroup, bool userGesture, WebScriptExecutionCallback*); |
@@ -24,9 +23,6 @@ public: |
void contextDestroyed() override; |
- // Eager finalization is needed to promptly stop this timer object. |
- // (see DOMTimer comment for more.) |
- EAGERLY_FINALIZE(); |
DECLARE_VIRTUAL_TRACE(); |
private: |
@@ -39,11 +35,16 @@ private: |
void dispose(); |
RefPtrWillBeMember<LocalFrame> m_frame; |
- int m_worldID; |
WillBeHeapVector<ScriptSourceCode> m_sources; |
+ WebScriptExecutionCallback* m_callback; |
+ |
+ SelfKeepAlive<SuspendableScriptExecutor> m_keepAlive; |
+ |
+ int m_worldID; |
int m_extensionGroup; |
+ |
bool m_userGesture; |
- WebScriptExecutionCallback* m_callback; |
+ |
#if ENABLE(ASSERT) |
bool m_disposed; |
sof
2015/08/04 14:14:40
With the self-keepalive, having this object be fin
|
#endif |