From adf3101a1ac80b77209359c8d00898c49c8ecf5f Mon Sep 17 00:00:00 2001 From: Geoffrey McRae Date: Mon, 3 Aug 2026 23:38:22 +1000 Subject: [PATCH] [client] egl: fix non-DMA font atlas corruption Unbind the streamed desktop pixel upload buffer before ImGui processes CPU-backed font atlas updates. This prevents atlas pointers from being interpreted as PBO offsets when DMA is disabled, which caused newly requested glyphs to be missing. --- client/renderers/EGL/egl.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/client/renderers/EGL/egl.c b/client/renderers/EGL/egl.c index a3fe1c6c..43eda728 100644 --- a/client/renderers/EGL/egl.c +++ b/client/renderers/EGL/egl.c @@ -1533,6 +1533,9 @@ static bool egl_render(LG_Renderer * renderer, LG_RendererRotate rotate, ImGui_ImplOpenGL3_NewFrame(); if (drawOverlay) { + /* ImGui uploads atlas updates from CPU memory. The streamed desktop + * path may have left its pixel unpack buffer bound. */ + egl_stateBindBuffer(GL_PIXEL_UNPACK_BUFFER, 0); ImGui_ImplOpenGL3_RenderDrawData(igGetDrawData()); egl_stateInvalidate(); }