Description

This is a fairly common crash that occurs in the 4.17 and 4.18 releases. This callstack was originally being tracked under UE-47072, but that had specific repro steps that were confirmed fixed in 4.18.0, while this callstack still continues. Users have not provided any descriptions of their actions when the crash occurred.

Source Context

 598       const FSlateBrush* FAssetEditorToolkit::GetDefaultTabIcon() const
  599       {
  600       	if (EditingObjects.Num() == 0)
  601       	{
  602       		return nullptr;
  603       	}
  604       
  605       	const FSlateBrush* IconBrush = nullptr;
  606       
  607       	for (auto ObjectIt = EditingObjects.CreateConstIterator(); ObjectIt; ++ObjectIt)
  608       	{
  609 ***** 		const FSlateBrush* ThisAssetBrush = FSlateIconFinder::FindIconBrushForClass((*ObjectIt)->GetClass());
  610       		
  611       		if (!IconBrush)
  612       		{
  613       			IconBrush = ThisAssetBrush;
  614       		}
  615       		else if (IconBrush != ThisAssetBrush)
  616       		{
  617       			// Fallback icon
  618       			return FEditorStyle::GetBrush(TEXT("ClassIcon.Default"));
  619       		}
  620       	}
  621       
  622       	return IconBrush;
  623       }
Steps to Reproduce

repro steps currently unknown

Callstack
Access violation - code c0000005 (first/second chance not available)

