Changeset 90284 in webkit


Ignore:
Timestamp:
Jul 1, 2011 3:06:07 PM (13 years ago)
Author:
Nate Chapin
Message:

2011-07-01 Nate Chapin <Nate Chapin>

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 <Nate Chapin>

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:
Location:
trunk
Files:
2 added
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r90281 r90284  
     12011-07-01  Nate Chapin  <japhet@chromium.org>
     2
     3        Test for https://bugs.webkit.org/show_bug.cgi?id=63835.
     4
     5        Reviewed by Dmitry Titov.
     6
     7        * fast/workers/worker-finish-crash-expected.txt: Added.
     8        * fast/workers/worker-finish-crash.html: Added.
     9
    1102011-07-01  Mihai Parparita  <mihaip@chromium.org>
    211
  • trunk/Source/WebCore/ChangeLog

    r90283 r90284  
     12011-07-01  Nate Chapin  <japhet@chromium.org>
     2
     3        Ensure WorkerScriptLoader::notifyFinished() doesn't re-enter.
     4        https://bugs.webkit.org/show_bug.cgi?id=63835
     5
     6        Reviewed by Dmitry Titov.
     7
     8        Test: fast/workers/worker-finish-crash.html
     9
     10        * workers/WorkerScriptLoader.cpp:
     11        (WebCore::WorkerScriptLoader::WorkerScriptLoader):
     12        (WebCore::WorkerScriptLoader::notifyFinished):
     13        * workers/WorkerScriptLoader.h:
     14
    1152011-07-01  Adrienne Walker  <enne@google.com>
    216
  • trunk/Source/WebCore/workers/WorkerScriptLoader.cpp

    r89036 r90284  
    5353    , m_identifier(0)
    5454    , m_targetType(targetType)
     55    , m_finishing(false)
    5556{
    5657}
     
    182183void WorkerScriptLoader::notifyFinished()
    183184{
    184     if (m_client)
    185         m_client->notifyFinished();
     185    if (!m_client || m_finishing)
     186        return;
     187
     188    m_finishing = true;
     189    m_client->notifyFinished();
    186190}
    187191
  • trunk/Source/WebCore/workers/WorkerScriptLoader.h

    r89036 r90284  
    9393        unsigned long m_identifier;
    9494        ResourceRequestBase::TargetType m_targetType;
     95        bool m_finishing;
    9596    };
    9697
Note: See TracChangeset for help on using the changeset viewer.