[SCM] WebKit Debian packaging branch, webkit-1.1, updated. upstream/1.1.22-985-g3c00f00
dimich at chromium.org
dimich at chromium.org
Wed Mar 17 17:58:03 UTC 2010
The following commit has been merged in the webkit-1.1 branch:
commit 970c1e62de63a3838f68ee99d6fabb8b6d7f4e5c
Author: dimich at chromium.org <dimich at chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Wed Feb 24 02:05:46 2010 +0000
Chromium: Use V8::TerminateExecution to actually terminate workers.
https://bugs.webkit.org/show_bug.cgi?id=35137
Reviewed by David Levin.
Test: existing fast/workers/stress-js-execution.html which is currently failing
on Mac and Linux bots for Chromium.
* bindings/v8/WorkerContextExecutionProxy.cpp:
(WebCore::WorkerContextExecutionProxy::evaluate):
* bindings/v8/WorkerScriptController.cpp:
(WebCore::WorkerScriptController::forbidExecution):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@55180 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index cacc673..f606761 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,18 @@
+2010-02-23 Dmitry Titov <dimich at chromium.org>
+
+ Reviewed by David Levin.
+
+ Chromium: Use V8::TerminateExecution to actually terminate workers.
+ https://bugs.webkit.org/show_bug.cgi?id=35137
+
+ Test: existing fast/workers/stress-js-execution.html which is currently failing
+ on Mac and Linux bots for Chromium.
+
+ * bindings/v8/WorkerContextExecutionProxy.cpp:
+ (WebCore::WorkerContextExecutionProxy::evaluate):
+ * bindings/v8/WorkerScriptController.cpp:
+ (WebCore::WorkerScriptController::forbidExecution):
+
2010-02-23 Enrica Casucci <enrica at apple.com>
Reviewed by Simon Fraser.
diff --git a/WebCore/bindings/v8/WorkerContextExecutionProxy.cpp b/WebCore/bindings/v8/WorkerContextExecutionProxy.cpp
index b7e147f..d50e876 100644
--- a/WebCore/bindings/v8/WorkerContextExecutionProxy.cpp
+++ b/WebCore/bindings/v8/WorkerContextExecutionProxy.cpp
@@ -183,6 +183,9 @@ ScriptValue WorkerContextExecutionProxy::evaluate(const String& script, const St
v8::Handle<v8::Script> compiledScript = V8Proxy::compileScript(scriptString, fileName, baseLine);
v8::Local<v8::Value> result = runScript(compiledScript);
+ if (!exceptionCatcher.CanContinue())
+ return ScriptValue();
+
if (exceptionCatcher.HasCaught()) {
v8::Local<v8::Message> message = exceptionCatcher.Message();
state->hadException = true;
diff --git a/WebCore/bindings/v8/WorkerScriptController.cpp b/WebCore/bindings/v8/WorkerScriptController.cpp
index f2311bf..38063c0 100644
--- a/WebCore/bindings/v8/WorkerScriptController.cpp
+++ b/WebCore/bindings/v8/WorkerScriptController.cpp
@@ -90,6 +90,7 @@ void WorkerScriptController::forbidExecution()
// This function is called from another thread.
MutexLocker lock(m_sharedDataMutex);
m_executionForbidden = true;
+ v8::V8::TerminateExecution();
}
void WorkerScriptController::setException(ScriptValue exception)
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list