Description

Relates to
[Link Removed]
[Link Removed]

Call stack is similar to the bugs above.

Editor will crash when exporting assets from a level that is not dirtied.
Another reproduction method is to select a mesh that can be exported as FBX, and an asset that cannot (Static Mesh + Blueprint actor)

This crash also occurs frequently when exporting multiple static meshes (normal flow)

Steps to Reproduce

Export all repro

  1. Launch any project in UE4Editor
  2. Create a new blank level
  3. Drag a static mesh into the level to dirty it
  4. Export the level using File > Export all
  5. Find a location and name the file
  6. Press save
  7. Observe that there is no crash
  8. Save the level
  9. File > Export All again

Export Selected repro

  1. Place a Static Mesh and a Blueprint actor into the level
  2. Select both actors > Export All

RESULT
Editor crashes

FREQUENCY
10/10 - 100% when following repro scenarios above
5/10 - When exporting using Export Selected regularly

Callstack
>	UE4Editor-UnrealEd.dll!UnFbx::FFbxExporter::FillExportOptions(bool BatchMode, bool bShowOptionDialog, const FString & FullPath, bool & OutOperationCanceled, bool & bOutExportAll) Line 152	C++
 	UE4Editor-UnrealEd.dll!ULevelExporterFBX::ExportBinary(UObject * Object, const wchar_t * Type, FArchive & Ar, FFeedbackContext * Warn, int FileIndex, unsigned int PortFlags) Line 1478	C++
 	UE4Editor-Engine.dll!UExporter::ExportToArchive(UObject * Object, UExporter * InExporter, FArchive & Ar, const wchar_t * FileType, int FileIndex) Line 157	C++
 	UE4Editor-Engine.dll!UExporter::ExportToFileEx(UExporter::FExportToFileParams & ExportParams) Line 461	C++
 	UE4Editor-UnrealEd.dll!UEditorEngine::ExportMap(UWorld * InWorld, const wchar_t * InFilename, bool bExportSelectedActorsOnly) Line 2782	C++
 	UE4Editor-UnrealEd.dll!FEditorFileUtils::Export(bool bExportSelectedActorsOnly) Line 1180	C++
 	UE4Editor-LevelEditor.dll!TBaseStaticDelegateInstance<void __cdecl(void)>::ExecuteIfSafe() Line 1027	C++
 	UE4Editor-Slate.dll!FUICommandList::ExecuteAction(const TSharedRef<FUICommandInfo const ,0> InUICommandInfo) Line 97	C++
 	UE4Editor-Slate.dll!SMenuEntryBlock::OnClicked(bool bCheckBoxClicked) Line 1082	C++
 	UE4Editor-Slate.dll!SMenuEntryBlock::OnMenuItemButtonClicked() Line 1042	C++
 	UE4Editor-Slate.dll!TMemberFunctionCaller<SMenuEntryBlock,FReply (__cdecl SMenuEntryBlock::*)(void) __ptr64>::operator()<>() Line 165	C++
 	UE4Editor-Slate.dll!UE4Tuple_Private::TTupleImpl<TIntegerSequence<unsigned int> >::ApplyAfter<TMemberFunctionCaller<SMenuEntryBlock,FReply (__cdecl SMenuEntryBlock::*)(void) __ptr64> >(TMemberFunctionCaller<SMenuEntryBlock,FReply (__cdecl SMenuEntryBlock::*)(void)> && Func) Line 497	C++
 	UE4Editor-Slate.dll!TBaseSPMethodDelegateInstance<0,SMenuEntryBlock,0,FReply __cdecl(void)>::Execute() Line 327	C++
 	UE4Editor-Slate.dll!TBaseDelegate<FReply>::Execute() Line 537	C++
 	UE4Editor-Slate.dll!SButton::OnMouseButtonUp(const FGeometry & MyGeometry, const FPointerEvent & MouseEvent) Line 282	C++
 	UE4Editor-Slate.dll!SMenuEntryButton::OnMouseButtonUp(const FGeometry & MyGeometry, const FPointerEvent & MouseEvent) Line 439	C++
 	UE4Editor-Slate.dll!FSlateApplication::RoutePointerUpEvent::__l8::<lambda>(const FArrangedWidget & TargetWidget, const FPointerEvent & Event) Line 5254	C++
 	UE4Editor-Slate.dll!FEventRouter::Route<FReply,FEventRouter::FToLeafmostPolicy,FPointerEvent,FReply <lambda>(const FArrangedWidget &, const FPointerEvent &) >(FSlateApplication * ThisApplication, FEventRouter::FToLeafmostPolicy RoutingPolicy, FPointerEvent EventCopy, const FSlateApplication::RoutePointerUpEvent::__l8::FReply <lambda>(const FArrangedWidget &, const FPointerEvent &) & Lambda) Line 234	C++
 	UE4Editor-Slate.dll!FSlateApplication::RoutePointerUpEvent(FWidgetPath & WidgetsUnderPointer, FPointerEvent & PointerEvent) Line 5243	C++
 	UE4Editor-Slate.dll!FSlateApplication::ProcessMouseButtonUpEvent(FPointerEvent & MouseEvent) Line 5745	C++
 	UE4Editor-Slate.dll!FSlateApplication::OnMouseUp(const EMouseButtons::Type Button, const FVector2D CursorPos) Line 5725	C++
 	UE4Editor-ApplicationCore.dll!FWindowsApplication::ProcessDeferredMessage(const FDeferredWindowsMessage & DeferredMessage) Line 1725	C++
 	UE4Editor-ApplicationCore.dll!FWindowsApplication::DeferMessage(TSharedPtr<FWindowsWindow,0> & NativeWindow, HWND__ * InHWnd, unsigned int InMessage, unsigned __int64 InWParam, __int64 InLParam, int MouseX, int MouseY, unsigned int RawInputFlags) Line 2171	C++
 	UE4Editor-ApplicationCore.dll!FWindowsApplication::ProcessMessage(HWND__ * hwnd, unsigned int msg, unsigned __int64 wParam, __int64 lParam) Line 888	C++
 	UE4Editor-ApplicationCore.dll!FWindowsApplication::AppWndProc(HWND__ * hwnd, unsigned int msg, unsigned __int64 wParam, __int64 lParam) Line 725	C++
 	[External Code]	
 	UE4Editor-ApplicationCore.dll!FWindowsPlatformApplicationMisc::PumpMessages(bool bFromMainLoop) Line 129	C++
 	UE4Editor.exe!FEngineLoop::Tick() Line 3219	C++
 	UE4Editor.exe!GuardedMain(const wchar_t * CmdLine, HINSTANCE__ * hInInstance, HINSTANCE__ * hPrevInstance, int nCmdShow) Line 166	C++
 	UE4Editor.exe!GuardedMainWrapper(const wchar_t * CmdLine, HINSTANCE__ * hInInstance, HINSTANCE__ * hPrevInstance, int nCmdShow) Line 134	C++
 	UE4Editor.exe!WinMain(HINSTANCE__ * hInInstance, HINSTANCE__ * hPrevInstance, char * __formal, int nCmdShow) Line 210	C++
 	[External Code]	

Have Comments or More Details?

There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-50160 in the post.

0
Login to Vote

Fixed
ComponentTools
Affects Versions4.18
Target Fix4.18
Fix Commit3695000
Release Commit3662797
CreatedSep 21, 2017
ResolvedOct 13, 2017
UpdatedApr 27, 2018