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

Commit 32006b1a authored by Rob Carr's avatar Rob Carr Committed by Automerger Merge Worker
Browse files

Merge "SurfaceFlinger: Only block calling thread on sync transactions." into...

Merge "SurfaceFlinger: Only block calling thread on sync transactions." into rvc-dev am: 1b8793a6 am: b246d90c am: 57f3a918

Change-Id: Ied00b4df22c7be9f01935c61cd699d99f20c7798
parents c0a7ca1f 57f3a918
Loading
Loading
Loading
Loading
+13 −5
Original line number Original line Diff line number Diff line
@@ -3420,18 +3420,26 @@ void SurfaceFlinger::applyTransactionState(
                                                  : Scheduler::TransactionStart::NORMAL;
                                                  : Scheduler::TransactionStart::NORMAL;
        setTransactionFlags(transactionFlags, start);
        setTransactionFlags(transactionFlags, start);


        if (flags & eAnimation) {
            mAnimTransactionPending = true;
        }

        // if this is a synchronous transaction, wait for it to take effect
        // if this is a synchronous transaction, wait for it to take effect
        // before returning.
        // before returning.
        if (flags & eSynchronous) {
        const bool synchronous = flags & eSynchronous;
            mTransactionPending = true;
        const bool syncInput = inputWindowCommands.syncInputWindows;
        if (!synchronous && !syncInput) {
            return;
        }
        }
        if (flags & eAnimation) {

            mAnimTransactionPending = true;
        if (synchronous) {
            mTransactionPending = true;
        }
        }
        if (mPendingInputWindowCommands.syncInputWindows) {
        if (syncInput) {
            mPendingSyncInputWindows = true;
            mPendingSyncInputWindows = true;
        }
        }



        // applyTransactionState can be called by either the main SF thread or by
        // applyTransactionState can be called by either the main SF thread or by
        // another process through setTransactionState.  While a given process may wish
        // another process through setTransactionState.  While a given process may wish
        // to wait on synchronous transactions, the main SF thread should never
        // to wait on synchronous transactions, the main SF thread should never