Description

If a replicated property in a parent code class has the same name as a variable contained within a function of a Blueprint that derives from that parent class, the Editor will crash while attempting to open the project.

The assertion that is failing is in UEdGraphNode::FindPinChecked(), and appears to be trying to get information about a pin for the variable in the Blueprint function, but is possibly looking at the variable from the parent class instead.

Steps to Reproduce
  1. Create a new Basic Code project.
  2. Add a new Actor class to the project named MyActor.
  3. Create a new Blueprint that is derived from the new Actor class.
  4. Add a new function to the new Blueprint.
  5. Add a new Integer variable named TestVarOne to the function.
  6. Add nodes to the function to set the value of the new variable when the function is called.
  7. Close the Editor.
  8. In the Actor class added in step 2, add the following property to the header file:
    UPROPERTY(BlueprintReadOnly, VisibleAnywhere, Replicated, Category = TestCat)
    int32 TestVarOne;
    
  9. In the Actor class' source file, add an include for UnrealNetwork.h and the following function:
    void AMyActor::GetLifetimeReplicatedProps(TArray<FLifetimeProperty>& OutLifetimeProps) const
    {
    	DOREPLIFETIME(AMyActor, TestVarOne);
    }
    
  10. Build the project in Visual Studio.
  11. Open the project in the Editor.

RESULT:
The Editor will crash while opening the project with the error Assertion failed: Result != NULL

EXPECTED:
The project opens in the Editor.

Callstack
Assertion failed: Result != NULL [File:D:\Main-Builds\Stream\Engine\Source\Runtime\Engine\Private\EdGraph\EdGraphNode.cpp] [Line: 192] 

