v0.4.1
emacs-gpu 0.4.1
Bugfix release for the GNU/Linux OpenGL backend.
Fixed
- Black flicker with stale text during window resizes. The 0.4.0
partial present cached the EGL surface size; when the window manager
resized the window before Emacs processed the ConfigureNotify, the
present blitted at the stale size into a freshly reallocated buffer,
leaving an undefined (usually black) band beside the previous frame's
content for a frame. The surface size is now re-validated whenever
the buffer age cannot vouch for it, and a failed swap no longer
desynchronizes the damage-tracking ring.
Reproduced and verified in a composited X session driven end to end
(typing, held arrows, wheel scrolling, mouse drags, buffer cross-fades,
window splits, isearch, text-scale, WM resizes, occlusion): one black
flash during resizes before the fix, zero dark or duplicated-content
frames after it.
Downloads
emacs-gpu_0.4.1_amd64.ubuntu24.04.deb: Ubuntu 24.04+ / Mint 22+.emacs-gpu_0.4.1_amd64.debian12.deb: Debian 12 (bookworm).
Both include tree-sitter, native compilation (AOT) and the GStreamer
video path; they install as /usr/bin/emacs and conflict with the
distro emacs packages. EMACS_GPU_DISABLE=1 starts with the stock CPU
renderer.
The macOS app is unchanged from v0.4.0 (this bug is specific to the
OpenGL present path).