wayland desktop environment using webtech
Three bugs addressed: 1. SO_RCVTIMEO(5s) on the IPC socket was never cleared after the HELLO handshake. When the web page becomes static (no paint events for >5s), the blocking read_exact in recv_message times out, the IPC reader thread exits, and the socket is closed — causing ECONNRESET on the Electron side and permanently stalling frame delivery. Fix: clear SO_RCVTIMEO to zero (infinite) immediately after successful HELLO exchange. 2. If a VBlank event is lost or delayed (e.g. during DRM master transitions), vblank_pending stays true and all subsequent render_frame calls bail out permanently. Fix: if vblank_pending has been stuck for >500ms, force-clear it with a warning so rendering can resume. making it impossible to diagnose the black screen from logs. Fix: add INFO-level logging for first render, first page flip, first texture import, swapchain exhaustion on first frame, and vblank recovery events. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> |
||
|---|---|---|
| electron | ||
| packaging/wayland-sessions | ||
| src | ||
| .gitignore | ||
| Cargo.lock | ||
| Cargo.toml | ||
| config.example.toml | ||
| LICENSE | ||
| PKGBUILD | ||
| README.md | ||
| whatever.txt | ||
wo compositor
don't bother (woe)