[MG_Backend] (P12 review): an ended server session's swap interval is forgotten, so the next session in the in-process display server starts at the driver's default

DirectGLES keeps the requested eglSwapInterval in a process global on purpose (a surface re-created mid-session re-applies it), and every server process used to serve one session. The in-process display server serves the next session in the same process, which then silently inherited the previous client's interval. The server backend's destruction under a transport now calls DirectGLES::ForgetRequestedSwapInterval() beside DropEveryTwinForEndedServerSession (split build only; the pull build is unchanged, G1).
This commit is contained in:
2026-09-24 14:03:47 +00:00
parent 29a82617e0
commit 7680b78621
3 changed files with 16 additions and 1 deletions
@@ -16246,6 +16246,10 @@ namespace MobileGL::MG_Backend::DirectGLES {
ApplyRequestedSwapInterval();
}
#if MOBILEGL_BUILD_DISAGGREGATED
void ForgetRequestedSwapInterval() { g_requestedSwapInterval = -1; }
#endif
Bool InitWindowSurface(NativeWindowType window) {
if (!window) return false;