diff options
Diffstat (limited to 'docs/design')
| -rw-r--r-- | docs/design/2026-06-10-screenshot-launch-crash-analysis.org | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/docs/design/2026-06-10-screenshot-launch-crash-analysis.org b/docs/design/2026-06-10-screenshot-launch-crash-analysis.org new file mode 100644 index 0000000..dfad9f4 --- /dev/null +++ b/docs/design/2026-06-10-screenshot-launch-crash-analysis.org @@ -0,0 +1,5 @@ +#+TITLE: screenshot.py --launch crash on ratio 2026-06-10 15:15 — roo +#+SOURCE: from archsetup +#+DATE: 2026-06-11 00:45:45 -0500 + +screenshot.py --launch crash on ratio 2026-06-10 15:15 — root cause found, harness fix is yours. Coredump stack (Hyprland 0.55.2, SIGABRT): CWindow::onX11ConfigureRequest -> CCompositor::changeWindowZOrder -> IHyprRenderer::damageMonitor -> CMonitor::isMirror. The launched app (emacs -Q, no pgtk env vars) mapped via XWayland; its configure request raced the headless-output teardown and the damage path dereferenced the removed monitor. Two fix directions for --launch: (1) wait for the client to map and close it before destroying the headless output, (2) force the Wayland backend for launched apps (e.g. GDK_BACKEND=wayland, WAYLAND_DISPLAY set, DISPLAY unset) so no XWayland surface exists to race. The other capture modes don't touch outputs and are fine. Until the fix lands, archsetup treats --launch as unsafe on live sessions (memory entry filed). Full coredump retrievable on ratio: coredumpctl info 1833 --since '2026-06-10 15:10'. |
