Properly handle and test "end of buffer" in UiaTextRange #9707

Open
opened 2026-01-31 02:01:25 +00:00 by claunia · 0 comments
Owner

Originally created by @carlos-zamora on GitHub (Jul 20, 2020).

Originally assigned to: @carlos-zamora on GitHub.

When moving by unit, UiaTextRange keeps track of the last character to be the "end of the buffer". This provides significant performance improvements in our accessibility model for word navigation in particular.

However, it is still possible to create a UiaTextRange outside of that optimized buffer size. This has lead to a few bugs like #6402 and ##5243 across Terminal and ConHost.

This issue tracks taking the time to properly test this and polish this architectural change. Especially considering that this breaks a significant number of tests that already exist.

Originally created by @carlos-zamora on GitHub (Jul 20, 2020). Originally assigned to: @carlos-zamora on GitHub. When moving by unit, UiaTextRange keeps track of the last character to be the "end of the buffer". This provides significant performance improvements in our accessibility model for word navigation in particular. However, it is still possible to create a UiaTextRange outside of that optimized buffer size. This has lead to a few bugs like #6402 and ##5243 across Terminal and ConHost. This issue tracks taking the time to properly test this and polish this architectural change. Especially considering that this breaks a significant number of tests that already exist.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/terminal#9707