Seemingly random crash #18663

Closed
opened 2026-01-31 06:20:43 +00:00 by claunia · 5 comments
Owner

Originally created by @bendem on GitHub (Oct 12, 2022).

Windows Terminal version

1.15.220909004

Windows build number

10.0.19044.0

Other Software

WSL2, RockyLinux 8, zsh 5.5.1, ssh openssh-8.0p1-13.el8.src.rpm

Steps to reproduce

The crashes happen at random, last one happened when I hit ctrl-d over a hanged ssh session. Generally, I follow with ~+enter, but this time it crashed instead.

Expected Behavior

Well, no crash 😄

Actual Behavior

CONTEXT:  (.ecxr)
rax=00007ffd00000020 rbx=0000028a62ec7160 rcx=0000000000000000
rdx=0000000000000018 rsi=0000028a609ee080 rdi=0000008f63dff3b0
rip=00007ffd4db82684 rsp=0000008f63dff1d0 rbp=0000008f63dff500
 r8=00007ffd4da9ae20  r9=0000028a56f40340 r10=0000028a56f40d00
r11=0000000000000001 r12=0000000000000000 r13=0000000000000000
r14=0000028a609ee090 r15=0000000000000034
iopl=0         nv up ei pl nz na pe nc
cs=0033  ss=002b  ds=002b  es=002b  fs=0053  gs=002b             efl=00000202
ntdll!TppRaiseInvalidParameter+0x48:
00007ffd`4db82684 eb00            jmp     ntdll!TppRaiseInvalidParameter+0x4a (00007ffd`4db82686)
Resetting default scope

EXCEPTION_RECORD:  (.exr -1)
ExceptionAddress: 00007ffd4db82684 (ntdll!TppRaiseInvalidParameter+0x0000000000000048)
   ExceptionCode: c000000d
  ExceptionFlags: 00000000
NumberParameters: 0

PROCESS_NAME:  WindowsTerminal.exe

ERROR_CODE: (NTSTATUS) 0xc000000d - An invalid parameter was passed to a service or function.

EXCEPTION_CODE_STR:  c000000d

