-
Notifications
You must be signed in to change notification settings - Fork 8.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Crash in TextBufferCellIterator::TextBufferCellIterator() when moving cursor #2986
Labels
Area-Rendering
Text rendering, emoji, complex glyph & font-fallback issues
Issue-Bug
It either shouldn't be doing this or needs an investigation.
Needs-Tag-Fix
Doesn't match tag requirements
Product-Terminal
The new Windows Terminal.
Resolution-Fix-Committed
Fix is checked in, but it might be 3-4 weeks until a release.
Severity-Crash
Crashes are real bad news.
Comments
ghost
added
Needs-Triage
It's a new issue that the core contributor team needs to triage at the next triage meeting
Needs-Tag-Fix
Doesn't match tag requirements
labels
Sep 30, 2019
This'll be fixed by #2965 |
DHowett-MSFT
added
Area-Rendering
Text rendering, emoji, complex glyph & font-fallback issues
Product-Terminal
The new Windows Terminal.
Issue-Bug
It either shouldn't be doing this or needs an investigation.
Severity-Crash
Crashes are real bad news.
and removed
Needs-Triage
It's a new issue that the core contributor team needs to triage at the next triage meeting
labels
Sep 30, 2019
5 tasks
@DHowett-MSFT Should this issue be added to milestone 1910? This is definitely a release-blocker. |
ghost
added
Needs-Tag-Fix
Doesn't match tag requirements
Resolution-Fix-Committed
Fix is checked in, but it might be 3-4 weeks until a release.
and removed
Help Wanted
We encourage anyone to jump in on these.
In-PR
This issue has a related PR
labels
Oct 18, 2019
5 tasks
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
Area-Rendering
Text rendering, emoji, complex glyph & font-fallback issues
Issue-Bug
It either shouldn't be doing this or needs an investigation.
Needs-Tag-Fix
Doesn't match tag requirements
Product-Terminal
The new Windows Terminal.
Resolution-Fix-Committed
Fix is checked in, but it might be 3-4 weeks until a release.
Severity-Crash
Crashes are real bad news.
Environment
Windows 10.0.18362.0,
Windows Terminal running in Debug mode, off commit 1caece7
Any other software?
The micro terminal text editor, with a few custom keybinds, as follows:
Steps to reproduce
I can easily reproduce this in
micro
, but I've had crashes from what miiiight be this issue in non-interactive-mode apps as well. The steps that tend to trigger this are as follows:micro
. The shell doesn't seem to matter.Expected behavior
The text is highlighted one word to the left. Old Conhost seems to be able to handle this.
Actual behavior
Crashiness.
Additional Information
I ran this in Visual Studio to capture some debug output. Here's the stack trace:
At the time of this particular crash,
TextBufferCellIterator::TextBufferCellIterator()
received apos
argument with with dimensions120x26
, and alimits
arg with an LT of0,0
and a RB of119, 9028
, so altogether a[120x9029]
-sized viewport.Judging by the
failure
object up in WIL'sThrowExceptionInternal
, the issue seems to be line 46 oftextBufferCellIterator.cpp
,THROW_HR_IF(E_INVALIDARG, !limits.IsInBounds(pos));
.Some further digging reveals that
Viewport::IsInBounds(const COORD& pos)
is violating the "pos.X < RightExclusive()
" constraint.pos.X
is _exactly120
, whileRightExclusive()
also returns exactly120
.Just Ctrl+Arrowing around in Micro doesn't usually trigger this, although I can occasionally get crashes to occur when I'm at the extreme left edge of a line while navigating leftward. Ctrl+Shift+Arrow is extremely reliable at triggering crashes, however.
The text was updated successfully, but these errors were encountered: