From 6b844c142f8a4458ca187a3391e683743fd0bd96 Mon Sep 17 00:00:00 2001 From: Erik Date: Thu, 13 Aug 2026 17:21:40 +0200 Subject: [PATCH] =?UTF-8?q?docs=20#377:=20not=20reproducible=20on=20curren?= =?UTF-8?q?t=20code=20=E2=80=94=203/3=20clean=20fullscreen:true=20launches?= =?UTF-8?q?,=20evidence=20+=20disposition=20(structural=20fix=20rides=20#3?= =?UTF-8?q?88)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Fable 5 --- docs/ISSUES.md | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/docs/ISSUES.md b/docs/ISSUES.md index 348e9212..14290d36 100644 --- a/docs/ISSUES.md +++ b/docs/ISSUES.md @@ -559,7 +559,21 @@ cap and open a real bordered, scrollable popup on click.** ## #377 — Startup CRASH (0xC0000005 in Glfw.GetVideoMode) when settings.json has `fullscreen: true` -**Status:** OPEN — filed 2026-08-11. Reproduced deterministically on this +**Status:** OPEN, NOT REPRODUCIBLE on current code (2026-08-13, display +block slice 4 attempt). Three consecutive `fullscreen: true` launches on +the exact current binary (post-#387/#389/#391) all reached in-world +cleanly at the 2560x1440 desktop mode with the swapchain following +(`377-crash-repro.log` + runs 2–3; framebuffer 1280x720 → 2560x1440 → +`swapchain recreated 2560x1440 ok=True`), versus "deterministic" at +filing on 2026-08-11. Deltas since filing: #387 rewired the resize event +into swapchain recreation (changing startup-resize interleaving), the +GlfwException topology guard landed in `TryGetActiveMonitorRefreshHz`, +and the filing-day session was mid RDP/console topology handoff — the +issue's own suspected trigger. Disposition: stays OPEN awaiting +recurrence (the #387 evidence log lines now record the full chain if it +ever fires again); the structural protection — never querying/acting on +a monitor mid-mode-transition — lands with #388's state-aware apply, +which designs this crash class out rather than catching it. Reproduced deterministically on this machine: with the persisted display settings carrying `fullscreen: true` (left behind by #374's stolen dropdown click during gate 2), the client dies during `GameWindow.OnLoad` → `GameWindowCompositionPipeline.Run` →