STACK_TEXT:  
0000008f`63dff1d0 00007ffd`4da82983     : 0000028a`609dce78 00007ffc`de840000 00000000`00000000 0000028a`609dc120 : ntdll!TppRaiseInvalidParameter+0x48
0000008f`63dff2b0 00007ffd`4da82709     : 00000000`00000000 00007ffc`de8471d3 0000008f`63dff3e0 0000028a`609ee080 : ntdll!TppTimerpValidateTimer+0x6f
0000008f`63dff2e0 00007ffc`de84703f     : 0000028a`6227eab0 0000008f`63dff500 0000028a`609ee080 00007ffc`de8470bb : ntdll!TpSetTimerEx+0x39
0000008f`63dff340 00007ffc`de845812     : 0000028a`6278c890 0000028a`6227eab0 0000008f`63dff540 0000028a`6227cc40 : Microsoft_Terminal_Control!ThrottledFunc<0,winrt::Microsoft::Terminal::Control::ScrollPositionChangedArgs>::Run<winrt::Microsoft::Terminal::Control::ScrollPositionChangedArgs &>+0xab
0000008f`63dff390 00007ffc`de8657e1     : 00000000`000000ca 00000000`00000000 00000200`00000034 0000008f`00000034 : Microsoft_Terminal_Control!winrt::Microsoft::Terminal::Control::implementation::ControlCore::_terminalScrollPositionChanged+0x72
0000008f`63dff3d0 00007ffc`de8472ce     : 00000034`000000ca 00000000`00000000 03ffffff`00000000 00000000`03ffffff : Microsoft_Terminal_Control!std::_Func_impl_no_alloc<std::_Binder<std::_Unforced,void (__cdecl winrt::Microsoft::Terminal::Control::implementation::ControlCore::*)(int,int,int),winrt::Microsoft::Terminal::Control::implementation::ControlCore *,std::_Ph<1> const &,std::_Ph<2> const &,std::_Ph<3> const &>,void,int,int,int>::_Do_call+0x21
0000008f`63dff410 00007ffc`de870b30     : 00002329`000000ca 00000000`00000034 0000028a`608927b0 00000000`0000235d : Microsoft_Terminal_Control!Microsoft::Terminal::Core::Terminal::_NotifyScrollEvent+0x82
0000008f`63dff480 00007ffc`de91dd04     : 00000000`00000034 00000000`00000000 0000008f`63dff540 0000028a`6227cc40 : Microsoft_Terminal_Control!Microsoft::Terminal::Core::Terminal::SetViewportPosition+0x70
0000008f`63dff4c0 00007ffc`de859164     : 0000028a`62ed3738 00000000`0000004a 0000028a`6227cc40 0000028a`609ab410 : Microsoft_Terminal_Control!Microsoft::Console::VirtualTerminal::AdaptDispatch::_EraseScrollback+0x128
0000008f`63dff570 00007ffc`de85cc28     : 0000235c`0000235c 00000000`0000004a 0000008f`63dff750 0000028a`609ab410 : Microsoft_Terminal_Control!Microsoft::Console::VirtualTerminal::AdaptDispatch::EraseInDisplay+0xa4
0000008f`63dff640 00007ffc`de85d1c0     : 00000000`00000003 00000000`0000004a 0000008f`63dff6f0 0000028a`6087d6b0 : Microsoft_Terminal_Control!Microsoft::Console::VirtualTerminal::VTParameters::for_each<`Microsoft::Console::VirtualTerminal::OutputStateMachineEngine::ActionCsiDispatch'::`4'::<lambda_1> >+0x30
0000008f`63dff670 00007ffc`de845639     : 00000000`00000000 00000000`0000004a 00000000`0000000a 00007ffd`4dad38ad : Microsoft_Terminal_Control!Microsoft::Console::VirtualTerminal::OutputStateMachineEngine::ActionCsiDispatch+0x2e0
0000008f`63dff730 00007ffc`de8450be     : 00007ffc`de8452d6 00000000`0000000a 00000000`00000000 00000000`00000000 : Microsoft_Terminal_Control!Microsoft::Console::VirtualTerminal::StateMachine::_SafeExecute<`Microsoft::Console::VirtualTerminal::StateMachine::_ActionCsiDispatch'::`2'::<lambda_1> >+0x69
0000008f`63dff770 00007ffc`de844bc1     : 00000000`00000001 0000008f`63dff979 0000235c`00000000 00007ffd`4b2ef912 : Microsoft_Terminal_Control!Microsoft::Console::VirtualTerminal::StateMachine::ProcessString+0x3ce
0000008f`63dff8e0 00007ffc`de844b43     : 0000028a`6227eab0 00000000`00000000 0000028a`6227eab0 00000000`00000000 : Microsoft_Terminal_Control!Microsoft::Terminal::Core::Terminal::Write+0x69
0000008f`63dff960 00007ffc`de865f82     : 0000028a`58b0a870 0000028a`58b0a860 00000000`00000000 00007ffd`1f195bc2 : Microsoft_Terminal_Control!winrt::Microsoft::Terminal::Control::implementation::ControlCore::_connectionOutputHandler+0x33
0000008f`63dff9b0 00007ffd`1f195a55     : 0000008f`00000001 0000028a`58b0a858 0000028a`00001000 00000000`00000000 : Microsoft_Terminal_Control!winrt::impl::delegate<winrt::Microsoft::Terminal::TerminalConnection::TerminalOutputHandler,`winrt::Microsoft::Terminal::TerminalConnection::TerminalOutputHandler::implementation<winrt::Microsoft::Terminal::Control::implementation::ControlCore,void (__cdecl winrt::Microsoft::Terminal::Control::implementation::ControlCore::*)(winrt::hstring const &)>'::`1'::<lambda_217_> >::Invoke+0x32
0000008f`63dffa00 00007ffd`1f195972     : 00000000`00000000 0000028a`62afb5b0 00000000`00000000 0000008f`63dffad0 : TerminalConnection!winrt::impl::invoke<winrt::Microsoft::Terminal::TerminalConnection::TerminalOutputHandler,std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> > >+0x55
0000008f`63dffa60 00007ffd`1f19bc2e     : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : TerminalConnection!winrt::Microsoft::Terminal::TerminalConnection::implementation::ConptyConnection::_OutputThread+0x152
0000008f`63dffb20 00007ffd`4d0f7034     : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : TerminalConnection!_Closure_wrapper_d0730bb0_14::<lambda_invoker_cdecl>+0xe
0000008f`63dffb50 00007ffd`4dac26a1     : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : kernel32!BaseThreadInitThunk+0x14
0000008f`63dffb80 00000000`00000000     : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : ntdll!RtlUserThreadStart+0x21


STACK_COMMAND:  ~4s; .ecxr ; kb

FAULTING_SOURCE_LINE:  C:\a\_work\1\s\src\cascadia\WinRTUtils\inc\ThrottledFunc.h

FAULTING_SOURCE_FILE:  C:\a\_work\1\s\src\cascadia\WinRTUtils\inc\ThrottledFunc.h

