summaryrefslogtreecommitdiff
path: root/Source/JavaScriptCore/runtime/StringRecursionChecker.h
diff options
context:
space:
mode:
authorAllan Sandfeld Jensen <allan.jensen@digia.com>2013-09-13 12:51:20 +0200
committerThe Qt Project <gerrit-noreply@qt-project.org>2013-09-19 20:50:05 +0200
commitd441d6f39bb846989d95bcf5caf387b42414718d (patch)
treee367e64a75991c554930278175d403c072de6bb8 /Source/JavaScriptCore/runtime/StringRecursionChecker.h
parent0060b2994c07842f4c59de64b5e3e430525c4b90 (diff)
downloadqtwebkit-d441d6f39bb846989d95bcf5caf387b42414718d.tar.gz
Import Qt5x2 branch of QtWebkit for Qt 5.2
Importing a new snapshot of webkit. Change-Id: I2d01ad12cdc8af8cb015387641120a9d7ea5f10c Reviewed-by: Allan Sandfeld Jensen <allan.jensen@digia.com>
Diffstat (limited to 'Source/JavaScriptCore/runtime/StringRecursionChecker.h')
-rw-r--r--Source/JavaScriptCore/runtime/StringRecursionChecker.h10
1 files changed, 6 insertions, 4 deletions
diff --git a/Source/JavaScriptCore/runtime/StringRecursionChecker.h b/Source/JavaScriptCore/runtime/StringRecursionChecker.h
index a1b4a51fe..6f236f1f1 100644
--- a/Source/JavaScriptCore/runtime/StringRecursionChecker.h
+++ b/Source/JavaScriptCore/runtime/StringRecursionChecker.h
@@ -21,6 +21,7 @@
#define StringRecursionChecker_h
#include "Interpreter.h"
+#include "VMStackBounds.h"
#include <wtf/StackStats.h>
#include <wtf/WTFThreadData.h>
@@ -49,10 +50,11 @@ private:
inline JSValue StringRecursionChecker::performCheck()
{
- const StackBounds& nativeStack = wtfThreadData().stack();
+ VM& vm = m_exec->vm();
+ const VMStackBounds nativeStack(vm, wtfThreadData().stack());
if (!nativeStack.isSafeToRecurse())
return throwStackOverflowError();
- bool alreadyVisited = !m_exec->globalData().stringRecursionCheckVisitedObjects.add(m_thisObject).isNewEntry;
+ bool alreadyVisited = !vm.stringRecursionCheckVisitedObjects.add(m_thisObject).isNewEntry;
if (alreadyVisited)
return emptyString(); // Return empty string to avoid infinite recursion.
return JSValue(); // Indicate success.
@@ -74,8 +76,8 @@ inline StringRecursionChecker::~StringRecursionChecker()
{
if (m_earlyReturnValue)
return;
- ASSERT(m_exec->globalData().stringRecursionCheckVisitedObjects.contains(m_thisObject));
- m_exec->globalData().stringRecursionCheckVisitedObjects.remove(m_thisObject);
+ ASSERT(m_exec->vm().stringRecursionCheckVisitedObjects.contains(m_thisObject));
+ m_exec->vm().stringRecursionCheckVisitedObjects.remove(m_thisObject);
}
}