Description

A crash is occurring on project load when attempting to use GetParentActor and cast that to a Parent class that contains a child actor component inside of that child actor component's blueprint.

This did not occur in 4.13.2, and as a result, is a regression. This was reproduced in 4.14.0 CL# 3195953 and 4.15 Main CL# 3205566.

Steps to Reproduce
  1. Open the editor
  2. Create 2 Actor blueprint's "Parent" and "Child"
  3. In Parent, add a child actor component and set it's class to Child
  4. Compile & Save Parent
  5. In Child, GetParentActor->Cast to Parent on BeginPlay
  6. Compile & Save Child
  7. Place Parent in the level
  8. Save All & Close project
  9. Re-open project

Result: Project crashes on load

Callstack

Fatal error: [Link Removed] [Line: 11] Cast of LinkerPlaceholderExportObject /Game/FirstPersonBP/Blueprints/Parent.Parent_C:ChildActor_GEN_VARIABLE.ChildActor_GEN_VARIABLE_Child_C_CAT to Actor failed

UE4Editor_CoreUObject!CastLogError() [casts.cpp:12]
UE4Editor_Engine!CastChecked<AActor,UObject>() [casts.h:203]
UE4Editor_Engine!UChildActorComponent::Serialize() [childactorcomponent.cpp:91]
UE4Editor_CoreUObject!FLinkerLoad::Preload() [linkerload.cpp:3414]
UE4Editor_CoreUObject!FLinkerLoad::CreateExportAndPreload() [linkerload.cpp:2890]
UE4Editor_CoreUObject!FLinkerLoad::LoadAllObjects() [linkerload.cpp:3023]
UE4Editor_CoreUObject!LoadPackageInternalInner() [uobjectglobals.cpp:1271]
UE4Editor_CoreUObject!LoadPackageInternal() [uobjectglobals.cpp:1423]
UE4Editor_CoreUObject!FLinkerLoad::VerifyImportInner() [linkerload.cpp:2561]
UE4Editor_CoreUObject!FLinkerLoad::VerifyImport() [linkerload.cpp:2327]
UE4Editor_CoreUObject!FLinkerLoad::VerifyImportInner() [linkerload.cpp:2609]
UE4Editor_CoreUObject!FLinkerLoad::VerifyImport() [linkerload.cpp:2327]
UE4Editor_CoreUObject!FLinkerLoad::CreateImport() [linkerload.cpp:4257]
UE4Editor_CoreUObject!FLinkerLoad::ResolveDependencyPlaceholder() [blueprintsupport.cpp:1090]
UE4Editor_CoreUObject!FLinkerLoad::ResolveDeferredDependencies() [blueprintsupport.cpp:892]
UE4Editor_CoreUObject!FLinkerLoad::ResolveAllImports() [blueprintsupport.cpp:1181]
UE4Editor_CoreUObject!FLinkerLoad::FinalizeBlueprint() [blueprintsupport.cpp:1284]
UE4Editor_CoreUObject!FLinkerLoad::Preload() [linkerload.cpp:3461]
UE4Editor_CoreUObject!FLinkerLoad::CreateExport() [linkerload.cpp:4111]
UE4Editor_CoreUObject!FLinkerLoad::IndexToObject() [linkerload.cpp:4334]
UE4Editor_CoreUObject!FLinkerLoad::CreateExport() [linkerload.cpp:3807]
UE4Editor_CoreUObject!FLinkerLoad::CreateExportAndPreload() [linkerload.cpp:2884]
UE4Editor_CoreUObject!FLinkerLoad::LoadAllObjects() [linkerload.cpp:3023]
UE4Editor_CoreUObject!LoadPackageInternalInner() [uobjectglobals.cpp:1271]
UE4Editor_CoreUObject!LoadPackageInternal() [uobjectglobals.cpp:1423]
UE4Editor_CoreUObject!FLinkerLoad::VerifyImportInner() [linkerload.cpp:2561]
UE4Editor_CoreUObject!FLinkerLoad::VerifyImport() [linkerload.cpp:2327]
UE4Editor_CoreUObject!FLinkerLoad::VerifyImportInner() [linkerload.cpp:2609]
UE4Editor_CoreUObject!FLinkerLoad::VerifyImport() [linkerload.cpp:2327]
UE4Editor_CoreUObject!FLinkerLoad::CreateImport() [linkerload.cpp:4257]
UE4Editor_CoreUObject!FLinkerLoad::ResolveDependencyPlaceholder() [blueprintsupport.cpp:1090]
UE4Editor_CoreUObject!FLinkerLoad::ResolveDeferredDependencies() [blueprintsupport.cpp:950]
UE4Editor_CoreUObject!FLinkerLoad::Preload() [linkerload.cpp:3461]
UE4Editor_CoreUObject!FLinkerLoad::CreateExport() [linkerload.cpp:4111]
UE4Editor_CoreUObject!FLinkerLoad::IndexToObject() [linkerload.cpp:4334]
UE4Editor_CoreUObject!FLinkerLoad::CreateExport() [linkerload.cpp:3807]
UE4Editor_CoreUObject!FLinkerLoad::CreateExportAndPreload() [linkerload.cpp:2884]
UE4Editor_CoreUObject!FLinkerLoad::LoadAllObjects() [linkerload.cpp:3023]
UE4Editor_CoreUObject!LoadPackageInternalInner() [uobjectglobals.cpp:1271]
UE4Editor_CoreUObject!LoadPackageInternal() [uobjectglobals.cpp:1423]
UE4Editor_CoreUObject!FLinkerLoad::VerifyImportInner() [linkerload.cpp:2561]
UE4Editor_CoreUObject!FLinkerLoad::VerifyImport() [linkerload.cpp:2327]
UE4Editor_CoreUObject!FLinkerLoad::VerifyImportInner() [linkerload.cpp:2609]
UE4Editor_CoreUObject!FLinkerLoad::VerifyImport() [linkerload.cpp:2327]
UE4Editor_CoreUObject!FLinkerLoad::Verify() [linkerload.cpp:2105]
UE4Editor_CoreUObject!FLinkerLoad::FinalizeCreation() [linkerload.cpp:2015]
UE4Editor_CoreUObject!FLinkerLoad::Tick() [linkerload.cpp:699]
UE4Editor_CoreUObject!FLinkerLoad::CreateLinker() [linkerload.cpp:404]
UE4Editor_CoreUObject!GetPackageLinker() [linker.cpp:657]
UE4Editor_CoreUObject!LoadPackageInternalInner() [uobjectglobals.cpp:1196]
UE4Editor_CoreUObject!LoadPackageInternal() [uobjectglobals.cpp:1423]
UE4Editor_CoreUObject!FLinkerLoad::VerifyImportInner() [linkerload.cpp:2561]
UE4Editor_CoreUObject!FLinkerLoad::VerifyImport() [linkerload.cpp:2327]
UE4Editor_CoreUObject!FLinkerLoad::VerifyImportInner() [linkerload.cpp:2609]
UE4Editor_CoreUObject!FLinkerLoad::VerifyImport() [linkerload.cpp:2327]
UE4Editor_CoreUObject!FLinkerLoad::Verify() [linkerload.cpp:2105]
UE4Editor_CoreUObject!FLinkerLoad::FinalizeCreation() [linkerload.cpp:2015]
UE4Editor_CoreUObject!FLinkerLoad::Tick() [linkerload.cpp:699]
UE4Editor_CoreUObject!FLinkerLoad::CreateLinker() [linkerload.cpp:404]
UE4Editor_CoreUObject!GetPackageLinker() [linker.cpp:657]
UE4Editor_CoreUObject!LoadPackageInternalInner() [uobjectglobals.cpp:1196]
UE4Editor_CoreUObject!LoadPackageInternal() [uobjectglobals.cpp:1423]
UE4Editor_CoreUObject!FLinkerLoad::VerifyImportInner() [linkerload.cpp:2561]
UE4Editor_CoreUObject!FLinkerLoad::VerifyImport() [linkerload.cpp:2327]

Have Comments or More Details?

Head over to the existingAnswerHub thread and let us know what's up.

24
Login to Vote

Fixed
ComponentGameplay - Blueprint
Affects Versions4.144.15
Target Fix4.15
Fix Commit3222427
Main Commit3236017
CreatedDec 5, 2016
ResolvedDec 5, 2016
UpdatedFeb 5, 2017