FAULTING_SOURCE_LINE_NUMBER:  59

SYMBOL_NAME:  microsoft_terminal_control!ThrottledFunc<0,winrt::Microsoft::Terminal::Control::ScrollPositionChangedArgs>::Run<winrt::Microsoft::Terminal::Control::ScrollPositionChangedArgs &>+ab

MODULE_NAME: Microsoft_Terminal_Control

IMAGE_NAME:  Microsoft.Terminal.Control.dll

FAILURE_BUCKET_ID:  INVALID_PARAMETER_c000000d_Microsoft.Terminal.Control.dll!ThrottledFunc_0,winrt::Microsoft::Terminal::Control::ScrollPositionChangedArgs_::Run_winrt::Microsoft::Terminal::Control::ScrollPositionChangedArgs___

OS_VERSION:  10.0.19041.1

BUILDLAB_STR:  vb_release

OSPLATFORM_TYPE:  x64

OSNAME:  Windows 10

IMAGE_VERSION:  1.15.2209.9004

FAILURE_ID_HASH:  {ae105b00-f5ac-8f42-4dd9-a9e54049d8a0}

I can provide some minidumps privately if it's useful.

Originally created by @bendem on GitHub (Oct 12, 2022). ### Windows Terminal version 1.15.220909004 ### Windows build number 10.0.19044.0 ### Other Software WSL2, RockyLinux 8, zsh 5.5.1, ssh openssh-8.0p1-13.el8.src.rpm ### Steps to reproduce The crashes happen at random, last one happened when I hit ctrl-d over a hanged ssh session. Generally, I follow with `~+enter`, but this time it crashed instead. ### Expected Behavior Well, no crash 😄 ### Actual Behavior ``` CONTEXT: (.ecxr) rax=00007ffd00000020 rbx=0000028a62ec7160 rcx=0000000000000000 rdx=0000000000000018 rsi=0000028a609ee080 rdi=0000008f63dff3b0 rip=00007ffd4db82684 rsp=0000008f63dff1d0 rbp=0000008f63dff500 r8=00007ffd4da9ae20 r9=0000028a56f40340 r10=0000028a56f40d00 r11=0000000000000001 r12=0000000000000000 r13=0000000000000000 r14=0000028a609ee090 r15=0000000000000034 iopl=0 nv up ei pl nz na pe nc cs=0033 ss=002b ds=002b es=002b fs=0053 gs=002b efl=00000202 ntdll!TppRaiseInvalidParameter+0x48: 00007ffd`4db82684 eb00 jmp ntdll!TppRaiseInvalidParameter+0x4a (00007ffd`4db82686) Resetting default scope EXCEPTION_RECORD: (.exr -1) ExceptionAddress: 00007ffd4db82684 (ntdll!TppRaiseInvalidParameter+0x0000000000000048) ExceptionCode: c000000d ExceptionFlags: 00000000 NumberParameters: 0 PROCESS_NAME: WindowsTerminal.exe ERROR_CODE: (NTSTATUS) 0xc000000d - An invalid parameter was passed to a service or function. EXCEPTION_CODE_STR: c000000d STACK_TEXT: 0000008f`63dff1d0 00007ffd`4da82983 : 0000028a`609dce78 00007ffc`de840000 00000000`00000000 0000028a`609dc120 : ntdll!TppRaiseInvalidParameter+0x48 0000008f`63dff2b0 00007ffd`4da82709 : 00000000`00000000 00007ffc`de8471d3 0000008f`63dff3e0 0000028a`609ee080 : ntdll!TppTimerpValidateTimer+0x6f 0000008f`63dff2e0 00007ffc`de84703f : 0000028a`6227eab0 0000008f`63dff500 0000028a`609ee080 00007ffc`de8470bb : ntdll!TpSetTimerEx+0x39 0000008f`63dff340 00007ffc`de845812 : 0000028a`6278c890 0000028a`6227eab0 0000008f`63dff540 0000028a`6227cc40 : Microsoft_Terminal_Control!ThrottledFunc<0,winrt::Microsoft::Terminal::Control::ScrollPositionChangedArgs>::Run<winrt::Microsoft::Terminal::Control::ScrollPositionChangedArgs &>+0xab 0000008f`63dff390 00007ffc`de8657e1 : 00000000`000000ca 00000000`00000000 00000200`00000034 0000008f`00000034 : Microsoft_Terminal_Control!winrt::Microsoft::Terminal::Control::implementation::ControlCore::_terminalScrollPositionChanged+0x72 0000008f`63dff3d0 00007ffc`de8472ce : 00000034`000000ca 00000000`00000000 03ffffff`00000000 00000000`03ffffff : Microsoft_Terminal_Control!std::_Func_impl_no_alloc<std::_Binder<std::_Unforced,void (__cdecl winrt::Microsoft::Terminal::Control::implementation::ControlCore::*)(int,int,int),winrt::Microsoft::Terminal::Control::implementation::ControlCore *,std::_Ph<1> const &,std::_Ph<2> const &,std::_Ph<3> const &>,void,int,int,int>::_Do_call+0x21 0000008f`63dff410 00007ffc`de870b30 : 00002329`000000ca 00000000`00000034 0000028a`608927b0 00000000`0000235d : Microsoft_Terminal_Control!Microsoft::Terminal::Core::Terminal::_NotifyScrollEvent+0x82 0000008f`63dff480 00007ffc`de91dd04 : 00000000`00000034 00000000`00000000 0000008f`63dff540 0000028a`6227cc40 : Microsoft_Terminal_Control!Microsoft::Terminal::Core::Terminal::SetViewportPosition+0x70 0000008f`63dff4c0 00007ffc`de859164 : 0000028a`62ed3738 00000000`0000004a 0000028a`6227cc40 0000028a`609ab410 : Microsoft_Terminal_Control!Microsoft::Console::VirtualTerminal::AdaptDispatch::_EraseScrollback+0x128 0000008f`63dff570 00007ffc`de85cc28 : 0000235c`0000235c 00000000`0000004a 0000008f`63dff750 0000028a`609ab410 : Microsoft_Terminal_Control!Microsoft::Console::VirtualTerminal::AdaptDispatch::EraseInDisplay+0xa4 0000008f`63dff640 00007ffc`de85d1c0 : 00000000`00000003 00000000`0000004a 0000008f`63dff6f0 0000028a`6087d6b0 : Microsoft_Terminal_Control!Microsoft::Console::VirtualTerminal::VTParameters::for_each<`Microsoft::Console::VirtualTerminal::OutputStateMachineEngine::ActionCsiDispatch'::`4'::<lambda_1> >+0x30 0000008f`63dff670 00007ffc`de845639 : 00000000`00000000 00000000`0000004a 00000000`0000000a 00007ffd`4dad38ad : Microsoft_Terminal_Control!Microsoft::Console::VirtualTerminal::OutputStateMachineEngine::ActionCsiDispatch+0x2e0 0000008f`63dff730 00007ffc`de8450be : 00007ffc`de8452d6 00000000`0000000a 00000000`00000000 00000000`00000000 : Microsoft_Terminal_Control!Microsoft::Console::VirtualTerminal::StateMachine::_SafeExecute<`Microsoft::Console::VirtualTerminal::StateMachine::_ActionCsiDispatch'::`2'::<lambda_1> >+0x69 0000008f`63dff770 00007ffc`de844bc1 : 00000000`00000001 0000008f`63dff979 0000235c`00000000 00007ffd`4b2ef912 : Microsoft_Terminal_Control!Microsoft::Console::VirtualTerminal::StateMachine::ProcessString+0x3ce 0000008f`63dff8e0 00007ffc`de844b43 : 0000028a`6227eab0 00000000`00000000 0000028a`6227eab0 00000000`00000000 : Microsoft_Terminal_Control!Microsoft::Terminal::Core::Terminal::Write+0x69 0000008f`63dff960 00007ffc`de865f82 : 0000028a`58b0a870 0000028a`58b0a860 00000000`00000000 00007ffd`1f195bc2 : Microsoft_Terminal_Control!winrt::Microsoft::Terminal::Control::implementation::ControlCore::_connectionOutputHandler+0x33 0000008f`63dff9b0 00007ffd`1f195a55 : 0000008f`00000001 0000028a`58b0a858 0000028a`00001000 00000000`00000000 : Microsoft_Terminal_Control!winrt::impl::delegate<winrt::Microsoft::Terminal::TerminalConnection::TerminalOutputHandler,`winrt::Microsoft::Terminal::TerminalConnection::TerminalOutputHandler::implementation<winrt::Microsoft::Terminal::Control::implementation::ControlCore,void (__cdecl winrt::Microsoft::Terminal::Control::implementation::ControlCore::*)(winrt::hstring const &)>'::`1'::<lambda_217_> >::Invoke+0x32 0000008f`63dffa00 00007ffd`1f195972 : 00000000`00000000 0000028a`62afb5b0 00000000`00000000 0000008f`63dffad0 : TerminalConnection!winrt::impl::invoke<winrt::Microsoft::Terminal::TerminalConnection::TerminalOutputHandler,std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> > >+0x55 0000008f`63dffa60 00007ffd`1f19bc2e : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : TerminalConnection!winrt::Microsoft::Terminal::TerminalConnection::implementation::ConptyConnection::_OutputThread+0x152 0000008f`63dffb20 00007ffd`4d0f7034 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : TerminalConnection!_Closure_wrapper_d0730bb0_14::<lambda_invoker_cdecl>+0xe 0000008f`63dffb50 00007ffd`4dac26a1 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : kernel32!BaseThreadInitThunk+0x14 0000008f`63dffb80 00000000`00000000 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : ntdll!RtlUserThreadStart+0x21 STACK_COMMAND: ~4s; .ecxr ; kb FAULTING_SOURCE_LINE: C:\a\_work\1\s\src\cascadia\WinRTUtils\inc\ThrottledFunc.h FAULTING_SOURCE_FILE: C:\a\_work\1\s\src\cascadia\WinRTUtils\inc\ThrottledFunc.h FAULTING_SOURCE_LINE_NUMBER: 59 SYMBOL_NAME: microsoft_terminal_control!ThrottledFunc<0,winrt::Microsoft::Terminal::Control::ScrollPositionChangedArgs>::Run<winrt::Microsoft::Terminal::Control::ScrollPositionChangedArgs &>+ab MODULE_NAME: Microsoft_Terminal_Control IMAGE_NAME: Microsoft.Terminal.Control.dll FAILURE_BUCKET_ID: INVALID_PARAMETER_c000000d_Microsoft.Terminal.Control.dll!ThrottledFunc_0,winrt::Microsoft::Terminal::Control::ScrollPositionChangedArgs_::Run_winrt::Microsoft::Terminal::Control::ScrollPositionChangedArgs___ OS_VERSION: 10.0.19041.1 BUILDLAB_STR: vb_release OSPLATFORM_TYPE: x64 OSNAME: Windows 10 IMAGE_VERSION: 1.15.2209.9004 FAILURE_ID_HASH: {ae105b00-f5ac-8f42-4dd9-a9e54049d8a0} ``` I can provide some minidumps privately if it's useful.
claunia added the Issue-BugResolution-Duplicate labels 2026-01-31 06:20:43 +00:00
Author
Owner

