debug error dialog in conhost after attempting to insert emojis into cmd window #1115

Closed
opened 2026-01-30 22:16:49 +00:00 by claunia · 4 comments
Owner

Originally created by @binarycrusader on GitHub (May 15, 2019).

  • Your Windows build number: (Type ver at a Windows Command Prompt)

Microsoft Windows [Version 10.0.18362.86]

  • What you're doing and what's happening: (Copy & paste specific commands and their output, or include screen shots)
  1. build debug Terminal
  2. Start Debugging Terminal
  3. Ctrl+T
  4. Click down arrow, select 'cmd'
  5. Win+. to open emoji window
  6. click emoji several times
  7. click back in cmd window
  • What's wrong / what should be happening instead:
    Debug error dialog:

image

windbgx stack trace looks like this:

13 00000096`d4ffcb70 00007ff7`30bad788 conhost!CharRowCellReference::operator=+0xc7 [g:\source\repos\terminal\src\buffer\out\charrowcellreference.cpp @ 16] 
14 00000096`d4ffcd40 00007ff7`30b97c68 conhost!ROW::WriteCells+0x588 [g:\source\repos\terminal\src\buffer\out\row.cpp @ 203] 
15 00000096`d4ffcf10 00007ff7`30b97a1c conhost!TextBuffer::WriteLine+0x1a8 [g:\source\repos\terminal\src\buffer\out\textbuffer.cpp @ 368] 
16 00000096`d4ffd180 00007ff7`30b977f6 conhost!TextBuffer::Write+0x1cc [g:\source\repos\terminal\src\buffer\out\textbuffer.cpp @ 333] 
17 00000096`d4ffd490 00007ff7`30b0dc55 conhost!TextBuffer::Write+0xb6 [g:\source\repos\terminal\src\buffer\out\textbuffer.cpp @ 307] 
18 00000096`d4ffd630 00007ff7`30ad7913 conhost!SCREEN_INFORMATION::Write+0xa5 [g:\source\repos\terminal\src\host\screeninfo.cpp @ 2579] 
19 00000096`d4ffd780 00007ff7`30b5afce conhost!WriteCharsLegacy+0xb33 [g:\source\repos\terminal\src\host\_stream.cpp @ 565] 
1a 00000096`d4ffe910 00007ff7`30b5cb06 conhost!COOKED_READ_DATA::ProcessInput+0x30e [g:\source\repos\terminal\src\host\readdatacooked.cpp @ 530] 
1b 00000096`d4ffeab0 00007ff7`30b5ac81 conhost!COOKED_READ_DATA::_readCharInputLoop+0x246 [g:\source\repos\terminal\src\host\readdatacooked.cpp @ 982] 
1c 00000096`d4ffebb0 00007ff7`30b5a56e conhost!COOKED_READ_DATA::Read+0x61 [g:\source\repos\terminal\src\host\readdatacooked.cpp @ 445] 
1d 00000096`d4ffebf0 00007ff7`30a725ae conhost!COOKED_READ_DATA::Notify+0x2ce [g:\source\repos\terminal\src\host\readdatacooked.cpp @ 411] 
1e 00000096`d4ffec50 00007ff7`30a6d712 conhost!ConsoleWaitBlock::Notify+0x28e [g:\source\repos\terminal\src\server\waitblock.cpp @ 153] 
1f 00000096`d4ffee70 00007ff7`30a6d5ec conhost!ConsoleWaitQueue::_NotifyBlock+0x42 [g:\source\repos\terminal\src\server\waitqueue.cpp @ 119] 
20 00000096`d4ffeec0 00007ff7`30a6d3e0 conhost!ConsoleWaitQueue::NotifyWaiters+0x1fc [g:\source\repos\terminal\src\server\waitqueue.cpp @ 92] 
21 00000096`d4ffeff0 00007ff7`30b278f4 conhost!ConsoleWaitQueue::NotifyWaiters+0x40 [g:\source\repos\terminal\src\server\waitqueue.cpp @ 67] 
22 00000096`d4fff020 00007ff7`30b28476 conhost!InputBuffer::WakeUpReadersWaitingForData+0x44 [g:\source\repos\terminal\src\host\inputbuffer.cpp @ 162] 
23 00000096`d4fff060 00007ff7`30ac41e7 conhost!InputBuffer::Write+0xd6 [g:\source\repos\terminal\src\host\inputbuffer.cpp @ 577] 
24 00000096`d4fff100 00007ff7`30ac2f5d conhost!_WriteConsoleInputWImplHelper+0x67 [g:\source\repos\terminal\src\host\directio.cpp @ 421] 
25 00000096`d4fff160 00007ff7`30b838ad conhost!DoSrvPrivateWriteConsoleInputW+0x5d [g:\source\repos\terminal\src\host\directio.cpp @ 449] 
26 00000096`d4fff1a0 00007ff7`30c292c1 conhost!ConhostInternalGetSet::PrivateWriteConsoleInputW+0x6d [g:\source\repos\terminal\src\host\outputstream.cpp @ 288] 
27 00000096`d4fff1e0 00007ff7`30c296f6 conhost!Microsoft::Console::VirtualTerminal::InteractDispatch::WriteInput+0x81 [g:\source\repos\terminal\src\terminal\adapter\interactdispatch.cpp @ 36] 
28 00000096`d4fff250 00007ff7`30c36d9a conhost!Microsoft::Console::VirtualTerminal::InteractDispatch::WriteString+0x276 [g:\source\repos\terminal\src\terminal\adapter\interactdispatch.cpp @ 84] 
29 00000096`d4fff3d0 00007ff7`30c2db8c conhost!Microsoft::Console::VirtualTerminal::InputStateMachineEngine::ActionPrintString+0x7a [g:\source\repos\terminal\src\terminal\parser\inputstatemachineengine.cpp @ 231] 
2a 00000096`d4fff410 00007ff7`30b8fc50 conhost!Microsoft::Console::VirtualTerminal::StateMachine::ProcessString+0x3fc [g:\source\repos\terminal\src\terminal\parser\statemachine.cpp @ 1386] 
2b 00000096`d4fff4d0 00007ff7`30b8fa10 conhost!Microsoft::Console::VtInputThread::_HandleRunInput+0x190 [g:\source\repos\terminal\src\host\vtinputthread.cpp @ 80] 
2c 00000096`d4fff5e0 00007ff7`30b8fd13 conhost!Microsoft::Console::VtInputThread::DoReadInput+0x100 [g:\source\repos\terminal\src\host\vtinputthread.cpp @ 124] 
2d 00000096`d4fff780 00007ff7`30b8f8fe conhost!Microsoft::Console::VtInputThread::_InputThread+0x43 [g:\source\repos\terminal\src\host\vtinputthread.cpp @ 151] 
2e 00000096`d4fff7c0 00007ffe`f8837bd4 conhost!Microsoft::Console::VtInputThread::StaticVtInputThreadProc+0x3e [g:\source\repos\terminal\src\host\vtinputthread.cpp @ 97] 
2f 00000096`d4fff800 00007ffe`fa7cce71 KERNEL32!BaseThreadInitThunk+0x14
30 00000096`d4fff830 00000000`00000000 ntdll!RtlUserThreadStart+0x21
Originally created by @binarycrusader on GitHub (May 15, 2019). * Your Windows build number: (Type `ver` at a Windows Command Prompt) Microsoft Windows [Version 10.0.18362.86] * What you're doing and what's happening: (Copy & paste specific commands and their output, or include screen shots) 0. build debug Terminal 1. Start Debugging Terminal 2. Ctrl+T 3. Click down arrow, select 'cmd' 4. Win+. to open emoji window 5. click emoji several times 6. click back in cmd window * What's wrong / what should be happening instead: Debug error dialog: ![image](https://user-images.githubusercontent.com/541114/57749841-97786d00-7694-11e9-90d6-9d21023e027d.png) windbgx stack trace looks like this: ``` 13 00000096`d4ffcb70 00007ff7`30bad788 conhost!CharRowCellReference::operator=+0xc7 [g:\source\repos\terminal\src\buffer\out\charrowcellreference.cpp @ 16] 14 00000096`d4ffcd40 00007ff7`30b97c68 conhost!ROW::WriteCells+0x588 [g:\source\repos\terminal\src\buffer\out\row.cpp @ 203] 15 00000096`d4ffcf10 00007ff7`30b97a1c conhost!TextBuffer::WriteLine+0x1a8 [g:\source\repos\terminal\src\buffer\out\textbuffer.cpp @ 368] 16 00000096`d4ffd180 00007ff7`30b977f6 conhost!TextBuffer::Write+0x1cc [g:\source\repos\terminal\src\buffer\out\textbuffer.cpp @ 333] 17 00000096`d4ffd490 00007ff7`30b0dc55 conhost!TextBuffer::Write+0xb6 [g:\source\repos\terminal\src\buffer\out\textbuffer.cpp @ 307] 18 00000096`d4ffd630 00007ff7`30ad7913 conhost!SCREEN_INFORMATION::Write+0xa5 [g:\source\repos\terminal\src\host\screeninfo.cpp @ 2579] 19 00000096`d4ffd780 00007ff7`30b5afce conhost!WriteCharsLegacy+0xb33 [g:\source\repos\terminal\src\host\_stream.cpp @ 565] 1a 00000096`d4ffe910 00007ff7`30b5cb06 conhost!COOKED_READ_DATA::ProcessInput+0x30e [g:\source\repos\terminal\src\host\readdatacooked.cpp @ 530] 1b 00000096`d4ffeab0 00007ff7`30b5ac81 conhost!COOKED_READ_DATA::_readCharInputLoop+0x246 [g:\source\repos\terminal\src\host\readdatacooked.cpp @ 982] 1c 00000096`d4ffebb0 00007ff7`30b5a56e conhost!COOKED_READ_DATA::Read+0x61 [g:\source\repos\terminal\src\host\readdatacooked.cpp @ 445] 1d 00000096`d4ffebf0 00007ff7`30a725ae conhost!COOKED_READ_DATA::Notify+0x2ce [g:\source\repos\terminal\src\host\readdatacooked.cpp @ 411] 1e 00000096`d4ffec50 00007ff7`30a6d712 conhost!ConsoleWaitBlock::Notify+0x28e [g:\source\repos\terminal\src\server\waitblock.cpp @ 153] 1f 00000096`d4ffee70 00007ff7`30a6d5ec conhost!ConsoleWaitQueue::_NotifyBlock+0x42 [g:\source\repos\terminal\src\server\waitqueue.cpp @ 119] 20 00000096`d4ffeec0 00007ff7`30a6d3e0 conhost!ConsoleWaitQueue::NotifyWaiters+0x1fc [g:\source\repos\terminal\src\server\waitqueue.cpp @ 92] 21 00000096`d4ffeff0 00007ff7`30b278f4 conhost!ConsoleWaitQueue::NotifyWaiters+0x40 [g:\source\repos\terminal\src\server\waitqueue.cpp @ 67] 22 00000096`d4fff020 00007ff7`30b28476 conhost!InputBuffer::WakeUpReadersWaitingForData+0x44 [g:\source\repos\terminal\src\host\inputbuffer.cpp @ 162] 23 00000096`d4fff060 00007ff7`30ac41e7 conhost!InputBuffer::Write+0xd6 [g:\source\repos\terminal\src\host\inputbuffer.cpp @ 577] 24 00000096`d4fff100 00007ff7`30ac2f5d conhost!_WriteConsoleInputWImplHelper+0x67 [g:\source\repos\terminal\src\host\directio.cpp @ 421] 25 00000096`d4fff160 00007ff7`30b838ad conhost!DoSrvPrivateWriteConsoleInputW+0x5d [g:\source\repos\terminal\src\host\directio.cpp @ 449] 26 00000096`d4fff1a0 00007ff7`30c292c1 conhost!ConhostInternalGetSet::PrivateWriteConsoleInputW+0x6d [g:\source\repos\terminal\src\host\outputstream.cpp @ 288] 27 00000096`d4fff1e0 00007ff7`30c296f6 conhost!Microsoft::Console::VirtualTerminal::InteractDispatch::WriteInput+0x81 [g:\source\repos\terminal\src\terminal\adapter\interactdispatch.cpp @ 36] 28 00000096`d4fff250 00007ff7`30c36d9a conhost!Microsoft::Console::VirtualTerminal::InteractDispatch::WriteString+0x276 [g:\source\repos\terminal\src\terminal\adapter\interactdispatch.cpp @ 84] 29 00000096`d4fff3d0 00007ff7`30c2db8c conhost!Microsoft::Console::VirtualTerminal::InputStateMachineEngine::ActionPrintString+0x7a [g:\source\repos\terminal\src\terminal\parser\inputstatemachineengine.cpp @ 231] 2a 00000096`d4fff410 00007ff7`30b8fc50 conhost!Microsoft::Console::VirtualTerminal::StateMachine::ProcessString+0x3fc [g:\source\repos\terminal\src\terminal\parser\statemachine.cpp @ 1386] 2b 00000096`d4fff4d0 00007ff7`30b8fa10 conhost!Microsoft::Console::VtInputThread::_HandleRunInput+0x190 [g:\source\repos\terminal\src\host\vtinputthread.cpp @ 80] 2c 00000096`d4fff5e0 00007ff7`30b8fd13 conhost!Microsoft::Console::VtInputThread::DoReadInput+0x100 [g:\source\repos\terminal\src\host\vtinputthread.cpp @ 124] 2d 00000096`d4fff780 00007ff7`30b8f8fe conhost!Microsoft::Console::VtInputThread::_InputThread+0x43 [g:\source\repos\terminal\src\host\vtinputthread.cpp @ 151] 2e 00000096`d4fff7c0 00007ffe`f8837bd4 conhost!Microsoft::Console::VtInputThread::StaticVtInputThreadProc+0x3e [g:\source\repos\terminal\src\host\vtinputthread.cpp @ 97] 2f 00000096`d4fff800 00007ffe`fa7cce71 KERNEL32!BaseThreadInitThunk+0x14 30 00000096`d4fff830 00000000`00000000 ntdll!RtlUserThreadStart+0x21 ```
claunia added the Resolution-Duplicate label 2026-01-30 22:16:49 +00:00
Author
Owner

@zadjii-msft commented on GitHub (May 15, 2019):

I'm pretty sure this is a dupe of #678. I'll let @miniksa confirm

@zadjii-msft commented on GitHub (May 15, 2019): I'm pretty sure this is a dupe of #678. I'll let @miniksa confirm
Author
Owner

@mlindgren commented on GitHub (May 15, 2019):

@zadjii-msft This is the same behavior I experienced when I commented on #678.

@mlindgren commented on GitHub (May 15, 2019): @zadjii-msft This is the same behavior I experienced when I commented on #678.
Author
Owner

@miniksa commented on GitHub (May 15, 2019):

OK. Let's close this one then.

@miniksa commented on GitHub (May 15, 2019): OK. Let's close this one then.
Author
Owner

@binarycrusader commented on GitHub (May 15, 2019):

OK. Let's close this one then.

I think the only difference is that I'm tripping the assert since I'm running Debug, so I don't get a hang, I get an error dialog and then the cab closes if I retry.

@binarycrusader commented on GitHub (May 15, 2019): > OK. Let's close this one then. I think the only difference is that I'm tripping the assert since I'm running Debug, so I don't get a hang, I get an error dialog and then the cab closes if I retry.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/terminal#1115