terminal
terminal copied to clipboard
Exception when exiting the terminal (`NavigationView::RevokeNavigationViewItemRevokers`)
Windows Terminal version
286fdfea798201c68e6b1d7e11ae746a913df26e
Windows build number
10.0.22623.1028
Other Software
No response
Steps to reproduce
- Debug the terminal (release build
- Exit the terminal while VS is attached.
Expected Behavior
No crash
Actual Behavior
Crashed at https://github.com/microsoft/terminal/blob/main/src/cascadia/TerminalApp/App.cpp#L66

Not really a bit deal. Just trying out the latest dev build and see this. Might as well report it.
Yikes. Do you have a whole stack trace we can look at/?
Sadly no. Should've captured the stack, too. Maybe someone in the future will provide more information.
I may have just hit this:
KernelBase.dll!00007ffb4414c0ec() Unknown
vcruntime140.dll!00007ffb2d1d64c0() Unknown
Microsoft.UI.Xaml.dll!winrt::throw_hresult(const winrt::hresult result) Line 4892 C++
[Inline Frame] Microsoft.UI.Xaml.dll!winrt::check_hresult(const winrt::hresult) Line 4962 C++
Microsoft.UI.Xaml.dll!winrt::impl::consume_Windows_UI_Xaml_IDependencyObject<winrt::Microsoft::UI::Xaml::Controls::NavigationViewItem>::GetValue(const winrt::Windows::UI::Xaml::DependencyProperty & dp) Line 868 C++
Microsoft.UI.Xaml.dll!NavigationView::RevokeNavigationViewItemRevokers(const winrt::Microsoft::UI::Xaml::Controls::NavigationViewItem & nvi) Line 3445 C++
Microsoft.UI.Xaml.dll!NavigationView::ClearAllNavigationViewItemRevokers() Line 3436 C++
Microsoft.UI.Xaml.dll!NavigationView::UnhookEventsAndClearFields(bool isFromDestructor) Line 186 C++
Microsoft.UI.Xaml.dll!NavigationView::~NavigationView() Line 112 C++
[External Code]
Microsoft.UI.Xaml.dll!winrt::implements<NavigationView,winrt::Microsoft::UI::Xaml::Controls::NavigationView,winrt::Microsoft::UI::Xaml::Controls::INavigationView2,winrt::composable,winrt::composing,winrt::Windows::UI::Xaml::Controls::IContentControlOverrides,winrt::Windows::UI::Xaml::Controls::IControlOverrides,winrt::Windows::UI::Xaml::Controls::IControlOverrides6,winrt::Windows::UI::Xaml::IFrameworkElementOverrides,winrt::Windows::UI::Xaml::IFrameworkElementOverrides2,winrt::Windows::UI::Xaml::IUIElementOverrides,winrt::Windows::UI::Xaml::IUIElementOverrides7,winrt::Windows::UI::Xaml::IUIElementOverrides8,winrt::Windows::UI::Xaml::IUIElementOverrides9,IReferenceTrackerExtension>::Release() Line 7802 C++
[External Code]
> TerminalApp.dll!winrt::TerminalApp::implementation::App::Close() Line 66 C++
TerminalApp.dll!winrt::impl::produce<winrt::TerminalApp::implementation::App,winrt::Windows::Foundation::IClosable>::Close() Line 1082 C++
WindowsTerminal.exe!winrt::impl::consume_Windows_Foundation_IClosable<winrt::TerminalApp::App>::Close() Line 121 C++
WindowsTerminal.exe!AppHost::~AppHost() Line 150 C++
WindowsTerminal.exe!wWinMain(HINSTANCE__ * __formal, HINSTANCE__ * __formal, wchar_t * __formal, int __formal) Line 193 C++
[External Code]
I was exiting, with VS attached, two tabs (one pwsh(active), one SUI), close dialog open. Weird.
RevokeNavigationViewItemRevokers
this sounds familiar...
I wonder if we're just hitting it in a different place or with different timing due to the removal of Toolkit XamlApplication?
@zadjii-msft Your stack looks about the same as what I saw. Guess it's the same one.
Turns out that this is a XAML issue. Closing as resolution-external.
Is it though? I thought we ingested a 2.7 build that had fixed this? Or am I just misremembering?