Description

When trying to copy a setter node for a GameplayTag variable from one eventgraph to another eventgraph the engine crashes. If the blueprint that is copied into has a GameplayTag variable with the same name the crash doesn't occur.

Found in 4.22.3 CL#7053642
Reproduced in 4.23 CL# 8386587, 4.24 Main CL#9184481

Steps to Reproduce

1. Open a project.
2. Create an actor and create a variable of type GameplayTag (TestVar).
3. Add a setter node for TestVar in the event graph.
4. Copy the setter node (Ctrl+C or Right Click->Copy).
5. Paste it into a blueprint that doesn't have a GameplayTag variable.

Results: The editor crashes.

Expected: The node doesn't copy and the engine doesn't crash.

Callstack

LoginId:9a8d08644d702ac44f074090ac311686
EpicAccountId:580fb2844ad145d79dff08f42acea7c6

Assertion failed: Field [Link Removed] [Line: 1252]

UE4Editor_Core!FWindowsErrorOutputDevice::Serialize() [d:\build\++ue4\sync\engine\source\runtime\core\private\windows\windowserroroutputdevice.cpp:79]
UE4Editor_Core!FOutputDevice::LogfImpl() [d:\build\++ue4\sync\engine\source\runtime\core\private\misc\outputdevice.cpp:71]
UE4Editor_Core!AssertFailedImplV() [d:\build\++ue4\sync\engine\source\runtime\core\private\misc\assertionmacros.cpp:101]
UE4Editor_Core!FDebug::CheckVerifyFailedImpl() [d:\build\++ue4\sync\engine\source\runtime\core\private\misc\assertionmacros.cpp:445]
UE4Editor_GameplayTags!UGameplayTagsManager::GetCategoriesMetaFromField() [d:\build\++ue4\sync\engine\source\runtime\gameplaytags\private\gameplaytagsmanager.cpp:1252]
UE4Editor_GameplayTagsEditor!SGameplayTagGraphPin::ParseDefaultValueData() [d:\build\++ue4\sync\engine\plugins\editor\gameplaytagseditor\source\gameplaytagseditor\private\sgameplaytaggraphpin.cpp:66]
UE4Editor_GameplayTagsEditor!SGameplayTagGraphPin::GetDefaultValueWidget() [d:\build\++ue4\sync\engine\plugins\editor\gameplaytagseditor\source\gameplaytagseditor\private\sgameplaytaggraphpin.cpp:23]
UE4Editor_GraphEditor!SGraphPin::Construct() [d:\build\++ue4\sync\engine\source\editor\grapheditor\private\sgraphpin.cpp:215]
UE4Editor_GameplayTagsEditor!SGameplayTagGraphPin::Construct() [d:\build\++ue4\sync\engine\plugins\editor\gameplaytagseditor\source\gameplaytagseditor\private\sgameplaytaggraphpin.cpp:15]
UE4Editor_GameplayTagsEditor!TDecl<SGameplayTagGraphPin,RequiredArgs::T1RequiredArgs<UEdGraphPin * &> >::operator<<=() [d:\build\++ue4\sync\engine\source\runtime\slatecore\public\widgets\declarativesyntaxsupport.h:1116]
UE4Editor_GameplayTagsEditor!FGameplayTagsGraphPanelPinFactory::CreatePin() [d:\build\++ue4\sync\engine\plugins\editor\gameplaytagseditor\source\gameplaytagseditor\private\gameplaytagsgraphpanelpinfactory.h:25]
UE4Editor_GraphEditor!FNodeFactory::CreatePinWidget() [d:\build\++ue4\sync\engine\source\editor\grapheditor\private\nodefactory.cpp:227]
UE4Editor_GraphEditor!SGraphNode::CreatePinWidget() [d:\build\++ue4\sync\engine\source\editor\grapheditor\private\sgraphnode.cpp:1145]
UE4Editor_GraphEditor!SGraphNode::CreateStandardPinWidget() [d:\build\++ue4\sync\engine\source\editor\grapheditor\private\sgraphnode.cpp:1113]
UE4Editor_GraphEditor!SGraphNode::CreatePinWidgets() [d:\build\++ue4\sync\engine\source\editor\grapheditor\private\sgraphnode.cpp:1123]
UE4Editor_GraphEditor!SGraphNodeK2Var::UpdateGraphNode() [d:\build\++ue4\sync\engine\source\editor\grapheditor\private\kismetnodes\sgraphnodek2var.cpp:318]
UE4Editor_GraphEditor!SGraphNodeK2Var::Construct() [d:\build\++ue4\sync\engine\source\editor\grapheditor\private\kismetnodes\sgraphnodek2var.cpp:29]
UE4Editor_GraphEditor!TDecl<SGraphNodeK2Var,RequiredArgs::T1RequiredArgs<UK2Node * &> >::operator<<=() [d:\build\++ue4\sync\engine\source\runtime\slatecore\public\widgets\declarativesyntaxsupport.h:1116]
UE4Editor_GraphEditor!FNodeFactory::CreateNodeWidget() [d:\build\++ue4\sync\engine\source\editor\grapheditor\private\nodefactory.cpp:139]
UE4Editor_GraphEditor!SGraphPanel::AddNode() [d:\build\++ue4\sync\engine\source\editor\grapheditor\private\sgraphpanel.cpp:1384]
UE4Editor_GraphEditor!SGraphPanel::Update() [d:\build\++ue4\sync\engine\source\editor\grapheditor\private\sgraphpanel.cpp:1482]
UE4Editor_GraphEditor!SGraphEditorImpl::TriggerRefresh() [d:\build\++ue4\sync\engine\source\editor\grapheditor\private\sgrapheditorimpl.cpp:493]
UE4Editor_GraphEditor!TBaseSPMethodDelegateInstance<0,SGraphEditorImpl,0,enum EActiveTimerReturnType __cdecl(double,float)>::Execute() [d:\build\++ue4\sync\engine\source\runtime\core\public\delegates\delegateinstancesimpl.h:293]
UE4Editor_SlateCore!SWidget::ExecuteActiveTimers() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\swidget.cpp:1201]
UE4Editor_SlateCore!SWidget::Paint() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\swidget.cpp:1044]
UE4Editor_Slate!SBox::OnPaint() [d:\build\++ue4\sync\engine\source\runtime\slate\private\widgets\layout\sbox.cpp:330]
UE4Editor_SlateCore!SWidget::Paint() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\swidget.cpp:1088]
UE4Editor_SlateCore!SCompoundWidget::OnPaint() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\scompoundwidget.cpp:35]
UE4Editor_SlateCore!SWidget::Paint() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\swidget.cpp:1088]
UE4Editor_SlateCore!SCompoundWidget::OnPaint() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\scompoundwidget.cpp:35]
UE4Editor_Slate!SBorder::OnPaint() [d:\build\++ue4\sync\engine\source\runtime\slate\private\widgets\layout\sborder.cpp:119]
UE4Editor_SlateCore!SWidget::Paint() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\swidget.cpp:1088]
UE4Editor_SlateCore!SOverlay::OnPaint() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\soverlay.cpp:95]
UE4Editor_SlateCore!SWidget::Paint() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\swidget.cpp:1088]
UE4Editor_SlateCore!SPanel::PaintArrangedChildren() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\spanel.cpp:31]
UE4Editor_SlateCore!SPanel::OnPaint() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\spanel.cpp:12]
UE4Editor_SlateCore!SWidget::Paint() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\swidget.cpp:1088]
UE4Editor_SlateCore!SCompoundWidget::OnPaint() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\scompoundwidget.cpp:35]
UE4Editor_SlateCore!SWidget::Paint() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\swidget.cpp:1088]
UE4Editor_SlateCore!SPanel::PaintArrangedChildren() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\spanel.cpp:31]
UE4Editor_Slate!SSplitter::OnPaint() [d:\build\++ue4\sync\engine\source\runtime\slate\private\widgets\layout\ssplitter.cpp:164]
UE4Editor_SlateCore!SWidget::Paint() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\swidget.cpp:1088]
UE4Editor_SlateCore!SCompoundWidget::OnPaint() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\scompoundwidget.cpp:35]
UE4Editor_SlateCore!SWidget::Paint() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\swidget.cpp:1088]
UE4Editor_SlateCore!SPanel::PaintArrangedChildren() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\spanel.cpp:31]
UE4Editor_Slate!SSplitter::OnPaint() [d:\build\++ue4\sync\engine\source\runtime\slate\private\widgets\layout\ssplitter.cpp:164]
UE4Editor_SlateCore!SWidget::Paint() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\swidget.cpp:1088]
UE4Editor_SlateCore!SOverlay::OnPaint() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\soverlay.cpp:95]
UE4Editor_SlateCore!SWidget::Paint() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\swidget.cpp:1088]
UE4Editor_SlateCore!SCompoundWidget::OnPaint() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\scompoundwidget.cpp:35]
UE4Editor_SlateCore!SWidget::Paint() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\swidget.cpp:1088]
UE4Editor_SlateCore!SPanel::PaintArrangedChildren() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\spanel.cpp:31]
UE4Editor_SlateCore!SPanel::OnPaint() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\spanel.cpp:12]
UE4Editor_SlateCore!SWidget::Paint() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\swidget.cpp:1088]
UE4Editor_SlateCore!SCompoundWidget::OnPaint() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\scompoundwidget.cpp:35]
UE4Editor_SlateCore!SWidget::Paint() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\swidget.cpp:1088]
UE4Editor_SlateCore!SCompoundWidget::OnPaint() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\scompoundwidget.cpp:35]
UE4Editor_Slate!SBorder::OnPaint() [d:\build\++ue4\sync\engine\source\runtime\slate\private\widgets\layout\sborder.cpp:119]
UE4Editor_SlateCore!SWidget::Paint() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\swidget.cpp:1088]
UE4Editor_SlateCore!SOverlay::OnPaint() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\soverlay.cpp:95]
UE4Editor_SlateCore!SWidget::Paint() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\swidget.cpp:1088]
UE4Editor_SlateCore!SPanel::PaintArrangedChildren() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\spanel.cpp:31]
UE4Editor_SlateCore!SPanel::OnPaint() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\spanel.cpp:12]
UE4Editor_SlateCore!SWidget::Paint() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\swidget.cpp:1088]
UE4Editor_SlateCore!SCompoundWidget::OnPaint() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\scompoundwidget.cpp:35]
UE4Editor_SlateCore!SWidget::Paint() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\swidget.cpp:1088]
UE4Editor_SlateCore!SPanel::PaintArrangedChildren() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\spanel.cpp:31]
UE4Editor_Slate!SSplitter::OnPaint() [d:\build\++ue4\sync\engine\source\runtime\slate\private\widgets\layout\ssplitter.cpp:164]
UE4Editor_SlateCore!SWidget::Paint() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\swidget.cpp:1088]
UE4Editor_SlateCore!SOverlay::OnPaint() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\soverlay.cpp:95]
UE4Editor_SlateCore!SWidget::Paint() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\swidget.cpp:1088]
UE4Editor_SlateCore!SCompoundWidget::OnPaint() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\scompoundwidget.cpp:35]
UE4Editor_SlateCore!SWidget::Paint() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\swidget.cpp:1088]
UE4Editor_SlateCore!SPanel::PaintArrangedChildren() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\spanel.cpp:31]
UE4Editor_SlateCore!SPanel::OnPaint() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\spanel.cpp:12]
UE4Editor_SlateCore!SWidget::Paint() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\swidget.cpp:1088]
UE4Editor_SlateCore!SPanel::PaintArrangedChildren() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\spanel.cpp:31]
UE4Editor_SlateCore!SPanel::OnPaint() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\spanel.cpp:12]
UE4Editor_SlateCore!SWidget::Paint() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\swidget.cpp:1088]
UE4Editor_SlateCore!SOverlay::OnPaint() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\soverlay.cpp:95]
UE4Editor_SlateCore!SWidget::Paint() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\swidget.cpp:1088]
UE4Editor_SlateCore!SCompoundWidget::OnPaint() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\scompoundwidget.cpp:35]
UE4Editor_SlateCore!SWindow::OnPaint() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\swindow.cpp:1948]
UE4Editor_SlateCore!SWidget::Paint() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\swidget.cpp:1088]
UE4Editor_SlateCore!SWindow::PaintWindow() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\widgets\swindow.cpp:1939]
UE4Editor_Slate!FSlateApplication::DrawWindowAndChildren() [d:\build\++ue4\sync\engine\source\runtime\slate\private\framework\application\slateapplication.cpp:1322]
UE4Editor_Slate!FSlateApplication::PrivateDrawWindows() [d:\build\++ue4\sync\engine\source\runtime\slate\private\framework\application\slateapplication.cpp:1596]
UE4Editor_Slate!FSlateApplication::DrawWindows() [d:\build\++ue4\sync\engine\source\runtime\slate\private\framework\application\slateapplication.cpp:1279]
UE4Editor_Slate!FSlateApplication::TickApplication() [d:\build\++ue4\sync\engine\source\runtime\slate\private\framework\application\slateapplication.cpp:1881]
UE4Editor_Slate!FSlateApplication::Tick() [d:\build\++ue4\sync\engine\source\runtime\slate\private\framework\application\slateapplication.cpp:1712]
UE4Editor!FEngineLoop::Tick() [d:\build\++ue4\sync\engine\source\runtime\launch\private\launchengineloop.cpp:4361]
UE4Editor!GuardedMain() [d:\build\++ue4\sync\engine\source\runtime\launch\private\launch.cpp:173]
UE4Editor!GuardedMainWrapper() [d:\build\++ue4\sync\engine\source\runtime\launch\private\windows\launchwindows.cpp:147]
UE4Editor!WinMain() [d:\build\++ue4\sync\engine\source\runtime\launch\private\windows\launchwindows.cpp:279]
UE4Editor!__scrt_common_main_seh() [d:\agent\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288]
kernel32
ntdll

Have Comments or More Details?

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

7
Login to Vote

Fixed
ComponentGameplay
Affects Versions4.234.244.22.3
Target Fix4.24
Fix Commit10017084
Main Commit10017091
Release Commit10017084
CreatedSep 27, 2019
ResolvedNov 6, 2019
UpdatedNov 7, 2019