Skip to content

fix: ensure that currentRow can not go out of the range#5386

Merged
Tyriar merged 1 commit intoxtermjs:masterfrom
alexkozy:safe-guards
Aug 20, 2025
Merged

fix: ensure that currentRow can not go out of the range#5386
Tyriar merged 1 commit intoxtermjs:masterfrom
alexkozy:safe-guards

Conversation

@alexkozy
Copy link
Copy Markdown
Contributor

With the code today, it is possible to get into a situation where the currentRow goes out of the range and will continue going in one direction until an out-of-memory crash.

There is no easy repro - the only one that works for me is to open an xterm inside Cursor, open the nano editor in a terminal, enter 10 one-character lines (like a, b, c, d, ...), and then make the option + click as quickly as possible.

image image

@tmm1
Copy link
Copy Markdown

tmm1 commented Aug 20, 2025

This manifests as an OOM in our usage of xterm.js

image

cc @Tyriar @meganrogge

@Tyriar Tyriar added this to the 6.0.0 milestone Aug 20, 2025
@Tyriar Tyriar self-assigned this Aug 20, 2025
Copy link
Copy Markdown
Member

@Tyriar Tyriar left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks good, thanks for the investigation!

@Tyriar Tyriar enabled auto-merge August 20, 2025 21:09
@Tyriar Tyriar merged commit 7637a2d into xtermjs:master Aug 20, 2025
12 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants