Skip to content
Permalink
Browse files
2011-07-01 Nate Chapin <japhet@chromium.org>
        Test for https://bugs.webkit.org/show_bug.cgi?id=63835.

        Reviewed by Dmitry Titov.

        * fast/workers/worker-finish-crash-expected.txt: Added.
        * fast/workers/worker-finish-crash.html: Added.
2011-07-01  Nate Chapin  <japhet@chromium.org>

        Ensure WorkerScriptLoader::notifyFinished() doesn't re-enter.
        https://bugs.webkit.org/show_bug.cgi?id=63835

        Reviewed by Dmitry Titov.

        Test: fast/workers/worker-finish-crash.html

        * workers/WorkerScriptLoader.cpp:
        (WebCore::WorkerScriptLoader::WorkerScriptLoader):
        (WebCore::WorkerScriptLoader::notifyFinished):
        * workers/WorkerScriptLoader.h:

Canonical link: https://commits.webkit.org/79551@main
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@90284 268f45cc-cd09-0410-ab3c-d52691b4dbfc
  • Loading branch information
natechapin committed Jul 1, 2011
1 parent 67489b6 commit e865352b8a557ed2145157e012c5eadebcf659de
Showing 6 changed files with 51 additions and 2 deletions.
@@ -1,3 +1,12 @@
2011-07-01 Nate Chapin <japhet@chromium.org>

Test for https://bugs.webkit.org/show_bug.cgi?id=63835.

Reviewed by Dmitry Titov.

* fast/workers/worker-finish-crash-expected.txt: Added.
* fast/workers/worker-finish-crash.html: Added.

2011-07-01 Mihai Parparita <mihaip@chromium.org>

Reviewed by Darin Fisher.
@@ -0,0 +1,3 @@
Test to ensure that finishing a Worker won't re-enter. We pass if we don't crash.


@@ -0,0 +1,18 @@
<body>
<p>Test to ensure that finishing a Worker won't re-enter. We pass if we don't crash.</p>
<script>

if (window.layoutTestController) {
layoutTestController.dumpAsText();
layoutTestController.waitUntilDone();
}

var worker = new Worker("does-not-exist.js");
worker.onerror = function() {
window.stop();
if (window.layoutTestController)
layoutTestController.notifyDone();
}

</script>
</body>
@@ -1,3 +1,17 @@
2011-07-01 Nate Chapin <japhet@chromium.org>

Ensure WorkerScriptLoader::notifyFinished() doesn't re-enter.
https://bugs.webkit.org/show_bug.cgi?id=63835

Reviewed by Dmitry Titov.

Test: fast/workers/worker-finish-crash.html

* workers/WorkerScriptLoader.cpp:
(WebCore::WorkerScriptLoader::WorkerScriptLoader):
(WebCore::WorkerScriptLoader::notifyFinished):
* workers/WorkerScriptLoader.h:

2011-07-01 Adrienne Walker <enne@google.com>

[chromium] Upload root layer textures first so that it is less likely to be skipped
@@ -52,6 +52,7 @@ WorkerScriptLoader::WorkerScriptLoader(ResourceRequestBase::TargetType targetTyp
, m_failed(false)
, m_identifier(0)
, m_targetType(targetType)
, m_finishing(false)
{
}

@@ -181,8 +182,11 @@ void WorkerScriptLoader::notifyError()

void WorkerScriptLoader::notifyFinished()
{
if (m_client)
m_client->notifyFinished();
if (!m_client || m_finishing)
return;

m_finishing = true;
m_client->notifyFinished();
}

} // namespace WebCore
@@ -92,6 +92,7 @@ namespace WebCore {
bool m_failed;
unsigned long m_identifier;
ResourceRequestBase::TargetType m_targetType;
bool m_finishing;
};

} // namespace WebCore

0 comments on commit e865352

Please sign in to comment.