compositor: dont unlock all states on empty commits (#13303)

we cant unlock all states on empty commits, at best tryProcess them.

for example if a state is locked and waiting for a fence to become readable,
and another commit comes in we cant unlock it until the fence has actually signaled.
This commit is contained in:
Tom Englund 2026-02-18 15:29:35 +01:00 committed by GitHub
parent 0de216e783
commit 1af260ecbe
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -512,7 +512,7 @@ void CWLSurfaceResource::scheduleState(WP<SSurfaceState> state) {
g_pEventLoopManager->doOnReadable(std::move(state->buffer->m_syncFd), [state, whenReadable]() { whenReadable(state, LOCK_REASON_FENCE); });
} else {
// state commit without a buffer.
m_stateQueue.unlock(state, LOCK_REASON_FENCE);
m_stateQueue.tryProcess();
}
}