Files
xterm.js/addons
Anthony Kim 32fdce592b Fix shared-atlas garble: track page changes per renderer, not consume-once
TextureAtlas.beginFrame() returned a consume-once boolean, so after a page
merge only the FIRST renderer to draw rebuilt its vertex model. Terminals
sharing the atlas via CharAtlasCache kept stale texture-page indexes/coords
and drew garbled glyphs on their next partial render (vscode#322756).

Replace the flag with a monotonic TextureAtlas.pagesVersion, bumped on page
merges and overflow-page creation. Each GlyphRenderer tracks its own
last-seen value in beginFrame(), so every terminal sharing the atlas rebuilds
its model independently. setAtlas() resets the tracker to force a rebuild
when the atlas instance changes.

WebglSharedAtlasGarble now passes (was diff ~130/255 vs tolerance 14); full
webgl addon suite 74/74 green.
2026-07-04 12:54:34 -07:00
..