diff --git a/src/protocols/CommitTiming.cpp b/src/protocols/CommitTiming.cpp index c1fca990..9cc2da83 100644 --- a/src/protocols/CommitTiming.cpp +++ b/src/protocols/CommitTiming.cpp @@ -39,11 +39,11 @@ CCommitTimerResource::CCommitTimerResource(UP&& resource_, SP< if (!state->timer) { state->timer = makeShared( state->pendingTimeout, - [this, state](SP self, void* data) { - if (!m_surface || !state) + [surface = m_surface, state](SP self, void* data) { + if (!surface || !state) return; - m_surface->m_stateQueue.unlock(state, LOCK_REASON_TIMER); + surface->m_stateQueue.unlock(state, LOCK_REASON_TIMER); }, nullptr); g_pEventLoopManager->addTimer(state->timer);