UE4Editor_UnrealEd!FAssetEditorToolkit::GetDefaultTabIcon() asseteditortoolkit.cpp:610 
UE4Editor_UnrealEd!TBaseSPMethodDelegateInstance<1,FAssetEditorToolkit,0,FSlateBrush const * __ptr64 __cdecl() delegateinstancesimpl.h:327 
UE4Editor_Slate!TAttribute<FSlateBrush const * __ptr64>::Get() attribute.h:137 
UE4Editor_Slate!SDockTab::GetTabPadding() sdocktab.cpp:626 
UE4Editor_Slate!TBaseSPMethodDelegateInstance<1,SDockTab,0,FMargin __cdecl() delegateinstancesimpl.h:327 
UE4Editor_SlateCore!TAttribute<FMargin>::Get() attribute.h:137 
UE4Editor_SlateCore!SOverlay::OnArrangeChildren() soverlay.cpp:33 
UE4Editor_SlateCore!FWidgetPath::SearchForWidgetRecursively<FWidgetMatcher>() widgetpath.inl:28 
UE4Editor_SlateCore!FWidgetPath::SearchForWidgetRecursively<FWidgetMatcher>() widgetpath.inl:36 
UE4Editor_SlateCore!FWidgetPath::SearchForWidgetRecursively<FWidgetMatcher>() widgetpath.inl:36 
UE4Editor_SlateCore!FWidgetPath::SearchForWidgetRecursively<FWidgetMatcher>() widgetpath.inl:36 
UE4Editor_SlateCore!FWidgetPath::SearchForWidgetRecursively<FWidgetMatcher>() widgetpath.inl:36 
UE4Editor_SlateCore!FWidgetPath::SearchForWidgetRecursively<FWidgetMatcher>() widgetpath.inl:36 
UE4Editor_SlateCore!FWidgetPath::SearchForWidgetRecursively<FWidgetMatcher>() widgetpath.inl:36 
UE4Editor_SlateCore!FWidgetPath::SearchForWidgetRecursively<FWidgetMatcher>() widgetpath.inl:36 
UE4Editor_SlateCore!FWidgetPath::SearchForWidgetRecursively<FWidgetMatcher>() widgetpath.inl:36 
UE4Editor_SlateCore!FWidgetPath::SearchForWidgetRecursively<FWidgetMatcher>() widgetpath.inl:36 
UE4Editor_SlateCore!FWidgetPath::SearchForWidgetRecursively<FWidgetMatcher>() widgetpath.inl:36 
UE4Editor_SlateCore!FWidgetPath::SearchForWidgetRecursively<FWidgetMatcher>() widgetpath.inl:36 
UE4Editor_SlateCore!FWidgetPath::SearchForWidgetRecursively<FWidgetMatcher>() widgetpath.inl:36 
UE4Editor_SlateCore!FWidgetPath::SearchForWidgetRecursively<FWidgetMatcher>() widgetpath.inl:36 
UE4Editor_SlateCore!FWidgetPath::SearchForWidgetRecursively<FWidgetMatcher>() widgetpath.inl:36 
UE4Editor_SlateCore!FWidgetPath::SearchForWidgetRecursively<FWidgetMatcher>() widgetpath.inl:36 
UE4Editor_SlateCore!FWidgetPath::SearchForWidgetRecursively<FWidgetMatcher>() widgetpath.inl:36 
UE4Editor_SlateCore!FWidgetPath::GeneratePathToWidget<FWidgetMatcher>() widgetpath.h:125 
UE4Editor_SlateCore!FWidgetPath::ExtendPathTo<FWidgetMatcher>() widgetpath.h:97 
UE4Editor_SlateCore!FSlateWindowHelper::FindPathToWidget() slatewindowhelper.cpp:116 
UE4Editor_SlateCore!FSlateWindowHelper::FindPathToWidget() slatewindowhelper.cpp:125 
UE4Editor_Slate!FSlateApplication::GeneratePathToWidgetChecked() slateapplication.cpp:2941 
UE4Editor_Slate!FSlateApplication::AddModalWindow() slateapplication.cpp:2026 
UE4Editor_UnrealEd!UEditorEngine::EditorAddModalWindow() editorengine.cpp:3845 
UE4Editor_UnrealEd!OpenMsgDlgInt() dialogs.cpp:302 
UE4Editor_Core!FMessageDialog::Open() messagedialog.cpp:98 
UE4Editor_UnrealEd!ObjectTools::DeleteSingleObject() objecttools.cpp:2008 
UE4Editor_UnrealEd!ObjectTools::ForceDeleteObjects() objecttools.cpp:2328 
UE4Editor_UnrealEd!FAssetDeleteModel::DoForceDelete() assetdeletemodel.cpp:316 
UE4Editor_UnrealEd!SDeleteAssetsDialog::ForceDelete() sdeleteassetsdialog.cpp:717 
UE4Editor_UnrealEd!TMemberFunctionCaller<SDeleteAssetsDialog,FReply() delegateinstanceinterface.h:165 
UE4Editor_UnrealEd!UE4Tuple_Private::TTupleImpl<TIntegerSequence<unsigned int> >::ApplyAfter<TMemberFunctionCaller<SDeleteAssetsDialog,FReply() tuple.h:497 
UE4Editor_UnrealEd!TBaseSPMethodDelegateInstance<0,SDeleteAssetsDialog,0,FReply __cdecl() delegateinstancesimpl.h:327 
UE4Editor_Slate!TBaseDelegate<FReply>::Execute() delegatesignatureimpl.inl:537 
UE4Editor_Slate!SButton::OnMouseButtonUp() sbutton.cpp:282 
UE4Editor_Slate!<lambda_1002768c627006711ef2f351a87ec0e7>::operator() slateapplication.cpp:5199 
UE4Editor_Slate!FEventRouter::Route<FReply,FEventRouter::FToLeafmostPolicy,FPointerEvent,<lambda_1002768c627006711ef2f351a87ec0e7> >() slateapplication.cpp:232 
UE4Editor_Slate!FSlateApplication::RoutePointerUpEvent() slateapplication.cpp:5188 
UE4Editor_Slate!FSlateApplication::ProcessMouseButtonUpEvent() slateapplication.cpp:5690 
UE4Editor_Slate!FSlateApplication::OnMouseUp() slateapplication.cpp:5670 
UE4Editor_Core!FWindowsApplication::ProcessDeferredMessage() windowsapplication.cpp:1718 
UE4Editor_Core!FWindowsApplication::DeferMessage() windowsapplication.cpp:2161 
UE4Editor_Core!FWindowsApplication::ProcessMessage() windowsapplication.cpp:881 
UE4Editor_Core!FWindowsApplication::AppWndProc() windowsapplication.cpp:721 
user32!UserCallWinProcCheckWow() 
user32!DispatchMessageWorker() 
UE4Editor_Core!FWindowsApplication::PumpMessages() windowsapplication.cpp:2173 
UE4Editor_Slate!FSlateApplication::TickPlatform() slateapplication.cpp:1613 
UE4Editor_Slate!FSlateApplication::AddModalWindow() slateapplication.cpp:2094 
UE4Editor_UnrealEd!UEditorEngine::EditorAddModalWindow() editorengine.cpp:3845 
UE4Editor_UnrealEd!ObjectTools::DeleteObjects() objecttools.cpp:1836 
UE4Editor_UnrealEd!ObjectTools::DeleteAssets() objecttools.cpp:1743 
UE4Editor_ContentBrowser!FAssetContextMenu::ExecuteDelete() assetcontextmenu.cpp:1816 
UE4Editor_ContentBrowser!SContentBrowser::HandleDeleteCommandExecute() scontentbrowser.cpp:2131 
UE4Editor_ContentBrowser!TBaseSPMethodDelegateInstance<0,SContentBrowser,0,TTypeWrapper<void> __cdecl() delegateinstancesimpl.h:327 
UE4Editor_ContentBrowser!TBaseSPMethodDelegateInstance<0,SContentBrowser,0,void __cdecl() delegateinstancesimpl.h:434 
UE4Editor_Slate!FUICommandList::ConditionalProcessCommandBindings() uicommandlist.cpp:216 

Have Comments or More Details?

There's no existing public thread on this issue, so head over toAnswerHub just mention UE-51941 in the post.

0
Login to Vote

Fixed
ComponentTools
Affects Versions4.174.18
Target Fix4.18.1
Fix Commit3735316
CreatedNov 2, 2017
ResolvedNov 3, 2017
UpdatedApr 27, 2018
Pull Requests
4447 - klorberg