Description

Changing Color Grading settings of a post process volume and using "Enter" to commit changes prevents the editor from entering PIE / Simulate mode with the error message "Can't Play In Editor / Simulate when performing Edit X operation"

Workaround:
Using Stand Alone is still available

Regression:
Yes - PIE still works & no crash in 4.15.3

Working - 4.15.3 (CL 3450819)
Broken - 4.16.2 (CL 3514769)


Licensee suggested the following fix in SColorGradingPicker::Construct which works on their end:

 SAssignNew(NumericEntryBoxWidget, SNumericEntryBox<float>)
 .EditableTextBoxStyle(&FCoreStyle::Get().GetWidgetStyle<FEditableTextBoxStyle>("DarkEditableTextBox"))
 .Value(this, &SColorGradingPicker::OnGetMainValue)
 .OnValueChanged(this, &SColorGradingPicker::OnMainValueChanged, false)
 
 // --- NEW CODE BELOW ---
 .OnValueCommitted(SNumericEntryBox<float>::FOnValueCommitted::CreateLambda([this](float NewValue, ETextCommit::Type CommitType) -> void
     {
         OnMainValueChanged(NewValue, true);
     }))
Steps to Reproduce
  1. Open UE4 Editor (any project)
  2. Add post process volume to the viewport
  3. With the volume selected, expand Color Grading->Global->Saturation in the Details panel
  4. Click the checkbox next to Saturation to enable
  5. Click the '1.0' below the gradient wheel (just above 'Contrast') to manually change the value
  6. Press Enter to accept the new value
  7. Press the button for PIE

Result:
PIE doesn't start and the editor provides error in description. Editor crashes on exit

Expected:
PIE can be run and editor closes gracefully on exit.

Callstack
LoginId:7156c35640f86204e61b8383f45dee17
EpicAccountId:e8c7fa630b6440f69a25a2c64d6c482c

Assertion failed: !PinRef->bWasTrashed [File:D:\Build\++UE4+Release-4.16+Compile\Sync\Engine\Source\Runtime\Engine\Private\EdGraph\EdGraphPin.cpp] [Line: 1502] 



UE4Editor_Core!FDebug::AssertFailed() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\core\private\misc\assertionmacros.cpp:349]
UE4Editor_Engine!UEdGraphPin::SerializePin() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\engine\private\edgraph\edgraphpin.cpp:1503]
UE4Editor_Engine!UEdGraphPin::SerializePinArray() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\engine\private\edgraph\edgraphpin.cpp:1453]
UE4Editor_Engine!UEdGraphNode::Serialize() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\engine\private\edgraph\edgraphnode.cpp:429]
UE4Editor_BlueprintGraph!UK2Node::Serialize() [d:\build\++ue4+release-4.16+compile\sync\engine\source\editor\blueprintgraph\private\k2node.cpp:78]
UE4Editor_BlueprintGraph!UK2Node_EditablePinBase::Serialize() [d:\build\++ue4+release-4.16+compile\sync\engine\source\editor\blueprintgraph\private\k2node_editablepinbase.cpp:208]
UE4Editor_BlueprintGraph!UK2Node_Event::Serialize() [d:\build\++ue4+release-4.16+compile\sync\engine\source\editor\blueprintgraph\private\k2node_event.cpp:55]
UE4Editor_UnrealEd!FTransaction::FObjectRecord::SerializeContents() [d:\build\++ue4+release-4.16+compile\sync\engine\source\editor\unrealed\private\editortransaction.cpp:146]
UE4Editor_UnrealEd!FTransaction::FObjectRecord::FObjectRecord() [d:\build\++ue4+release-4.16+compile\sync\engine\source\editor\unrealed\private\editortransaction.cpp:80]
UE4Editor_UnrealEd!FTransaction::SaveObject() [d:\build\++ue4+release-4.16+compile\sync\engine\source\editor\unrealed\private\editortransaction.cpp:385]
UE4Editor_CoreUObject!SaveToTransactionBuffer() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\coreuobject\private\uobject\uobjectglobals.cpp:2116]
UE4Editor_CoreUObject!UObject::Modify() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\coreuobject\private\uobject\obj.cpp:1068]
UE4Editor_Engine!UEdGraphPin::BreakLinkTo() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\engine\private\edgraph\edgraphpin.cpp:323]
UE4Editor_Engine!UEdGraphPin::BreakAllPinLinks() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\engine\private\edgraph\edgraphpin.cpp:349]
UE4Editor_Engine!UEdGraphPin::DestroyImpl() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\engine\private\edgraph\edgraphpin.cpp:1259]
UE4Editor_Engine!UEdGraphNode::BeginDestroy() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\engine\private\edgraph\edgraphnode.cpp:536]
UE4Editor_CoreUObject!UObject::ConditionalBeginDestroy() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\coreuobject\private\uobject\obj.cpp:845]
UE4Editor_CoreUObject!StaticExit() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\coreuobject\private\uobject\obj.cpp:4134]
UE4Editor_CoreUObject!TBaseStaticDelegateInstance<void __cdecl(void)>::ExecuteIfSafe() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\core\public\delegates\delegateinstancesimpl.h:1027]
UE4Editor!TBaseMulticastDelegate<void>::Broadcast() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\core\public\delegates\delegatesignatureimpl.inl:937]
UE4Editor!FEngineLoop::AppPreExit() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\launch\private\launchengineloop.cpp:3761]
UE4Editor!FEngineLoop::Exit() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\launch\private\launchengineloop.cpp:2721]
UE4Editor!GuardedMain() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\launch\private\launch.cpp:177]
UE4Editor!GuardedMainWrapper() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\launch\private\windows\launchwindows.cpp:134]
UE4Editor!WinMain() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\launch\private\windows\launchwindows.cpp:210]
UE4Editor!__scrt_common_main_seh() [f:\dd\vctools\crt\vcstartup\src\startup\exe_common.inl:253]
kernel32
ntdll

Have Comments or More Details?

There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-47730 in the post.

1
Login to Vote

Fixed
ComponentTools
Affects Versions4.16.24.17
Target Fix4.17
Fix Commit3558074
Main Commit3596628
Release Commit3558074
CreatedJul 26, 2017
ResolvedJul 27, 2017
UpdatedJan 13, 2021