Skip to content

terminal: release Kitty placement pins on eviction - #13656

Merged
mitchellh merged 1 commit into
ghostty-org:mainfrom
rockorager:kitty-eviction-pin-leak
Aug 5, 2026
Merged

mitchellh merged 1 commit into
ghostty-org:mainfrom
rockorager:kitty-eviction-pin-leak

Conversation

@rockorager

Copy link
Copy Markdown
Member

Image eviction removed associated placements from storage without deinitializing them. Pin-backed placements therefore remained registered with the screen after eviction, allowing graphics-heavy output to accumulate stale tracked pins.

Pass the owning screen through image insertion and eviction, and deinitialize each placement before removing it. Cover both the released pin and a retained image's live pin in the eviction regression test.

Image eviction removed associated placements from storage without
deinitializing them. Pin-backed placements therefore remained registered
with the screen after eviction, allowing graphics-heavy output to
accumulate stale tracked pins.

Pass the owning screen through image insertion and eviction, and
deinitialize each placement before removing it. Cover both the released
pin and a retained image's live pin in the eviction regression test.

Co-authored-by: Tim Culverhouse <tfc@ampcode.com>
@rockorager
rockorager requested review from a team as code owners August 5, 2026 23:11
@ghostty-bot ghostty-bot Bot added the vt Control sequence related label Aug 5, 2026
@mitchellh
mitchellh merged commit 8eecb8f into ghostty-org:main Aug 5, 2026
96 checks passed
@github-actions github-actions Bot added this to the 1.4.0 milestone Aug 5, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

vt Control sequence related

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants