Description

This is a common crash affecting users in 4.16. Unfortunately they have not provided any additional details.

Source Context

3684       	// Remove null layer infos
 3685       	EditorLayerSettings.RemoveAll([](const FLandscapeEditorLayerSettings& Entry) { return Entry.LayerInfoObj == nullptr; });
 3686       
 3687       	ULandscapeInfo* Info = GetLandscapeInfo();
 3688       	bool bRemovedAnyLayers = false;
 3689       	for (ULandscapeComponent* Component : LandscapeComponents)
 3690       	{
 3691 ***** 		int32 NumNullLayers = Algo::CountIf(Component->WeightmapLayerAllocations, [](const FWeightmapLayerAllocationInfo& Allocation) { return Allocation.LayerInfo == nullptr; });
 3692       		if (NumNullLayers > 0)
 3693       		{
 3694       			FLandscapeEditDataInterface LandscapeEdit(Info);
 3695       			for (int32 i = 0; i < NumNullLayers; ++i)
 3696       			{
 3697       				// DeleteLayer doesn't expect duplicates, so we need to call it once for each null
 3698       				Component->DeleteLayer(nullptr, LandscapeEdit);
 3699       			}
 3700       			bRemovedAnyLayers = true;
 3701       		}
 3702       	}
Steps to Reproduce

repro steps currently unknown
callstack indicates something was being force-deleted.

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

UE4Editor_Landscape!ALandscapeProxy::PostEditChangeProperty() [landscapeedit.cpp:3692]
UE4Editor_Landscape!ALandscape::PostEditChangeProperty() [landscapeedit.cpp:3851]
UE4Editor_UnrealEd!ObjectTools::ForceReplaceReferences() [objecttools.cpp:774]
UE4Editor_UnrealEd!ObjectTools::ForceDeleteObjects() [objecttools.cpp:2295]
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:278]
UE4Editor_Slate!<lambda_8d0e9a1da76abd0a756a3a9d775f5ed1>::operator() [slateapplication.cpp:5049]
UE4Editor_Slate!FEventRouter::Route<FReply,FEventRouter::FToLeafmostPolicy,FPointerEvent,<lambda_8d0e9a1da76abd0a756a3a9d775f5ed1> >() [slateapplication.cpp:239]
UE4Editor_Slate!FSlateApplication::RoutePointerUpEvent() [slateapplication.cpp:5038]
UE4Editor_Slate!FSlateApplication::ProcessMouseButtonUpEvent() [slateapplication.cpp:5515]
UE4Editor_Slate!FSlateApplication::OnMouseUp() [slateapplication.cpp:5495]
UE4Editor_Core!FWindowsApplication::ProcessDeferredMessage() [windowsapplication.cpp:1704]
UE4Editor_Core!FWindowsApplication::DeferMessage() [windowsapplication.cpp:2127]
UE4Editor_Core!FWindowsApplication::ProcessMessage() [windowsapplication.cpp:867]
UE4Editor_Core!FWindowsApplication::AppWndProc() [windowsapplication.cpp:714]
user32!UserCallWinProcCheckWow()
user32!DispatchMessageWorker()
UE4Editor_Core!FWindowsApplication::PumpMessages() [windowsapplication.cpp:2139]
UE4Editor_Slate!FSlateApplication::TickPlatform() [slateapplication.cpp:1570]
UE4Editor_Slate!FSlateApplication::AddModalWindow() [slateapplication.cpp:2048]
UE4Editor_UnrealEd!UEditorEngine::EditorAddModalWindow() [editorengine.cpp:3820]
UE4Editor_UnrealEd!ObjectTools::DeleteObjects() [objecttools.cpp:1827]
UE4Editor_UnrealEd!ObjectTools::DeleteAssets() [objecttools.cpp:1734]
UE4Editor_ContentBrowser!FAssetContextMenu::ExecuteDelete() [assetcontextmenu.cpp:1816]
UE4Editor_ContentBrowser!SContentBrowser::HandleDeleteCommandExecute() [scontentbrowser.cpp:2082]
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]
UE4Editor_Slate!FUICommandList::ProcessCommandBindings() [uicommandlist.cpp:160]
UE4Editor_ContentBrowser!SContentBrowser::OnKeyDown() [scontentbrowser.cpp:1028]
UE4Editor_Slate!<lambda_2afcd964c763e269e2d1a63f3a72f846>::operator() [slateapplication.cpp:4630]
UE4Editor_Slate!FEventRouter::Route<FReply,FEventRouter::FBubblePolicy,FKeyEvent,<lambda_2afcd964c763e269e2d1a63f3a72f846> >() [slateapplication.cpp:239]
UE4Editor_Slate!FEventRouter::RouteAlongFocusPath<FEventRouter::FBubblePolicy,<lambda_2afcd964c763e269e2d1a63f3a72f846>,FKeyEvent>() [slateapplication.cpp:221]
UE4Editor_Slate!FSlateApplication::ProcessKeyDownEvent() [slateapplication.cpp:4628]
UE4Editor_Slate!FSlateApplication::OnKeyDown() [slateapplication.cpp:4541]
UE4Editor_Core!FWindowsApplication::ProcessDeferredMessage() [windowsapplication.cpp:1539]
UE4Editor_Core!FWindowsApplication::DeferMessage() [windowsapplication.cpp:2127]
UE4Editor_Core!FWindowsApplication::ProcessMessage() [windowsapplication.cpp:867]
UE4Editor_Core!FWindowsApplication::AppWndProc() [windowsapplication.cpp:714]
user32!UserCallWinProcCheckWow()
user32!DispatchMessageWorker()
UE4Editor_Core!FWindowsPlatformMisc::PumpMessages() [windowsplatformmisc.cpp:1009]
UE4Editor!FEngineLoop::Tick() [launchengineloop.cpp:3058]
UE4Editor!GuardedMain() [launch.cpp:166]
UE4Editor!GuardedMainWrapper() [launchwindows.cpp:134]
UE4Editor!WinMain() [launchwindows.cpp:210]
UE4Editor!__scrt_common_main_seh() [exe_common.inl:253]
kernel32!BaseThreadInitThunk()
ntdll!RtlUserThreadStart()

Have Comments or More Details?

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

0
Login to Vote

Fixed
ComponentTools - Landscape
Affects Versions4.16
Target Fix4.17
Fix Commit3545873
Main Commit3596628
Release Commit3545873
CreatedJul 19, 2017
ResolvedJul 20, 2017
UpdatedApr 27, 2018