@lhecker commented on GitHub (Oct 12, 2022):

This is a duplicate of #13880.

It was fixed by #13882, however that introduced another bug, which will only get fixed by #14160. It should land in 1.16 soon. @DHowett should we port both fixes to the 1.15 branch or simply wait for 1.16 to be the new stable Windows Terminal?

/dup #13880

@lhecker commented on GitHub (Oct 12, 2022): This is a duplicate of #13880. It was fixed by #13882, however that introduced another bug, which will only get fixed by #14160. It should land in 1.16 soon. @DHowett should we port both fixes to the 1.15 branch or simply wait for 1.16 to be the new stable Windows Terminal? /dup #13880
Author
Owner

@ghost commented on GitHub (Oct 12, 2022):

Hi! We've identified this issue as a duplicate of another one that already exists on this Issue Tracker. This specific instance is being closed in favor of tracking the concern over on the referenced thread. Thanks for your report!

@ghost commented on GitHub (Oct 12, 2022): Hi! We've identified this issue as a duplicate of another one that already exists on this Issue Tracker. This specific instance is being closed in favor of tracking the concern over on the referenced thread. Thanks for your report!
Author
Owner

@ghost commented on GitHub (Oct 12, 2022):

Hi! We've identified this issue as a duplicate of another one that already exists on this Issue Tracker. This specific instance is being closed in favor of tracking the concern over on the referenced thread. Thanks for your report!

@ghost commented on GitHub (Oct 12, 2022): Hi! We've identified this issue as a duplicate of another one that already exists on this Issue Tracker. This specific instance is being closed in favor of tracking the concern over on the referenced thread. Thanks for your report!
Author
Owner

@DHowett commented on GitHub (Oct 12, 2022):

@lhecker I'd rather backport both, because 1.16 is not close to being stable at the moment. Thanks for the callout!

@DHowett commented on GitHub (Oct 12, 2022): @lhecker I'd rather backport both, because 1.16 is not close to being stable at the moment. Thanks for the callout!
Author
Owner

@bendem commented on GitHub (Oct 13, 2022):

That was fast! You guys are awesome!

@bendem commented on GitHub (Oct 13, 2022): That was fast! You guys are awesome!
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/terminal#18663