Description
  • Placing a character that reference to a reparented AnimBP(created as a child of thirdperson, then reparented to AnimInstance) crashes editor after reopening the project. If you already had that character in the starting level, editor will crash on launch.
Steps to Reproduce

1. Open the attached project
2. Try to open ThirdPersonBP/Blueprints/TestBP or place it in the level
3. Editor crash

(Steps to create the repro project)
1. Create a new ThirdPerson Project
2. Create a new child of Mannequin/Animations/ThirdPerson_AnimBP (ThirdPerson_AnimBP_Child)
3. Add a new character BP(testBP) in ThirdPersonBP/Blueprints, then edit it to use SK_Mannequin mesh, with ThirdPerson_AnimBP_Child animBP.
4. Save the added files
5. Open ThirdPerson_AnimBP_Child and reparent it from ThirdPerson_AnimBP to AnimInstance. This causes compile error but save the AnimBP anyway
6. Close the project then reopen
7. Now opening TestBP or trying to place it causes this crash

Callstack
UE4Editor_CoreUObject!UObject::SetLinker() [uobjectlinker.cpp:105]
UE4Editor_CoreUObject!FLinkerLoad::Detach() [linkerload.cpp:4328]
UE4Editor_CoreUObject!FLinkerManager::ResetLoaders() [linkermanager.cpp:127]
UE4Editor_CoreUObject!UObject::Rename() [obj.cpp:213]
UE4Editor_KismetCompiler!FKismetCompilerContext::CleanAndSanitizeClass() [kismetcompiler.cpp:277]
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::CleanAndSanitizeClass() [animblueprintcompiler.cpp:1813]
UE4Editor_KismetCompiler!FKismetCompilerContext::CompileClassLayout() [kismetcompiler.cpp:3811]
UE4Editor_KismetCompiler!FKismet2CompilerModule::CompileBlueprintInner() [kismetcompilermodule.cpp:125]
UE4Editor_KismetCompiler!FKismet2CompilerModule::CompileBlueprint() [kismetcompilermodule.cpp:232]
UE4Editor_UnrealEd!FBlueprintEditorUtils::MarkBlueprintAsStructurallyModified() [blueprinteditorutils.cpp:2096]
UE4Editor_UnrealEd!FBlueprintEditorUtils::AddDomainSpecificGraph() [blueprinteditorutils.cpp:2448]
UE4Editor_UnrealEd!FBlueprintEditorUtils::UpdateOutOfDateAnimBlueprints() [blueprinteditorutils.cpp:6303]
UE4Editor_Engine!UBlueprint::PostLoad() [blueprint.cpp:790]
UE4Editor_Engine!UAnimBlueprint::PostLoad() [animblueprint.cpp:141]
UE4Editor_CoreUObject!UObject::ConditionalPostLoad() [obj.cpp:991]
UE4Editor_CoreUObject!EndLoad() [uobjectglobals.cpp:1567]
UE4Editor_CoreUObject!LoadPackageInternal() [uobjectglobals.cpp:1312]
UE4Editor_CoreUObject!LoadPackage() [uobjectglobals.cpp:1409]
UE4Editor_CoreUObject!ResolveName() [uobjectglobals.cpp:781]
UE4Editor_CoreUObject!StaticLoadObjectInternal() [uobjectglobals.cpp:869]
UE4Editor_CoreUObject!StaticLoadObject() [uobjectglobals.cpp:936]
UE4Editor_UnrealEd!FAssetData::GetAsset() [assetdata.h:276]
UE4Editor_UnrealEd!FAssetDragDropOp::Init() [assetdragdropop.cpp:218]
UE4Editor_UnrealEd!FAssetDragDropOp::New() [assetdragdropop.cpp:49]
UE4Editor_ContentBrowser!SAssetView::OnDraggingAssetItem() [sassetview.cpp:3906]
UE4Editor_ContentBrowser!TMemberFunctionCaller<SAssetView,FReply() [delegateinstanceinterface.h:165]
UE4Editor_ContentBrowser!UE4Tuple_Private::TTupleImpl<TIntegerSequence<unsigned int> >::ApplyAfter<TMemberFunctionCaller<SAssetView,FReply() [tuple.h:497]
UE4Editor_ContentBrowser!TBaseSPMethodDelegateInstance<0,SAssetView,0,FReply __cdecl() [delegateinstancesimpl.h:327]
UE4Editor_ContentBrowser!TBaseDelegate<FReply,FGeometry const & __ptr64,FPointerEvent const & __ptr64>::Execute() [delegatesignatureimpl.inl:537]
UE4Editor_ContentBrowser!STableRow<TSharedPtr<FAssetViewItem,0> >::OnDragDetected() [stablerow.h:589]
UE4Editor_Slate!<lambda_3d2f0c0de9bfb1f26dd3fbfeef226ad5>::operator() [slateapplication.cpp:5347]
UE4Editor_Slate!FEventRouter::Route<FReply,FEventRouter::FDirectPolicy,FPointerEvent,<lambda_3d2f0c0de9bfb1f26dd3fbfeef226ad5> >() [slateapplication.cpp:232]
UE4Editor_Slate!FSlateApplication::RoutePointerMoveEvent() [slateapplication.cpp:5345]
UE4Editor_Slate!FSlateApplication::ProcessMouseMoveEvent() [slateapplication.cpp:5905]
UE4Editor_Slate!FSlateApplication::OnMouseMove() [slateapplication.cpp:5839]
UE4Editor_Core!FWindowsApplication::ProcessDeferredMessage() [windowsapplication.cpp:1756]
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!FWindowsPlatformMisc::PumpMessages() [windowsplatformmisc.cpp:1009]
UE4Editor!FEngineLoop::Tick() [launchengineloop.cpp:3151]
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 to Questions & Answers just mention UE-51414 in the post.

1
Login to Vote

Fixed
ComponentOLD - Anim
Affects Versions4.164.174.18
Target Fix4.19
Fix Commit3728516
Main Commit3759284
Release Commit3813083
CreatedOct 18, 2017
ResolvedOct 31, 2017
UpdatedMay 18, 2020