Changeset 273230 in webkit


Ignore:
Timestamp:
Feb 22, 2021 12:27:26 AM (3 years ago)
Author:
Fujii Hironori
Message:

RunLoop::threadWillExit is doing m_nextIteration.clear() without locking m_nextIterationLock
https://bugs.webkit.org/show_bug.cgi?id=221115

Reviewed by Yusuke Suzuki.

GKT and WPE ports were observing a random assertion failure in
Deque::append in RunLoop::dispatch.

  • wtf/RunLoop.cpp:

(WTF::RunLoop::threadWillExit): Lock m_nextIterationLock before doing m_nextIteration.clear().

Location:
trunk/Source/WTF
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WTF/ChangeLog

    r273221 r273230  
     12021-02-22  Fujii Hironori  <Hironori.Fujii@sony.com>
     2
     3        RunLoop::threadWillExit is doing m_nextIteration.clear() without locking m_nextIterationLock
     4        https://bugs.webkit.org/show_bug.cgi?id=221115
     5
     6        Reviewed by Yusuke Suzuki.
     7
     8        GKT and WPE ports were observing a random assertion failure in
     9        Deque::append in RunLoop::dispatch.
     10
     11        * wtf/RunLoop.cpp:
     12        (WTF::RunLoop::threadWillExit): Lock m_nextIterationLock before doing m_nextIteration.clear().
     13
    1142021-02-21  Simon Fraser  <simon.fraser@apple.com>
    215
  • trunk/Source/WTF/wtf/RunLoop.cpp

    r270496 r273230  
    175175{
    176176    m_currentIteration.clear();
    177     m_nextIteration.clear();
     177    {
     178        auto locker = holdLock(m_nextIterationLock);
     179        m_nextIteration.clear();
     180    }
    178181}
    179182
Note: See TracChangeset for help on using the changeset viewer.