Description

The crash can be reproduced on the 4.26P7 or the Release4.26 stream.

Following the repro steps will result in hitting the following assert:

Assertion failed: !HasAnyFlags(RF_NeedLoad|RF_NeedPostLoad) [Link Removed] [Line: 111]
Detaching from existing linker for ../../../SampleProject/Content/BP_InstancedObjectActor.uasset while object InstancedSubObject /Game/BP_InstancedObjectActor.Default__BP_InstancedObjectActor_C:InstancedObjectList_0.InstancedObject_0.InstancedVariantA_0.InstancedSubObject_0 needs loaded

Steps to Reproduce
  • Open project
  • Open BP_InstancedObjectActor
  • rename List->InstancedObjectList->ObjectInstances[0]>InstanceObject>InstanceC->InstancedVariantC->CName
  • rename List->InstancedObjectList->ObjectInstances[0]>InstanceObject>InstanceA->InstancedVariantA->AName
  • Compile BP
  • load level (don't save BP)
  • rename List->InstancedObjectList->ObjectInstances[0]>InstanceObject>InstanceC->InstancedVariantC->CName
  • rename List->InstancedObjectList->ObjectInstances[0]>InstanceObject>InstanceA->InstancedVariantA->AName
  • Compile BP
Callstack

> UE4Editor-CoreUObject.dll!UObject::SetLinker(FLinkerLoad * LinkerLoad, int LinkerIndex, bool bShouldDetachExisting) Line 111 C+> UE4Editor-CoreUObject.dll!UObject::SetLinker(FLinkerLoad * LinkerLoad, int LinkerIndex, bool bShouldDetachExisting) Line 111 C  UE4Editor-CoreUObject.dll!FLinkerLoad::DetachExport(int i) Line 5121 C  UE4Editor-CoreUObject.dll!FLinkerLoad::Detach() Line 5154 C  UE4Editor-CoreUObject.dll!FLinkerManager::ResetLoaders(UObject * InPkg) Line 136 C  UE4Editor-CoreUObject.dll!UObject::Rename(const wchar_t * InName, UObject * NewOuter, unsigned int Flags) Line 223 C  UE4Editor-KismetCompiler.dll!FKismetCompilerContext::CleanAndSanitizeClass(UBlueprintGeneratedClass * ClassToClean, UObject * & InOldCDO) Line 289 C  UE4Editor-Kismet.dll!FBlueprintCompilationManagerImpl::FastGenerateSkeletonClass(UBlueprint * BP, FKismetCompilerContext & CompilerContext, bool bIsSkeletonOnly, TArray<FSkeletonFixupData,TSizedDefaultAllocator<32>> & OutSkeletonFixupData) Line 2356 C  UE4Editor-Kismet.dll!FBlueprintCompilationManagerImpl::FlushCompilationQueueImpl(bool bSuppressBroadcastCompiled, TArray<UBlueprint ,TSizedDefaultAllocator<32>> * BlueprintsCompiled, TArray<UBlueprint *,TSizedDefaultAllocator<32>> * BlueprintsCompiledOrSkeletonCompiled, FUObjectSerializeContext * InLoadContext) Line 911 C  UE4Editor-Kismet.dll!FBlueprintCompilationManagerImpl::CompileSynchronouslyImpl(const FBPCompileRequestInternal & Request) Line 277 C  UE4Editor-Kismet.dll!FBlueprintCompilationManager::CompileSynchronously(const FBPCompileRequest & Request) Line 3090 C  UE4Editor-UnrealEd.dll!FKismetEditorUtilities::CompileBlueprint(UBlueprint * BlueprintObj, EBlueprintCompileOptions CompileFlags, FCompilerResultsLog * pResults) Line 754 C  UE4Editor-Kismet.dll!FBlueprintEditor::Compile() Line 3627 C  [Inline Frame] UE4Editor-Kismet.dll!Invoke(void(FBlueprintEditor::)()) Line 65 C  [Inline Frame] UE4Editor-Kismet.dll!UE4Tuple_Private::TTupleBase<TIntegerSequence<unsigned int>>::ApplyAfter(void(FBlueprintEditor::)() &) Line 299 C  UE4Editor-Kismet.dll!TBaseSPMethodDelegateInstance<0,FBlueprintEditor,0,void _cdecl(void),FDefaultDelegateUserPolicy>::ExecuteIfSafe() Line 307 C  UE4Editor-Slate.dll!FUICommandList::ExecuteAction(const TSharedRef<FUICommandInfo const ,0> InUICommandInfo) Line 102 C  UE4Editor-Slate.dll!SToolBarButtonBlock::OnClicked() Line 301 C  [Inline Frame] UE4Editor-Slate.dll!Invoke(FReply(SToolBarButtonBlock::)()) Line 65 C  [Inline Frame] UE4Editor-Slate.dll!UE4Tuple_Private::TTupleBase<TIntegerSequence<unsigned int>>::ApplyAfter(FReply(SToolBarButtonBlock::*)() &) Line 299 C  UE4Editor-Slate.dll!TBaseSPMethodDelegateInstance<0,SToolBarButtonBlock,0,FReply __cdecl(void),FDefaultDelegateUserPolicy>::Execute() Line 290 C  [Inline Frame] UE4Editor-Slate.dll!TDelegate<FReply __cdecl(void),FDefaultDelegateUserPolicy>::Execute() Line 580 C  UE4Editor-Slate.dll!SButton::ExecuteOnClick() Line 385 C  UE4Editor-Slate.dll!SButton::OnMouseButtonUp(const FGeometry & MyGeometry, const FPointerEvent & MouseEvent) Line 304 C  [Inline Frame] UE4Editor-Slate.dll!FSlateApplication::RoutePointerUpEvent::l8::<lambda_cc5aea9e7377b04ce85c30c65ec3889b>::operator()(const FArrangedWidget &) Line 4829 C  UE4Editor-Slate.dll!FEventRouter::Route<FReply,FEventRouter::FToLeafmostPolicy,FPointerEvent,<lambda_cc5aea9e7377b04ce85c30c65ec3889b>>(FSlateApplication * ThisApplication, FEventRouter::FToLeafmostPolicy RoutingPolicy, FPointerEvent EventCopy, const FSlateApplication::RoutePointerUpEvent::l8::<lambda_cc5aea9e7377b04ce85c30c65ec3889b> & Lambda, ESlateDebuggingInputEvent DebuggingInputEvent) Line 378 C  UE4Editor-Slate.dll!FSlateApplication::RoutePointerUpEvent(const FWidgetPath & WidgetsUnderPointer, const FPointerEvent & PointerEvent) Line 4815 C  UE4Editor-Slate.dll!FSlateApplication::ProcessMouseButtonUpEvent(const FPointerEvent & MouseEvent) Line 5356 C  UE4Editor-Slate.dll!FSlateApplication::OnMouseUp(const EMouseButtons::Type Button, const FVector2D CursorPos) Line 5321 C  UE4Editor-ApplicationCore.dll!FWindowsApplication::ProcessDeferredMessage(const FDeferredWindowsMessage & DeferredMessage) Line 2174 C  UE4Editor-ApplicationCore.dll!FWindowsApplication::DeferMessage(TSharedPtr<FWindowsWindow,0> & NativeWindow, HWND_ * InHWnd, unsigned int InMessage, unsigned _int64 InWParam, __int64 InLParam, int MouseX, int MouseY, unsigned int RawInputFlags) Line 2638 C  UE4Editor-ApplicationCore.dll!FWindowsApplication::ProcessMessage(HWND_ * hwnd, unsigned int msg, unsigned _int64 wParam, __int64 lParam) Line 1042 C  UE4Editor-ApplicationCore.dll!FWindowsApplication::AppWndProc(HWND_ * hwnd, unsigned int msg, unsigned _int64 wParam, __int64 lParam) Line 874 C  [External Code]   [Inline Frame] UE4Editor-ApplicationCore.dll!WinPumpMessages() Line 108 C  UE4Editor-ApplicationCore.dll!FWindowsPlatformApplicationMisc::PumpMessages(bool bFromMainLoop) Line 130 C  UE4Editor.exe!FEngineLoop::Tick() Line 4750 C  [Inline Frame] UE4Editor.exe!EngineTick() Line 63 C  UE4Editor.exe!GuardedMain(const wchar_t * CmdLine) Line 175 C  UE4Editor.exe!WinMain(HINSTANCE_ * hInInstance, HINSTANCE__ * hPrevInstance, char * __formal, int nCmdShow) Line 257 C+

Have Comments or More Details?

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

6
Login to Vote

Fixed
ComponentGameplay - Blueprint Compiler
Affects Versions4.26
Target Fix4.26.1
Fix Commit15004129
Release Commit15004129
CreatedNov 24, 2020
ResolvedJan 6, 2021
UpdatedJan 13, 2021