[4.7.3] Crash compiling blueprint with SetGamePaused

I discovered that editor will crash when compling a blueprint with a SetGamePaused node attached to Destroyed event. crash is in UGameplayStatics::SetGamePaused verifying that PC pointer is valid. There’s a comment at crashpoint that reads: “Gathering some information for TTP #303973”, so this might be a reliable repo for that issue.

I am using 4.7.3 version from launcher.

Repo

Create a new blueprint with following graph:

36773-graph.png

editor will crash when compile button is pressed.

Workaround

I didn’t see an immediate workaround other than simply not calling SetGamePaused during Destroyed event.

Trimmed Crash Callstack

Included for better search results. [Full log file here][2].

Assertion failed: PC [File:D:\BuildFarm\buildmachine_++depot+UE4-Releases+4.7\Engine\Source\Runtime\Engine\Private\GameplayStatics.cpp] [Line: 141] 
...
UE4Editor-Engine.dll!UGameplayStatics::SetGamePaused() (0x000007fedba9acf6) + 0 bytes [d:\buildfarm\buildmachine_++depot+ue4-releases+4.7\engine\source\runtime\engine\private\gameplaystatics.cpp:143]
UE4Editor-Engine.dll!UGameplayStatics::execSetGamePaused() (0x000007fedb7bad41) + 177 bytes [d:\buildfarm\buildmachine_++depot+ue4-releases+4.7\engine\source\runtime\engine\classes\kismet\gameplaystatics.h:31]
UE4Editor-CoreUObject.dll!UFunction::Invoke() (0x000007fee0811f64) + 15 bytes [d:\buildfarm\buildmachine_++depot+ue4-releases+4.7\engine\source\runtime\coreuobject\private\uobject\class.cpp:3684]
UE4Editor-CoreUObject.dll!UObject::CallFunction() (0x000007fee08df688) + 20 bytes [d:\buildfarm\buildmachine_++depot+ue4-releases+4.7\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:395]
UE4Editor-CoreUObject.dll!UObject::ProcessContextOpcode() (0x000007fee08fe0fd) + 0 bytes [d:\buildfarm\buildmachine_++depot+ue4-releases+4.7\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:1451]
UE4Editor-CoreUObject.dll!UObject::execLetBool() (0x000007fee091bf6e) + 28 bytes [d:\buildfarm\buildmachine_++depot+ue4-releases+4.7\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:1370]
UE4Editor-CoreUObject.dll!UObject::ProcessInternal() (0x000007fee08ff87c) + 0 bytes [d:\buildfarm\buildmachine_++depot+ue4-releases+4.7\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:602]
UE4Editor-CoreUObject.dll!UObject::CallFunction() (0x000007fee08dfcc3) + 0 bytes [d:\buildfarm\buildmachine_++depot+ue4-releases+4.7\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:516]
UE4Editor-CoreUObject.dll!UObject::ProcessInternal() (0x000007fee08ff87c) + 0 bytes [d:\buildfarm\buildmachine_++depot+ue4-releases+4.7\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:602]
UE4Editor-CoreUObject.dll!UFunction::Invoke() (0x000007fee0811f64) + 15 bytes [d:\buildfarm\buildmachine_++depot+ue4-releases+4.7\engine\source\runtime\coreuobject\private\uobject\class.cpp:3684]
UE4Editor-CoreUObject.dll!UObject::ProcessEvent() (0x000007fee08fef2c) + 29 bytes [d:\buildfarm\buildmachine_++depot+ue4-releases+4.7\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:924]
UE4Editor-Engine.dll!AActor::ProcessEvent() (0x000007fedb895d93) + 0 bytes [d:\buildfarm\buildmachine_++depot+ue4-releases+4.7\engine\source\runtime\engine\private\actor.cpp:529]
UE4Editor-Engine.dll!AActor::Destroyed() (0x000007fedb841bde) + 0 bytes [d:\buildfarm\buildmachine_++depot+ue4-releases+4.7\engine\source\runtime\engine\private\actor.cpp:1616]
UE4Editor-Engine.dll!UWorld::DestroyActor() (0x000007fedbbebbfb) + 0 bytes [d:\buildfarm\buildmachine_++depot+ue4-releases+4.7\engine\source\runtime\engine\private\levelactor.cpp:452]
UE4Editor-Engine.dll!UWorld::EditorDestroyActor() (0x000007fedbbf45b3) + 0 bytes [d:\buildfarm\buildmachine_++depot+ue4-releases+4.7\engine\source\runtime\engine\private\levelactor.cpp:375]
UE4Editor-Kismet.dll!FBlueprintEditor::DestroyPreview() (0x000007fed7205b30) + 0 bytes [d:\buildfarm\buildmachine_++depot+ue4-releases+4.7\engine\source\editor\kismet\private\blueprinteditor.cpp:7296]
UE4Editor-Kismet.dll!FBlueprintEditor::OnBlueprintChangedImpl() (0x000007fed7258ae3) + 0 bytes [d:\buildfarm\buildmachine_++depot+ue4-releases+4.7\engine\source\editor\kismet\private\blueprinteditor.cpp:2916]
UE4Editor-Kismet.dll!TBaseSPMethodDelegateInstance<0,FBlueprintEditor,0,TTypeWrapper<void> __cdecl(UBlueprint * __ptr64)>::Execute() (0x000007fed721040c) + 35 bytes [d:\buildfarm\buildmachine_++depot+ue4-releases+4.7\engine\source\runtime\core\public\delegates\delegateinstancesimpl_variadics.inl:282]
UE4Editor-Kismet.dll!TBaseSPMethodDelegateInstance<0,FBlueprintEditor,0,void __cdecl(UBlueprint * __ptr64)>::ExecuteIfSafe() (0x000007fed7213d4c) + 11 bytes [d:\buildfarm\buildmachine_++depot+ue4-releases+4.7\engine\source\runtime\core\public\delegates\delegateinstancesimpl_variadics.inl:388]
UE4Editor-Engine.dll!TBaseMulticastDelegate<void,UBlueprint * __ptr64>::Broadcast() (0x000007fedb77e765) + 14 bytes [d:\buildfarm\buildmachine_++depot+ue4-releases+4.7\engine\source\runtime\core\public\delegates\delegatesignatureimpl_variadics.inl:1030]
UE4Editor-UnrealEd.dll!FKismetEditorUtilities::CompileBlueprint() (0x000007feda1d7cb0) + 0 bytes [d:\buildfarm\buildmachine_++depot+ue4-releases+4.7\engine\source\editor\unrealed\private\kismet2\kismet2.cpp:795]
UE4Editor-Kismet.dll!FBlueprintEditor::Compile() (0x000007fed71cf5e7) + 0 bytes [d:\buildfarm\buildmachine_++depot+ue4-releases+4.7\engine\source\editor\kismet\private\blueprinteditor.cpp:2990]
...

Hi Lee,

I was able to reproduce this in 4.7.3 as well as our internal build, and I’ve entered a bug report for issue (UE-13123). I’ll let you know when I see any update on it. Thanks!