Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 046b72fc authored by Jean-Baptiste Queru's avatar Jean-Baptiste Queru Committed by Gerrit Code Review
Browse files

Merge "fix a possible deadlock when removing a layer and destroying a client"

parents 9f476fd0 e5886d91
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -1037,6 +1037,12 @@ void SurfaceFlinger::handleTransaction(uint32_t transactionFlags)
{
    ATRACE_CALL();

    // here we keep a copy of the drawing state (that is the state that's
    // going to be overwritten by handleTransactionLocked()) outside of
    // mStateLock so that the side-effects of the State assignment
    // don't happen with mStateLock held (which can cause deadlocks).
    State drawingState(mDrawingState);

    Mutex::Autolock _l(mStateLock);
    const nsecs_t now = systemTime();
    mDebugInTransaction = now;