Closed ocalvo closed 8 months ago
Something is corrupted, I see that "this" is null in the stack frame before the crash:
On one hand we should probably debug this, but on the other hand we're trying to make AtlasEngine the default text renderer in the near term. As such, I think the best question would be:
Does this issue happen if you enable "AtlasEngine" in the "Rendering" settings?
If that doesn't fix it, I'd be somewhat stumped on how this crash occurred. In order for GetViewportInCharacters
to be called the _renderEngine
member must have been assigned, which would certainly crash if this
was a nullptr
. A concurrent deletion of this
may be possible, but I'd hope for that to be unlikely, as WinUI should not use raw pointers internally (they do though, which worries me). So maybe, hopefully, this is just a red herring, and the issue is something more trivial like...
Edit: Ah maybe since it's a Release build the this
pointer register simply wasn't preserved.
When you install the font for yourself only (i.e. in %LOCALAPPDATA%\Microsoft\Windows\Fonts
), then it will fail to work for a packaged app like Windows Terminal and maybe this results in a 0 sized "glyph cell". (It's necessary to install fonts for all users to not hit these issues.) The DWrite font cache may also be corrupted, but that's hopefully also unlikely.
On one hand we should probably debug this, but on the other hand we're trying to make AtlasEngine the default text renderer in the near term. As such, I think the best question would be:
Does this issue happen if you enable "AtlasEngine" in the "Rendering" settings?
Yes, this only happens in Windows Terminal Preview.
The issue started with Terminal defaulting to load "Consolas" as it failed to load "Meslo" (I also observed that the "dir" command also failed to render.) After that I started to see crashes. When to the Settings|Apps|'Terminal Preview' and selected "Repair" option and issue went away :(
For what it's worth... if you had the "AtlasEngine" enabled, this call stack frame would not be possible:
Microsoft.Terminal.Control.dll!Microsoft::Console::Render::DxEngine::GetViewportInCharacters
Closing since it was fixed using "Repair".
The issue came back:
I dont wnat to repair again. I will upload the terminal storage files from my use account here.
Did you try to installing Meslo for all users yet (i.e. into C:\Windows\Fonts)? I'm asking just to make sure it's not some weird variation of our known DirectWrite issue (#3257).
Windows Terminal version
1.18.2311
Windows build number
10.0.23531.0
Other Software
Meslo fonts: oh-my-posh install "Meslo" --user
Steps to reproduce
Start TErminal configure to use Meslo font
Expected Behavior
No crash
Actual Behavior