Diff
Modified: trunk/Source/WebCore/CMakeLists.txt (108953 => 108954)
--- trunk/Source/WebCore/CMakeLists.txt 2012-02-27 05:05:49 UTC (rev 108953)
+++ trunk/Source/WebCore/CMakeLists.txt 2012-02-27 05:10:08 UTC (rev 108954)
@@ -535,6 +535,7 @@
dom/Comment.cpp
dom/CompositionEvent.cpp
dom/ContainerNode.cpp
+ dom/ContextDestructionObserver.cpp
dom/CustomEvent.cpp
dom/DatasetDOMStringMap.cpp
dom/DecodedDataDocumentParser.cpp
Modified: trunk/Source/WebCore/ChangeLog (108953 => 108954)
--- trunk/Source/WebCore/ChangeLog 2012-02-27 05:05:49 UTC (rev 108953)
+++ trunk/Source/WebCore/ChangeLog 2012-02-27 05:10:08 UTC (rev 108954)
@@ -1,3 +1,37 @@
+2012-02-26 Adam Barth <[email protected]>
+
+ ContextDestructionObserver should live in its own file
+ https://bugs.webkit.org/show_bug.cgi?id=79619
+
+ Reviewed by Hajime Morita.
+
+ WebKit prefers to have one class per file. (This patch is paying a
+ build system hacking debt I incurred earlier.)
+
+ * CMakeLists.txt:
+ * GNUmakefile.list.am:
+ * Target.pri:
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * dom/ActiveDOMObject.cpp:
+ (WebCore):
+ * dom/ActiveDOMObject.h:
+ (ActiveDOMObject):
+ (WebCore::ActiveDOMObject::suspendIfNeededCalled):
+ (WebCore::ActiveDOMObject::setPendingActivity):
+ (WebCore::ActiveDOMObject::unsetPendingActivity):
+ * dom/ContextDestructionObserver.cpp: Added.
+ (WebCore):
+ (WebCore::ContextDestructionObserver::ContextDestructionObserver):
+ (WebCore::ContextDestructionObserver::~ContextDestructionObserver):
+ (WebCore::ContextDestructionObserver::contextDestroyed):
+ * dom/ContextDestructionObserver.h: Added.
+ (WebCore):
+ (ContextDestructionObserver):
+ (WebCore::ContextDestructionObserver::scriptExecutionContext):
+ * dom/DOMAllInOne.cpp:
+
2012-02-26 Dirk Schulze <[email protected]>
Cleanup of Adobes copyright text. The text got harmonized with copyright texts of other companies.
Modified: trunk/Source/WebCore/GNUmakefile.list.am (108953 => 108954)
--- trunk/Source/WebCore/GNUmakefile.list.am 2012-02-27 05:05:49 UTC (rev 108953)
+++ trunk/Source/WebCore/GNUmakefile.list.am 2012-02-27 05:10:08 UTC (rev 108954)
@@ -1552,6 +1552,8 @@
Source/WebCore/dom/ContainerNodeAlgorithms.h \
Source/WebCore/dom/ContainerNode.cpp \
Source/WebCore/dom/ContainerNode.h \
+ Source/WebCore/dom/ContextDestructionObserver.cpp \
+ Source/WebCore/dom/ContextDestructionObserver.h \
Source/WebCore/dom/CrossThreadTask.h \
Source/WebCore/dom/CustomEvent.cpp \
Source/WebCore/dom/CustomEvent.h \
Modified: trunk/Source/WebCore/Target.pri (108953 => 108954)
--- trunk/Source/WebCore/Target.pri 2012-02-27 05:05:49 UTC (rev 108953)
+++ trunk/Source/WebCore/Target.pri 2012-02-27 05:10:08 UTC (rev 108954)
@@ -488,6 +488,7 @@
dom/Comment.cpp \
dom/CompositionEvent.cpp \
dom/ContainerNode.cpp \
+ dom/ContextDestructionObserver.cpp \
dom/CustomEvent.cpp \
dom/DecodedDataDocumentParser.cpp \
dom/DeviceMotionController.cpp \
Modified: trunk/Source/WebCore/WebCore.gypi (108953 => 108954)
--- trunk/Source/WebCore/WebCore.gypi 2012-02-27 05:05:49 UTC (rev 108953)
+++ trunk/Source/WebCore/WebCore.gypi 2012-02-27 05:10:08 UTC (rev 108954)
@@ -578,6 +578,7 @@
'dom/Clipboard.h',
'dom/ClipboardAccessPolicy.h',
'dom/ContainerNode.h',
+ 'dom/ContextDestructionObserver.h',
'dom/DOMImplementation.h',
'dom/DOMTimeStamp.h',
'dom/DeviceOrientation.h',
@@ -5003,6 +5004,7 @@
'dom/CompositionEvent.h',
'dom/ContainerNode.cpp',
'dom/ContainerNodeAlgorithms.h',
+ 'dom/ContextDestructionObserver.cpp',
'dom/CrossThreadTask.h',
'dom/CustomEvent.cpp',
'dom/CustomEvent.h',
Modified: trunk/Source/WebCore/WebCore.vcproj/WebCore.vcproj (108953 => 108954)
--- trunk/Source/WebCore/WebCore.vcproj/WebCore.vcproj 2012-02-27 05:05:49 UTC (rev 108953)
+++ trunk/Source/WebCore/WebCore.vcproj/WebCore.vcproj 2012-02-27 05:10:08 UTC (rev 108954)
@@ -46970,6 +46970,62 @@
>
</File>
<File
+ RelativePath="..\dom\ContextDestructionObserver.cpp"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Production|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath="..\dom\ContextDestructionObserver.h"
+ >
+ </File>
+ <File
RelativePath="..\dom\CrossThreadTask.h"
>
</File>
Modified: trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj (108953 => 108954)
--- trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj 2012-02-27 05:05:49 UTC (rev 108953)
+++ trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj 2012-02-27 05:10:08 UTC (rev 108954)
@@ -3350,6 +3350,8 @@
975CA28B130365F800E99AD9 /* Crypto.h in Headers */ = {isa = PBXBuildFile; fileRef = 975CA288130365F800E99AD9 /* Crypto.h */; };
975CA2A11303679D00E99AD9 /* JSCrypto.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 975CA29F1303679D00E99AD9 /* JSCrypto.cpp */; };
975CA2A21303679D00E99AD9 /* JSCrypto.h in Headers */ = {isa = PBXBuildFile; fileRef = 975CA2A01303679D00E99AD9 /* JSCrypto.h */; };
+ 97627B8D14FB3CEE002CDCA1 /* ContextDestructionObserver.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 97627B8B14FB3CEE002CDCA1 /* ContextDestructionObserver.cpp */; };
+ 97627B8E14FB3CEE002CDCA1 /* ContextDestructionObserver.h in Headers */ = {isa = PBXBuildFile; fileRef = 97627B8C14FB3CEE002CDCA1 /* ContextDestructionObserver.h */; settings = {ATTRIBUTES = (Private, ); }; };
97665013144FAA4200F6BB51 /* EventFactory.h in Headers */ = {isa = PBXBuildFile; fileRef = 97665011144FAA4200F6BB51 /* EventFactory.h */; };
9766504F144FBFFE00F6BB51 /* EventFactory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9766504E144FBFFE00F6BB51 /* EventFactory.cpp */; };
9767CE0B145ABC13005E64DB /* ExceptionHeaders.h in Headers */ = {isa = PBXBuildFile; fileRef = 9767CE09145ABC12005E64DB /* ExceptionHeaders.h */; };
@@ -10233,6 +10235,8 @@
975CA289130365F800E99AD9 /* Crypto.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = Crypto.idl; sourceTree = "<group>"; };
975CA29F1303679D00E99AD9 /* JSCrypto.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSCrypto.cpp; sourceTree = "<group>"; };
975CA2A01303679D00E99AD9 /* JSCrypto.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSCrypto.h; sourceTree = "<group>"; };
+ 97627B8B14FB3CEE002CDCA1 /* ContextDestructionObserver.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ContextDestructionObserver.cpp; sourceTree = "<group>"; };
+ 97627B8C14FB3CEE002CDCA1 /* ContextDestructionObserver.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ContextDestructionObserver.h; sourceTree = "<group>"; };
97665011144FAA4200F6BB51 /* EventFactory.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EventFactory.h; sourceTree = "<group>"; };
9766504E144FBFFE00F6BB51 /* EventFactory.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = EventFactory.cpp; sourceTree = "<group>"; };
9767CE09145ABC12005E64DB /* ExceptionHeaders.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ExceptionHeaders.h; sourceTree = "<group>"; };
@@ -20626,6 +20630,8 @@
A81872140977D3C0005826D9 /* ContainerNode.cpp */,
A81872110977D3C0005826D9 /* ContainerNode.h */,
E1A1470711102B1500EEC0F3 /* ContainerNodeAlgorithms.h */,
+ 97627B8B14FB3CEE002CDCA1 /* ContextDestructionObserver.cpp */,
+ 97627B8C14FB3CEE002CDCA1 /* ContextDestructionObserver.h */,
2E3FAA0811A36BF100576624 /* CrossThreadTask.h */,
62CD32561157E57C0063B0A7 /* CustomEvent.cpp */,
62CD32571157E57C0063B0A7 /* CustomEvent.h */,
@@ -21458,6 +21464,7 @@
57B791A614C6A62900F202D1 /* ContentSelectorQuery.h in Headers */,
41D015CA0F4B5C71004A662F /* ContentType.h in Headers */,
370D6EDB138454550044103E /* ContentTypeParser.h in Headers */,
+ 97627B8E14FB3CEE002CDCA1 /* ContextDestructionObserver.h in Headers */,
93B6A0E60B0BCA5C00F5027A /* ContextMenu.h in Headers */,
065AD4F50B0C2EDA005A2B1D /* ContextMenuClient.h in Headers */,
065AD4F70B0C2EDA005A2B1D /* ContextMenuController.h in Headers */,
@@ -24890,6 +24897,7 @@
57B791A514C6A62900F202D1 /* ContentSelectorQuery.cpp in Sources */,
41D015CB0F4B5C71004A662F /* ContentType.cpp in Sources */,
370D6EDA138454550044103E /* ContentTypeParser.cpp in Sources */,
+ 97627B8D14FB3CEE002CDCA1 /* ContextDestructionObserver.cpp in Sources */,
065AD4F60B0C2EDA005A2B1D /* ContextMenuController.cpp in Sources */,
06027CB30B1CC03D00884B2D /* ContextMenuItemMac.mm in Sources */,
93B6A0EA0B0BCA8400F5027A /* ContextMenuMac.mm in Sources */,
Modified: trunk/Source/WebCore/dom/ActiveDOMObject.cpp (108953 => 108954)
--- trunk/Source/WebCore/dom/ActiveDOMObject.cpp 2012-02-27 05:05:49 UTC (rev 108953)
+++ trunk/Source/WebCore/dom/ActiveDOMObject.cpp 2012-02-27 05:10:08 UTC (rev 108954)
@@ -33,30 +33,6 @@
namespace WebCore {
-ContextDestructionObserver::ContextDestructionObserver(ScriptExecutionContext* scriptExecutionContext)
- : m_scriptExecutionContext(scriptExecutionContext)
-{
- if (!m_scriptExecutionContext)
- return;
-
- ASSERT(m_scriptExecutionContext->isContextThread());
- m_scriptExecutionContext->didCreateDestructionObserver(this);
-}
-
-ContextDestructionObserver::~ContextDestructionObserver()
-{
- if (!m_scriptExecutionContext)
- return;
-
- ASSERT(m_scriptExecutionContext->isContextThread());
- m_scriptExecutionContext->willDestroyDestructionObserver(this);
-}
-
-void ContextDestructionObserver::contextDestroyed()
-{
- m_scriptExecutionContext = 0;
-}
-
ActiveDOMObject::ActiveDOMObject(ScriptExecutionContext* scriptExecutionContext, void* upcastPointer)
: ContextDestructionObserver(scriptExecutionContext)
, m_pendingActivityCount(0)
Modified: trunk/Source/WebCore/dom/ActiveDOMObject.h (108953 => 108954)
--- trunk/Source/WebCore/dom/ActiveDOMObject.h 2012-02-27 05:05:49 UTC (rev 108953)
+++ trunk/Source/WebCore/dom/ActiveDOMObject.h 2012-02-27 05:10:08 UTC (rev 108954)
@@ -27,78 +27,63 @@
#ifndef ActiveDOMObject_h
#define ActiveDOMObject_h
+#include "ContextDestructionObserver.h"
#include <wtf/Assertions.h>
namespace WebCore {
- class ScriptExecutionContext;
+class ActiveDOMObject : public ContextDestructionObserver {
+public:
+ ActiveDOMObject(ScriptExecutionContext*, void* upcastPointer);
- // FIXME: Move this class to it's own file.
- class ContextDestructionObserver {
- public:
- explicit ContextDestructionObserver(ScriptExecutionContext*);
- virtual void contextDestroyed();
-
- ScriptExecutionContext* scriptExecutionContext() const { return m_scriptExecutionContext; }
-
- protected:
- virtual ~ContextDestructionObserver();
-
- ScriptExecutionContext* m_scriptExecutionContext;
- };
-
- class ActiveDOMObject : public ContextDestructionObserver {
- public:
- ActiveDOMObject(ScriptExecutionContext*, void* upcastPointer);
-
- // suspendIfNeeded() should be called exactly once after object construction to synchronize
- // the suspend state with that in ScriptExecutionContext.
- void suspendIfNeeded();
+ // suspendIfNeeded() should be called exactly once after object construction to synchronize
+ // the suspend state with that in ScriptExecutionContext.
+ void suspendIfNeeded();
#if !ASSERT_DISABLED
- bool suspendIfNeededCalled() const { return m_suspendIfNeededCalled; }
+ bool suspendIfNeededCalled() const { return m_suspendIfNeededCalled; }
#endif
- virtual bool hasPendingActivity() const;
+ virtual bool hasPendingActivity() const;
- // canSuspend() is used by the caller if there is a choice between suspending and stopping.
- // For example, a page won't be suspended and placed in the back/forward cache if it has
- // the objects that can not be suspended.
- // However, 'suspend' can be called even if canSuspend() would return 'false'. That
- // happens in step-by-step JS debugging for example - in this case it would be incorrect
- // to stop the object. Exact semantics of suspend is up to the object then.
- enum ReasonForSuspension {
- _javascript_DebuggerPaused,
- WillShowDialog,
- DocumentWillBecomeInactive
- };
- virtual bool canSuspend() const;
- virtual void suspend(ReasonForSuspension);
- virtual void resume();
- virtual void stop();
+ // canSuspend() is used by the caller if there is a choice between suspending and stopping.
+ // For example, a page won't be suspended and placed in the back/forward cache if it has
+ // the objects that can not be suspended.
+ // However, 'suspend' can be called even if canSuspend() would return 'false'. That
+ // happens in step-by-step JS debugging for example - in this case it would be incorrect
+ // to stop the object. Exact semantics of suspend is up to the object then.
+ enum ReasonForSuspension {
+ _javascript_DebuggerPaused,
+ WillShowDialog,
+ DocumentWillBecomeInactive
+ };
+ virtual bool canSuspend() const;
+ virtual void suspend(ReasonForSuspension);
+ virtual void resume();
+ virtual void stop();
- template<class T> void setPendingActivity(T* thisObject)
- {
- ASSERT(thisObject == this);
- thisObject->ref();
- m_pendingActivityCount++;
- }
+ template<class T> void setPendingActivity(T* thisObject)
+ {
+ ASSERT(thisObject == this);
+ thisObject->ref();
+ m_pendingActivityCount++;
+ }
- template<class T> void unsetPendingActivity(T* thisObject)
- {
- ASSERT(m_pendingActivityCount > 0);
- --m_pendingActivityCount;
- thisObject->deref();
- }
+ template<class T> void unsetPendingActivity(T* thisObject)
+ {
+ ASSERT(m_pendingActivityCount > 0);
+ --m_pendingActivityCount;
+ thisObject->deref();
+ }
- protected:
- virtual ~ActiveDOMObject();
+protected:
+ virtual ~ActiveDOMObject();
- private:
- unsigned m_pendingActivityCount;
+private:
+ unsigned m_pendingActivityCount;
#if !ASSERT_DISABLED
- bool m_suspendIfNeededCalled;
+ bool m_suspendIfNeededCalled;
#endif
- };
+};
} // namespace WebCore
Added: trunk/Source/WebCore/dom/ContextDestructionObserver.cpp (0 => 108954)
--- trunk/Source/WebCore/dom/ContextDestructionObserver.cpp (rev 0)
+++ trunk/Source/WebCore/dom/ContextDestructionObserver.cpp 2012-02-27 05:10:08 UTC (rev 108954)
@@ -0,0 +1,58 @@
+/*
+ * Copyright (C) 2008 Apple Inc. All Rights Reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE COMPUTER, INC. OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+
+#include "config.h"
+#include "ContextDestructionObserver.h"
+
+#include "ScriptExecutionContext.h"
+
+namespace WebCore {
+
+ContextDestructionObserver::ContextDestructionObserver(ScriptExecutionContext* scriptExecutionContext)
+ : m_scriptExecutionContext(scriptExecutionContext)
+{
+ if (!m_scriptExecutionContext)
+ return;
+
+ ASSERT(m_scriptExecutionContext->isContextThread());
+ m_scriptExecutionContext->didCreateDestructionObserver(this);
+}
+
+ContextDestructionObserver::~ContextDestructionObserver()
+{
+ if (!m_scriptExecutionContext)
+ return;
+
+ ASSERT(m_scriptExecutionContext->isContextThread());
+ m_scriptExecutionContext->willDestroyDestructionObserver(this);
+}
+
+void ContextDestructionObserver::contextDestroyed()
+{
+ m_scriptExecutionContext = 0;
+}
+
+} // namespace WebCore
Added: trunk/Source/WebCore/dom/ContextDestructionObserver.h (0 => 108954)
--- trunk/Source/WebCore/dom/ContextDestructionObserver.h (rev 0)
+++ trunk/Source/WebCore/dom/ContextDestructionObserver.h 2012-02-27 05:10:08 UTC (rev 108954)
@@ -0,0 +1,49 @@
+/*
+ * Copyright (C) 2008 Apple Inc. All Rights Reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE COMPUTER, INC. OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+
+#ifndef ContextDestructionObserver_h
+#define ContextDestructionObserver_h
+
+namespace WebCore {
+
+class ScriptExecutionContext;
+
+class ContextDestructionObserver {
+public:
+ explicit ContextDestructionObserver(ScriptExecutionContext*);
+ virtual void contextDestroyed();
+
+ ScriptExecutionContext* scriptExecutionContext() const { return m_scriptExecutionContext; }
+
+protected:
+ virtual ~ContextDestructionObserver();
+
+ ScriptExecutionContext* m_scriptExecutionContext;
+};
+
+} // namespace WebCore
+
+#endif // ContextDestructionObserver_h
Modified: trunk/Source/WebCore/dom/DOMAllInOne.cpp (108953 => 108954)
--- trunk/Source/WebCore/dom/DOMAllInOne.cpp 2012-02-27 05:05:49 UTC (rev 108953)
+++ trunk/Source/WebCore/dom/DOMAllInOne.cpp 2012-02-27 05:10:08 UTC (rev 108954)
@@ -43,6 +43,7 @@
#include "Comment.cpp"
#include "CompositionEvent.cpp"
#include "ContainerNode.cpp"
+#include "ContextDestructionObserver.cpp"
#include "CustomEvent.cpp"
#include "DOMCoreException.cpp"
#include "DOMImplementation.cpp"