Description

Crash occurs when the user creates a loop between two anim blueprints referencing each other as sub anim instances

Steps to Reproduce
  1. Open QAGame in editor.
  2. Create a new anim bp based on UE4_Mannequin_Skeleton. Name it BP_A.
  3. Create another anim bp based on UE4_Mannequin_Skeleton. Name it BP_B.
  4. Open BP_A.
  5. Add a Sub Anim Instance node and wire it to the Final Animation Pose.
  6. Set the Sub Anim Instance to BP_B and compile.
  7. Open BP_B.
  8. Add a Sub Anim Instance node and wire it to the final Animation Pose.
  9. Set the Sub Anim Instance to BP_A and compile.

RESULT:

Crash.

Callstack

UE4Editor_Core!FSampleFNameChurn::NameCreationHook() unrealnames.cpp:1394
UE4Editor_Core!FName::InitInternal_FindOrAddNameEntry<char>() unrealnames.cpp:772
UE4Editor_Core!FName::InitInternal_FindOrAdd<char>() unrealnames.cpp:737
UE4Editor_Core!FName::InitInternal<char>() unrealnames.cpp:627
UE4Editor_Core!FName::InitInternal_HashSplit<char>() unrealnames.cpp:583
UE4Editor_Core!FName::Init() unrealnames.cpp:536
UE4Editor_Core!FName::FName() unrealnames.cpp:417
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:680
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691
UE4Editor_KismetCompiler!FAnimBlueprintCompiler::GetDuplicatedSlotAndStateNames() animblueprintcompiler.cpp:691

Have Comments or More Details?

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

0
Login to Vote

Fixed
ComponentAnim - Animation
Affects Versions4.13
Target Fix4.13
Fix Commit3082221
Main Commit3092051
Release Commit3082221
CreatedAug 8, 2016
ResolvedAug 9, 2016
UpdatedApr 27, 2018