-
Notifications
You must be signed in to change notification settings - Fork 9.2k
Adding a pixel shader to Atlas engine explodes #13899
Copy link
Copy link
Closed
Labels
Area-AtlasEngineIssue-BugIt either shouldn't be doing this or needs an investigation.It either shouldn't be doing this or needs an investigation.Needs-Tag-FixDoesn't match tag requirementsDoesn't match tag requirementsProduct-TerminalThe new Windows Terminal.The new Windows Terminal.Severity-BlockingWe won't ship a release like this! No-siree.We won't ship a release like this! No-siree.Severity-CrashCrashes are real bad news.Crashes are real bad news.
Milestone
Description
On main + Dev Build, so useAtlas:true by default.
(modify path as necessary)
stack
Microsoft.Terminal.Control.dll!std::_Iterator_base12::_Orphan_me_unlocked_v3() Line 1204 C++
Microsoft.Terminal.Control.dll!std::_Iterator_base12::_Orphan_me_locked_v3() Line 1217 C++
Microsoft.Terminal.Control.dll!std::_Iterator_base12::~_Iterator_base12() Line 1125 C++
Microsoft.Terminal.Control.dll!std::_List_unchecked_const_iterator<std::_List_val<std::_List_simple_types<std::pair<Microsoft::Console::Render::AtlasEngine::AtlasKey,Microsoft::Console::Render::AtlasEngine::AtlasValue>>>,std::_Iterator_base12>::~_List_unchecked_const_iterator<std::_List_val<std::_List_simple_types<std::pair<Microsoft::Console::Render::AtlasEngine::AtlasKey,Microsoft::Console::Render::AtlasEngine::AtlasValue>>>,std::_Iterator_base12>() C++
Microsoft.Terminal.Control.dll!std::_List_const_iterator<std::_List_val<std::_List_simple_types<std::pair<Microsoft::Console::Render::AtlasEngine::AtlasKey,Microsoft::Console::Render::AtlasEngine::AtlasValue>>>>::~_List_const_iterator<std::_List_val<std::_List_simple_types<std::pair<Microsoft::Console::Render::AtlasEngine::AtlasKey,Microsoft::Console::Render::AtlasEngine::AtlasValue>>>>() C++
Microsoft.Terminal.Control.dll!std::_List_iterator<std::_List_val<std::_List_simple_types<std::pair<Microsoft::Console::Render::AtlasEngine::AtlasKey,Microsoft::Console::Render::AtlasEngine::AtlasValue>>>>::~_List_iterator<std::_List_val<std::_List_simple_types<std::pair<Microsoft::Console::Render::AtlasEngine::AtlasKey,Microsoft::Console::Render::AtlasEngine::AtlasValue>>>>() C++
Microsoft.Terminal.Control.dll!std::_List_iterator<std::_List_val<std::_List_simple_types<std::pair<Microsoft::Console::Render::AtlasEngine::AtlasKey,Microsoft::Console::Render::AtlasEngine::AtlasValue>>>>::`scalar deleting destructor'(unsigned int) C++
Microsoft.Terminal.Control.dll!std::_Destroy_in_place<std::_List_iterator<std::_List_val<std::_List_simple_types<std::pair<Microsoft::Console::Render::AtlasEngine::AtlasKey,Microsoft::Console::Render::AtlasEngine::AtlasValue>>>>>(std::_List_iterator<std::_List_val<std::_List_simple_types<std::pair<Microsoft::Console::Render::AtlasEngine::AtlasKey,Microsoft::Console::Render::AtlasEngine::AtlasValue>>>> & _Obj) Line 302 C++
Microsoft.Terminal.Control.dll!std::destroy_n<std::_List_iterator<std::_List_val<std::_List_simple_types<std::pair<Microsoft::Console::Render::AtlasEngine::AtlasKey,Microsoft::Console::Render::AtlasEngine::AtlasValue>>>> *,unsigned __int64>(std::_List_iterator<std::_List_val<std::_List_simple_types<std::pair<Microsoft::Console::Render::AtlasEngine::AtlasKey,Microsoft::Console::Render::AtlasEngine::AtlasValue>>>> * _First, const unsigned __int64 _Count_raw) Line 578 C++
> Microsoft.Terminal.Control.dll!Microsoft::Console::Render::AtlasEngine::Buffer<std::_List_iterator<std::_List_val<std::_List_simple_types<std::pair<Microsoft::Console::Render::AtlasEngine::AtlasKey,Microsoft::Console::Render::AtlasEngine::AtlasValue>>>>,8>::destroy() Line 321 C++
Microsoft.Terminal.Control.dll!Microsoft::Console::Render::AtlasEngine::Buffer<std::_List_iterator<std::_List_val<std::_List_simple_types<std::pair<Microsoft::Console::Render::AtlasEngine::AtlasKey,Microsoft::Console::Render::AtlasEngine::AtlasValue>>>>,8>::operator=(Microsoft::Console::Render::AtlasEngine::Buffer<std::_List_iterator<std::_List_val<std::_List_simple_types<std::pair<Microsoft::Console::Render::AtlasEngine::AtlasKey,Microsoft::Console::Render::AtlasEngine::AtlasValue>>>>,8> && other) Line 230 C++
[External Code]
Microsoft.Terminal.Control.dll!Microsoft::Console::Render::AtlasEngine::_createResources() Line 543 C++
Microsoft.Terminal.Control.dll!Microsoft::Console::Render::AtlasEngine::GetSwapChainHandle() Line 309 C++
Microsoft.Terminal.Control.dll!winrt::Microsoft::Terminal::Control::implementation::ControlCore::SwapChainHandle() Line 1570 C++
Microsoft.Terminal.Control.dll!winrt::impl::produce<winrt::Microsoft::Terminal::Control::implementation::ControlCore,winrt::Microsoft::Terminal::Control::IControlCore>::get_SwapChainHandle(unsigned __int64 * value) Line 2031 C++
Microsoft.Terminal.Control.dll!winrt::impl::consume_Microsoft_Terminal_Control_IControlCore<winrt::Microsoft::Terminal::Control::IControlCore>::SwapChainHandle() Line 122 C++
Microsoft.Terminal.Control.dll!winrt::Microsoft::Terminal::Control::implementation::TermControl::RenderEngineSwapChainChanged(winrt::Windows::Foundation::IInspectable __coro_heap_ellision, winrt::Windows::Foundation::IInspectable __coro_frame_ptr) Line 745 C++
I saw another that looked like:
Details
ucrtbased.dll!00007ffc27cf024e() Unknown
Microsoft.Terminal.Control.dll!operator delete(void * block) Line 38 C++
> Microsoft.Terminal.Control.dll!Microsoft::Console::Render::AtlasEngine::Buffer<std::_List_iterator<std::_List_val<std::_List_simple_types<std::pair<Microsoft::Console::Render::AtlasEngine::AtlasKey,Microsoft::Console::Render::AtlasEngine::AtlasValue>>>>,8>::deallocate(std::_List_iterator<std::_List_val<std::_List_simple_types<std::pair<Microsoft::Console::Render::AtlasEngine::AtlasKey,Microsoft::Console::Render::AtlasEngine::AtlasValue>>>> * data) Line 315 C++
Microsoft.Terminal.Control.dll!Microsoft::Console::Render::AtlasEngine::Buffer<std::_List_iterator<std::_List_val<std::_List_simple_types<std::pair<Microsoft::Console::Render::AtlasEngine::AtlasKey,Microsoft::Console::Render::AtlasEngine::AtlasValue>>>>,8>::destroy() Line 321 C++
Microsoft.Terminal.Control.dll!Microsoft::Console::Render::AtlasEngine::Buffer<std::_List_iterator<std::_List_val<std::_List_simple_types<std::pair<Microsoft::Console::Render::AtlasEngine::AtlasKey,Microsoft::Console::Render::AtlasEngine::AtlasValue>>>>,8>::operator=(Microsoft::Console::Render::AtlasEngine::Buffer<std::_List_iterator<std::_List_val<std::_List_simple_types<std::pair<Microsoft::Console::Render::AtlasEngine::AtlasKey,Microsoft::Console::Render::AtlasEngine::AtlasValue>>>>,8> && other) Line 230 C++
[External Code]
Microsoft.Terminal.Control.dll!Microsoft::Console::Render::AtlasEngine::_createResources() Line 543 C++
Microsoft.Terminal.Control.dll!Microsoft::Console::Render::AtlasEngine::GetSwapChainHandle() Line 309 C++
Microsoft.Terminal.Control.dll!winrt::Microsoft::Terminal::Control::implementation::ControlCore::SwapChainHandle() Line 1570 C++
Microsoft.Terminal.Control.dll!winrt::impl::produce<winrt::Microsoft::Terminal::Control::implementation::ControlCore,winrt::Microsoft::Terminal::Control::IControlCore>::get_SwapChainHandle(unsigned __int64 * value) Line 2031 C++
Microsoft.Terminal.Control.dll!winrt::impl::consume_Microsoft_Terminal_Control_IControlCore<winrt::Microsoft::Terminal::Control::IControlCore>::SwapChainHandle() Line 122 C++
Microsoft.Terminal.Control.dll!winrt::Microsoft::Terminal::Control::implementation::TermControl::RenderEngineSwapChainChanged(winrt::Windows::Foundation::IInspectable __coro_heap_ellision, winrt::Windows::Foundation::IInspectable __coro_frame_ptr) Line 745 C++
[External Code]
Microsoft.Terminal.Control.dll!wil::details::dispatcher_handler::Complete() Line 88 C++
looks like we're calling Buffer::operator=(), calling destroy() on this, and this was null, cause all the members of _r were null...
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
Area-AtlasEngineIssue-BugIt either shouldn't be doing this or needs an investigation.It either shouldn't be doing this or needs an investigation.Needs-Tag-FixDoesn't match tag requirementsDoesn't match tag requirementsProduct-TerminalThe new Windows Terminal.The new Windows Terminal.Severity-BlockingWe won't ship a release like this! No-siree.We won't ship a release like this! No-siree.Severity-CrashCrashes are real bad news.Crashes are real bad news.
{ "background": "#011424", "colorScheme": "Campbell Powershell", "commandline": "C:\\Program Files\\PowerShell\\7\\pwsh.exe -nologo", "font": { "face": "Cascadia Code", "weight": "light" }, "hidden": false, "name": "PowerShell", "opacity": 50, "unfocusedAppearance": { "background": "#162029", "experimental.pixelShaderPath": "C:\\Users\\migrie\\dev\\public\\terminal\\samples\\PixelShaders\\Grayscale.hlsl", }, "useAcrylic": true, },