From 98fb0212164e7a16dbc01ce0f0dfbcde94f46749 Mon Sep 17 00:00:00 2001 From: Maximilian Seidler <78690852+PointerDilemma@users.noreply.github.com> Date: Thu, 14 May 2026 16:28:14 +0200 Subject: [PATCH] lockSurface: set eglSwapInterval to 0 (#1015) Co-authored-by: tmbull --- src/core/LockSurface.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/core/LockSurface.cpp b/src/core/LockSurface.cpp index 9ab54ae..cbc990e 100644 --- a/src/core/LockSurface.cpp +++ b/src/core/LockSurface.cpp @@ -105,6 +105,11 @@ void CSessionLockSurface::configure(const Vector2D& size_, uint32_t serial_) { readyForFrame = false; return; } + + // When wayland frame callbacks are used directly, eglSwapInterval should be 0, + // otherwise eglSwapBuffers may block under some circumstances. + g_pEGL->makeCurrent(eglSurface); + eglSwapInterval(g_pEGL->eglDisplay, 0); } if (readyForFrame && !(SAMESIZE && SAMESCALE)) {