Crash in AtlasEngine::_emplaceGlyph #17948

Open
opened 2026-01-31 05:59:20 +00:00 by claunia · 0 comments
Owner

Originally created by @alabuzhev on GitHub (Jul 17, 2022).

Windows Terminal version

1.15.1862.0

Windows build number

10.0.19044.1826

Other Software

No response

Steps to reproduce

  1. Enable experimental text rendering engine in WT settings.
  2. Rename the attached Crash._emplaceGlyph.cmd.txt to Crash._emplaceGlyph.cmd.
  3. Run WT.
  4. Locate and execute Crash._emplaceGlyph.cmd.
  5. Press any key when asked.

Expected Behavior

No crash

Actual Behavior

Unhandled exception at 0x00007FFE30AE286E (ucrtbase.dll) in WindowsTerminal.exe: Fatal program exit requested.
ucrtbase.dll!abort()
ucrtbase.dll!terminate()
[Inline Frame] Microsoft.Terminal.Control.dll!gsl::details::terminate() Line 116
Microsoft.Terminal.Control.dll!Microsoft::Console::Render::AtlasEngine::_emplaceGlyph(IDWriteFontFace * fontFace=0x00000221688e98c0, unsigned __int64 bufferPos1, unsigned __int64 bufferPos2) Line 1436
Microsoft.Terminal.Control.dll!Microsoft::Console::Render::AtlasEngine::_flushBufferLine() Line 1304
Microsoft.Terminal.Control.dll!Microsoft::Console::Render::AtlasEngine::PaintBufferLine(gsl::span<Microsoft::Console::Render::Cluster const ,-1> clusters={...}, til::point coord, bool fTrimLeft, bool lineWrapped=false) Line 461
Microsoft.Terminal.Control.dll!Microsoft::Console::Render::Renderer::_PaintBufferOutputHelper(Microsoft::Console::Render::IRenderEngine * const pEngine=0x000002215f689040, TextBufferCellIterator it={...}, const til::point target, const bool lineWrapped=false) Line 874
Microsoft.Terminal.Control.dll!Microsoft::Console::Render::Renderer::_PaintBufferOutput(Microsoft::Console::Render::IRenderEngine * const pEngine=0x000002215f689040) Line 718
Microsoft.Terminal.Control.dll!Microsoft::Console::Render::Renderer::_PaintFrameForEngine(Microsoft::Console::Render::IRenderEngine * const pEngine=0x000002215f689040) Line 160
Microsoft.Terminal.Control.dll!Microsoft::Console::Render::Renderer::PaintFrame() Line 78
Microsoft.Terminal.Control.dll!Microsoft::Console::Render::RenderThread::_ThreadProc() Line 214
kernel32.dll!BaseThreadInitThunk()
ntdll.dll!RtlUserThreadStart()
Originally created by @alabuzhev on GitHub (Jul 17, 2022). ### Windows Terminal version 1.15.1862.0 ### Windows build number 10.0.19044.1826 ### Other Software _No response_ ### Steps to reproduce 1. Enable experimental text rendering engine in WT settings. 2. Rename the attached [Crash._emplaceGlyph.cmd.txt](https://github.com/microsoft/terminal/files/9126808/Crash._emplaceGlyph.cmd.txt) to `Crash._emplaceGlyph.cmd`. 3. Run WT. 4. Locate and execute `Crash._emplaceGlyph.cmd`. 5. Press any key when asked. ### Expected Behavior No crash ### Actual Behavior ``` Unhandled exception at 0x00007FFE30AE286E (ucrtbase.dll) in WindowsTerminal.exe: Fatal program exit requested. ``` ``` ucrtbase.dll!abort() ucrtbase.dll!terminate() [Inline Frame] Microsoft.Terminal.Control.dll!gsl::details::terminate() Line 116 Microsoft.Terminal.Control.dll!Microsoft::Console::Render::AtlasEngine::_emplaceGlyph(IDWriteFontFace * fontFace=0x00000221688e98c0, unsigned __int64 bufferPos1, unsigned __int64 bufferPos2) Line 1436 Microsoft.Terminal.Control.dll!Microsoft::Console::Render::AtlasEngine::_flushBufferLine() Line 1304 Microsoft.Terminal.Control.dll!Microsoft::Console::Render::AtlasEngine::PaintBufferLine(gsl::span<Microsoft::Console::Render::Cluster const ,-1> clusters={...}, til::point coord, bool fTrimLeft, bool lineWrapped=false) Line 461 Microsoft.Terminal.Control.dll!Microsoft::Console::Render::Renderer::_PaintBufferOutputHelper(Microsoft::Console::Render::IRenderEngine * const pEngine=0x000002215f689040, TextBufferCellIterator it={...}, const til::point target, const bool lineWrapped=false) Line 874 Microsoft.Terminal.Control.dll!Microsoft::Console::Render::Renderer::_PaintBufferOutput(Microsoft::Console::Render::IRenderEngine * const pEngine=0x000002215f689040) Line 718 Microsoft.Terminal.Control.dll!Microsoft::Console::Render::Renderer::_PaintFrameForEngine(Microsoft::Console::Render::IRenderEngine * const pEngine=0x000002215f689040) Line 160 Microsoft.Terminal.Control.dll!Microsoft::Console::Render::Renderer::PaintFrame() Line 78 Microsoft.Terminal.Control.dll!Microsoft::Console::Render::RenderThread::_ThreadProc() Line 214 kernel32.dll!BaseThreadInitThunk() ntdll.dll!RtlUserThreadStart() ```
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/terminal#17948