diff options
-rw-r--r-- | src/3rdparty/webkit/JavaScriptCore/runtime/Collector.cpp | 4 | ||||
-rw-r--r-- | src/3rdparty/webkit/JavaScriptCore/runtime/JSGlobalData.h | 3 |
2 files changed, 7 insertions, 0 deletions
diff --git a/src/3rdparty/webkit/JavaScriptCore/runtime/Collector.cpp b/src/3rdparty/webkit/JavaScriptCore/runtime/Collector.cpp index 0ff97b8..f349f23 100644 --- a/src/3rdparty/webkit/JavaScriptCore/runtime/Collector.cpp +++ b/src/3rdparty/webkit/JavaScriptCore/runtime/Collector.cpp @@ -1107,6 +1107,10 @@ bool Heap::collect() markStackObjectsConservatively(); markProtectedObjects(); +#if QT_BUILD_SCRIPT_LIB + if (m_globalData->clientData) + m_globalData->clientData->mark(); +#endif if (m_markListSet && m_markListSet->size()) MarkedArgumentBuffer::markLists(*m_markListSet); if (m_globalData->exception && !m_globalData->exception.marked()) diff --git a/src/3rdparty/webkit/JavaScriptCore/runtime/JSGlobalData.h b/src/3rdparty/webkit/JavaScriptCore/runtime/JSGlobalData.h index 96a3c2c..d5202c6 100644 --- a/src/3rdparty/webkit/JavaScriptCore/runtime/JSGlobalData.h +++ b/src/3rdparty/webkit/JavaScriptCore/runtime/JSGlobalData.h @@ -65,6 +65,9 @@ namespace JSC { public: struct ClientData { virtual ~ClientData() = 0; +#ifdef QT_BUILD_SCRIPT_LIB + virtual void mark() {} +#endif }; static bool sharedInstanceExists(); |