UE4Editor_Core!FDebug::AssertFailed() [d:\main-builds\stream\engine\source\runtime\core\private\misc\assertionmacros.cpp:349]
UE4Editor_Engine!UEdGraphNode::FindPinChecked() [d:\main-builds\stream\engine\source\runtime\engine\private\edgraph\edgraphnode.cpp:193]
UE4Editor_BlueprintGraph!FKCHandler_VariableSet::Transform() [d:\main-builds\stream\engine\source\editor\blueprintgraph\private\variablesethandler.cpp:166]
UE4Editor_KismetCompiler!FKismetCompilerContext::TransformNodes() [d:\main-builds\stream\engine\source\editor\kismetcompiler\private\kismetcompiler.cpp:1157]
UE4Editor_KismetCompiler!FKismetCompilerContext::PrecompileFunction() [d:\main-builds\stream\engine\source\editor\kismetcompiler\private\kismetcompiler.cpp:1456]
UE4Editor_KismetCompiler!FKismetCompilerContext::CompileClassLayout() [d:\main-builds\stream\engine\source\editor\kismetcompiler\private\kismetcompiler.cpp:3811]
UE4Editor_KismetCompiler!FKismet2CompilerModule::CompileBlueprintInner() [d:\main-builds\stream\engine\source\editor\kismetcompiler\private\kismetcompilermodule.cpp:130]
UE4Editor_KismetCompiler!FKismet2CompilerModule::CompileBlueprint() [d:\main-builds\stream\engine\source\editor\kismetcompiler\private\kismetcompilermodule.cpp:247]
UE4Editor_UnrealEd!FKismetEditorUtilities::CompileBlueprint() [d:\main-builds\stream\engine\source\editor\unrealed\private\kismet2\kismet2.cpp:839]
UE4Editor_UnrealEd!FBlueprintEditorUtils::RegenerateBlueprintClass() [d:\main-builds\stream\engine\source\editor\unrealed\private\kismet2\blueprinteditorutils.cpp:1349]
UE4Editor_CoreUObject!FLinkerLoad::RegenerateBlueprintClass() [d:\main-builds\stream\engine\source\runtime\coreuobject\private\blueprint\blueprintsupport.cpp:522]
UE4Editor_CoreUObject!FLinkerLoad::FinalizeBlueprint() [d:\main-builds\stream\engine\source\runtime\coreuobject\private\blueprint\blueprintsupport.cpp:1569]
UE4Editor_CoreUObject!FLinkerLoad::Preload() [d:\main-builds\stream\engine\source\runtime\coreuobject\private\uobject\linkerload.cpp:3290]
UE4Editor_CoreUObject!FLinkerLoad::CreateExport() [d:\main-builds\stream\engine\source\runtime\coreuobject\private\uobject\linkerload.cpp:3957]
UE4Editor_CoreUObject!FLinkerLoad::IndexToObject() [d:\main-builds\stream\engine\source\runtime\coreuobject\private\uobject\linkerload.cpp:4179]
UE4Editor_CoreUObject!FLinkerLoad::CreateExport() [d:\main-builds\stream\engine\source\runtime\coreuobject\private\uobject\linkerload.cpp:3652]
UE4Editor_CoreUObject!FLinkerLoad::CreateExportAndPreload() [d:\main-builds\stream\engine\source\runtime\coreuobject\private\uobject\linkerload.cpp:2698]
UE4Editor_CoreUObject!FLinkerLoad::LoadAllObjects() [d:\main-builds\stream\engine\source\runtime\coreuobject\private\uobject\linkerload.cpp:2845]
UE4Editor_CoreUObject!LoadPackageInternal() [d:\main-builds\stream\engine\source\runtime\coreuobject\private\uobject\uobjectglobals.cpp:1291]
UE4Editor_CoreUObject!FLinkerLoad::VerifyImportInner() [d:\main-builds\stream\engine\source\runtime\coreuobject\private\uobject\linkerload.cpp:2375]
UE4Editor_CoreUObject!FLinkerLoad::VerifyImport() [d:\main-builds\stream\engine\source\runtime\coreuobject\private\uobject\linkerload.cpp:2131]
UE4Editor_CoreUObject!FLinkerLoad::VerifyImportInner() [d:\main-builds\stream\engine\source\runtime\coreuobject\private\uobject\linkerload.cpp:2423]
UE4Editor_CoreUObject!FLinkerLoad::VerifyImport() [d:\main-builds\stream\engine\source\runtime\coreuobject\private\uobject\linkerload.cpp:2131]
UE4Editor_CoreUObject!FLinkerLoad::Verify() [d:\main-builds\stream\engine\source\runtime\coreuobject\private\uobject\linkerload.cpp:1910]
UE4Editor_CoreUObject!FLinkerLoad::FinalizeCreation() [d:\main-builds\stream\engine\source\runtime\coreuobject\private\uobject\linkerload.cpp:1820]
UE4Editor_CoreUObject!FLinkerLoad::Tick() [d:\main-builds\stream\engine\source\runtime\coreuobject\private\uobject\linkerload.cpp:734]
UE4Editor_CoreUObject!FLinkerLoad::CreateLinker() [d:\main-builds\stream\engine\source\runtime\coreuobject\private\uobject\linkerload.cpp:437]
UE4Editor_CoreUObject!GetPackageLinker() [d:\main-builds\stream\engine\source\runtime\coreuobject\private\uobject\linker.cpp:688]
UE4Editor_CoreUObject!LoadPackageInternal() [d:\main-builds\stream\engine\source\runtime\coreuobject\private\uobject\uobjectglobals.cpp:1219]
UE4Editor_CoreUObject!LoadPackage() [d:\main-builds\stream\engine\source\runtime\coreuobject\private\uobject\uobjectglobals.cpp:1388]
UE4Editor_UnrealEd!UEditorEngine::Map_Load() [d:\main-builds\stream\engine\source\editor\unrealed\private\editorserver.cpp:2536]
UE4Editor_UnrealEd!UEditorEngine::HandleMapCommand() [d:\main-builds\stream\engine\source\editor\unrealed\private\editorserver.cpp:6040]
UE4Editor_UnrealEd!UEditorEngine::Exec() [d:\main-builds\stream\engine\source\editor\unrealed\private\editorserver.cpp:5517]
UE4Editor_UnrealEd!UUnrealEdEngine::Exec() [d:\main-builds\stream\engine\source\editor\unrealed\private\unrealedsrv.cpp:672]
UE4Editor_UnrealEd!FEditorFileUtils::LoadMap() [d:\main-builds\stream\engine\source\editor\unrealed\private\filehelpers.cpp:2265]
UE4Editor_UnrealEd!FEditorFileUtils::LoadDefaultMapAtStartup() [d:\main-builds\stream\engine\source\editor\unrealed\private\filehelpers.cpp:3585]
UE4Editor_UnrealEd!FUnrealEdMisc::OnInit() [d:\main-builds\stream\engine\source\editor\unrealed\private\unrealedmisc.cpp:346]
UE4Editor_UnrealEd!EditorInit() [d:\main-builds\stream\engine\source\editor\unrealed\private\unrealedglobals.cpp:97]
UE4Editor!GuardedMain() [d:\main-builds\stream\engine\source\runtime\launch\private\launch.cpp:150]
UE4Editor!GuardedMainWrapper() [d:\main-builds\stream\engine\source\runtime\launch\private\windows\launchwindows.cpp:134]
UE4Editor!WinMain() [d:\main-builds\stream\engine\source\runtime\launch\private\windows\launchwindows.cpp:210]
UE4Editor!__scrt_common_main_seh() [f:\dd\vctools\crt\vcstartup\src\startup\exe_common.inl:264]
kernel32
ntdll

Have Comments or More Details?

Head over to the existing Questions & Answers thread and let us know what's up.

1
Login to Vote

Won't Fix
ComponentUE - Gameplay - Blueprint
Affects Versions4.14.34.17
CreatedMay 17, 2017
ResolvedAug 18, 2021
UpdatedAug 18, 2021
View Jira Issue