Description

Crash occurs when the user renames a nested struct member variable while there's a struct pin split in a blueprint.

Steps to Reproduce
  1. Download and extract the attached project.
  2. Open the project in editor.
  3. Open the level blueprint.
  4. Add NewVar_0 into the Event Graph as a Set node.
  5. Connect the Set node to Event Begin Play
  6. Right-click the Set node's input pin and select Split Pin.
  7. Right-click the Member Variable 1 pin and select Split Pin.
  8. Back in the Content Browser, open TestStructB.
  9. Rename MemberVariable_1

RESULT

Crash

Callstack
Assertion failed: NumNewPins == InNewPins.Num() [File:D:/Build/++UE4/Sync/Engine/Source/Editor/BlueprintGraph/Private/K2Node.cpp] [Line: 1076] 

KERNELBASE.dll!UnknownFunction []
UE4Editor-Core.dll!ReportAssert() [D:\Build\++UE4\Sync\Engine\Source\Runtime\Core\Private\Windows\WindowsPlatformCrashContext.cpp:1541]
UE4Editor-Core.dll!FWindowsErrorOutputDevice::Serialize() [D:\Build\++UE4\Sync\Engine\Source\Runtime\Core\Private\Windows\WindowsErrorOutputDevice.cpp:78]
UE4Editor-Core.dll!FOutputDevice::LogfImpl() [D:\Build\++UE4\Sync\Engine\Source\Runtime\Core\Private\Misc\OutputDevice.cpp:61]
UE4Editor-Core.dll!AssertFailedImplV() [D:\Build\++UE4\Sync\Engine\Source\Runtime\Core\Private\Misc\AssertionMacros.cpp:100]
UE4Editor-Core.dll!FDebug::CheckVerifyFailedImpl() [D:\Build\++UE4\Sync\Engine\Source\Runtime\Core\Private\Misc\AssertionMacros.cpp:450]
UE4Editor-BlueprintGraph.dll!UK2Node::RewireOldPinsToNewPins() [D:\Build\++UE4\Sync\Engine\Source\Editor\BlueprintGraph\Private\K2Node.cpp:1076]
UE4Editor-BlueprintGraph.dll!UK2Node::ReconstructNode() [D:\Build\++UE4\Sync\Engine\Source\Editor\BlueprintGraph\Private\K2Node.cpp:678]
UE4Editor-KismetCompiler.dll!FUserDefinedStructureCompilerUtils::CompileStruct() [D:\Build\++UE4\Sync\Engine\Source\Editor\KismetCompiler\Private\UserDefinedStructureCompilerUtils.cpp:599]
UE4Editor-KismetCompiler.dll!FKismet2CompilerModule::CompileStructure() [D:\Build\++UE4\Sync\Engine\Source\Editor\KismetCompiler\Private\KismetCompilerModule.cpp:88]
UE4Editor-UnrealEd.dll!FStructureEditorUtils::CompileStructure() [D:\Build\++UE4\Sync\Engine\Source\Editor\UnrealEd\Private\Kismet2\StructureEditorUtils.cpp:544]
UE4Editor-UnrealEd.dll!FStructureEditorUtils::RenameVariable() [D:\Build\++UE4\Sync\Engine\Source\Editor\UnrealEd\Private\Kismet2\StructureEditorUtils.cpp:370]
UE4Editor-Kismet.dll!FUserDefinedStructureFieldLayout::OnNameTextCommitted() [D:\Build\++UE4\Sync\Engine\Source\Editor\Kismet\Private\UserDefinedStructureEditor.cpp:611]
UE4Editor-Kismet.dll!TBaseSPMethodDelegateInstance<0,FUserDefinedStructureFieldLayout,0,void __cdecl(FText const &,enum ETextCommit::Type)>::ExecuteIfSafe() [D:\Build\++UE4\Sync\Engine\Source\Runtime\Core\Public\Delegates\DelegateInstancesImpl.h:374]
UE4Editor-Slate.dll!TBaseSPMethodDelegateInstance<0,SEditableTextBox,0,void __cdecl(FText const &,enum ETextCommit::Type)>::ExecuteIfSafe() [D:\Build\++UE4\Sync\Engine\Source\Runtime\Core\Public\Delegates\DelegateInstancesImpl.h:374]
UE4Editor-Slate.dll!FSlateEditableTextLayout::HandleCarriageReturn() [D:\Build\++UE4\Sync\Engine\Source\Runtime\Slate\Private\Widgets\Text\SlateEditableTextLayout.cpp:1519]
UE4Editor-Slate.dll!FSlateEditableTextLayout::HandleKeyDown() [D:\Build\++UE4\Sync\Engine\Source\Runtime\Slate\Private\Widgets\Text\SlateEditableTextLayout.cpp:967]
UE4Editor-Slate.dll!SEditableText::OnKeyDown() [D:\Build\++UE4\Sync\Engine\Source\Runtime\Slate\Private\Widgets\Input\SEditableText.cpp:211]
UE4Editor-Slate.dll!FEventRouter::Route<FReply,FEventRouter::FBubblePolicy,FKeyEvent,<lambda_348e43676c71ef9c842236ae8e30eb35> >() [D:\Build\++UE4\Sync\Engine\Source\Runtime\Slate\Private\Framework\Application\SlateApplication.cpp:372]
UE4Editor-Slate.dll!FSlateApplication::ProcessKeyDownEvent() [D:\Build\++UE4\Sync\Engine\Source\Runtime\Slate\Private\Framework\Application\SlateApplication.cpp:4204]
UE4Editor-Slate.dll!FSlateApplication::OnKeyDown() [D:\Build\++UE4\Sync\Engine\Source\Runtime\Slate\Private\Framework\Application\SlateApplication.cpp:4112]
UE4Editor-ApplicationCore.dll!FWindowsApplication::ProcessDeferredMessage() [D:\Build\++UE4\Sync\Engine\Source\Runtime\ApplicationCore\Private\Windows\WindowsApplication.cpp:1975]
UE4Editor-ApplicationCore.dll!FWindowsApplication::DeferMessage() [D:\Build\++UE4\Sync\Engine\Source\Runtime\ApplicationCore\Private\Windows\WindowsApplication.cpp:2592]
UE4Editor-ApplicationCore.dll!FWindowsApplication::ProcessMessage() [D:\Build\++UE4\Sync\Engine\Source\Runtime\ApplicationCore\Private\Windows\WindowsApplication.cpp:1816]
UE4Editor-ApplicationCore.dll!FWindowsApplication::AppWndProc() [D:\Build\++UE4\Sync\Engine\Source\Runtime\ApplicationCore\Private\Windows\WindowsApplication.cpp:852]
USER32.dll!UnknownFunction []
USER32.dll!UnknownFunction []
UE4Editor-ApplicationCore.dll!FWindowsPlatformApplicationMisc::PumpMessages() [D:\Build\++UE4\Sync\Engine\Source\Runtime\ApplicationCore\Private\Windows\WindowsPlatformApplicationMisc.cpp:130]
UE4Editor.exe!FEngineLoop::Tick() [D:\Build\++UE4\Sync\Engine\Source\Runtime\Launch\Private\LaunchEngineLoop.cpp:4762]
UE4Editor.exe!GuardedMain() [D:\Build\++UE4\Sync\Engine\Source\Runtime\Launch\Private\Launch.cpp:169]
UE4Editor.exe!GuardedMainWrapper() [D:\Build\++UE4\Sync\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp:137]
UE4Editor.exe!WinMain() [D:\Build\++UE4\Sync\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp:268]
UE4Editor.exe!__scrt_common_main_seh() [d:\agent\_work\5\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288]
KERNEL32.DLL!UnknownFunction []
ntdll.dll!UnknownFunction []

Have Comments or More Details?

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

2
Login to Vote

Unresolved
ComponentGameplay - Blueprint
Affects Versions4.25.34.26
Target Fix4.26
CreatedSep 14, 2020
UpdatedSep 15, 2020