Description

Added context from dev support ticket:

The crash occurs because FDelegateProperty::Serialize accesses a dangling SignatureFunction pointer.

Given that its derefencing dangling pointers the specific way and likelihood that it crashes may vary with the amount and structure of content that gets loaded.
Steps to Reproduce
  1. Open any source controlled Blueprint.
  2. Save BP to trigger a checkout.
  3. Right click asset in content browser > Revision Control > Revert.
  4. Press Revert in dialog.
  5. Editor Crashes
Callstack

[UnrealEditor-CoreUObject.dll] UClass::PurgeClass(bool) Class.cpp:5798
[UnrealEditor-Engine.dll] UBlueprintGeneratedClass::PurgeClass(bool) BlueprintGeneratedClass.cpp:2279
[UnrealEditor-KismetCompiler.dll] FKismetCompilerContext::CleanAndSanitizeClass(UBlueprintGeneratedClass *,UObject *&) KismetCompiler.cpp:730
[UnrealEditor-KismetCompiler.dll] FKismetCompilerContext::CompileClassLayout(EInternalCompilerFlags) KismetCompiler.cpp:4772
[UnrealEditor-Kismet.dll] FBlueprintCompilationManagerImpl::FlushCompilationQueueImpl(bool,TArray<UBlueprint *,TSizedDefaultAllocator<32> > *,TArray<UBlueprint *,TSizedDefaultAllocator<32> > *,FUObjectSerializeContext *,TMap<UClass *,TMap<UObject *,UObject *,FDefaultSetAllocator,TDefaultMapHashableKeyFuncs<UObject *,UObject *,0> >,FDefaultSetAllocator,TDefaultMapHashableKeyFuncs<UClass *,TMap<UObject *,UObject *,FDefaultSetAllocator,TDefaultMapHashableKeyFuncs<UObject *,UObject *,0> >,0> > *) BlueprintCompilationManager.cpp:1416
[UnrealEditor-Kismet.dll] FBlueprintCompilationManager::FlushCompilationQueue(FUObjectSerializeContext *) BlueprintCompilationManager.cpp:3726
[UnrealEditor-CoreUObject.dll] FScopedClassDependencyGather::~FScopedClassDependencyGather() BlueprintSupport.cpp:487
[UnrealEditor-CoreUObject.dll] FLinkerLoad::CreateExport(int) LinkerLoad.cpp:5663
[UnrealEditor-CoreUObject.dll] FLinkerLoad::IndexToObject(FPackageIndex) LinkerLoad.cpp:5956
[UnrealEditor-CoreUObject.dll] FLinkerLoad::CreateExport(int) LinkerLoad.cpp:5213
[UnrealEditor-CoreUObject.dll] FLinkerLoad::CreateImport(int) LinkerLoad.cpp:5849
[UnrealEditor-CoreUObject.dll] FAsyncPackage::CreateImports() AsyncLoading.cpp:6699
[UnrealEditor-CoreUObject.dll] FAsyncPackage::TickAsyncPackage(bool,bool,float &) AsyncLoading.cpp:6025
[UnrealEditor-CoreUObject.dll] FAsyncLoadingThread::ProcessAsyncLoading(int &,bool,bool,float,FFlushRequest &) AsyncLoading.cpp:4536
[UnrealEditor-CoreUObject.dll] FAsyncLoadingThread::TickAsyncThread(bool,bool,double,bool &,FFlushRequest &) AsyncLoading.cpp:5309
[UnrealEditor-CoreUObject.dll] FAsyncLoadingThread::TickAsyncLoading(bool,bool,double,FFlushRequest) AsyncLoading.cpp:5029
[UnrealEditor-CoreUObject.dll] FAsyncLoadingThread::FlushLoading(TArrayView<int const ,int>) AsyncLoading.cpp:7570
[UnrealEditor-CoreUObject.dll] FlushAsyncLoading(TArrayView<int const ,int>) AsyncPackageLoader.cpp:295
[UnrealEditor-CoreUObject.dll] FlushAsyncLoading(int) AsyncPackageLoader.cpp:264
[Inlined] [UnrealEditor-Engine.dll] FWorldPartitionActorDescInstance::FlushAsyncLoad() WorldPartitionActorDescInstance.cpp:160
[UnrealEditor-Engine.dll] FWorldPartitionActorDescInstance::GetActor(bool,bool) WorldPartitionActorDescInstance.cpp:58
[UnrealEditor-Engine.dll] `FWorldPartitionLoadingContext::FDeferred::~FDeferred'::`8'::<lambda_1>::operator()(TArray<AActor *,TSizedDefaultAllocator<32> > &,const TSet<FWorldPartitionActorDescInstance *,DefaultKeyFuncs<FWorldPartitionActorDescInstance *,0>,FDefaultSetAllocator> &) WorldPartitionHandle.cpp:161
[UnrealEditor-Engine.dll] FWorldPartitionLoadingContext::FDeferred::~FDeferred() WorldPartitionHandle.cpp:180
[UnrealEditor-Engine.dll] IWorldPartitionActorLoaderInterface::ILoaderAdapter::RefreshLoadedState() WorldPartitionActorLoaderInterface.cpp:188
[UnrealEditor-Engine.dll] IWorldPartitionActorLoaderInterface::ILoaderAdapter::Load() WorldPartitionActorLoaderInterface.cpp:54
[UnrealEditor-Engine.dll] UWorldPartition::Initialize(UWorld *,const UE::Math::TTransform<double> &) WorldPartition.cpp:674
[UnrealEditor-Engine.dll] ULevel::OnLevelLoaded() Level.cpp:3082
[UnrealEditor-Engine.dll] UWorld::InitWorld(FWorldInitializationValues) World.cpp:2257
[UnrealEditor-UnrealEd.dll] UEditorEngine::Map_Load(const wchar_t *,FOutputDevice &) EditorServer.cpp:2643

Have Comments or More Details?

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

0
Login to Vote

Backlogged
CreatedFeb 26, 2025
UpdatedMay 9, 2025
View Jira Issue