If the project is hot reloaded while a Switch on Enum is inside of a blueprint which is switching on a custom enum, the switch will become corrupted. It changes the 'selection' pin to take a Byte parameter which causes the node to have compilation errors. This can be fixed by refreshing the node. Attempting to click the dropdown for the selection (when no pins are connected to it) it will cause a crash.
1. Download the attached project and unzip it
2. Generate the project (right-click the .uproject file and select Generate Visual Studio Project files)
3. Open the .sln file that is generated and compile the project
4. Once that is complete, open the .uproject file
5. Open the MyUserWidgetBP in the editor
6. Inside of the .sln, open MyUserWidget.h and add a variable, i.e. add the following line of code on line 20.
int32 TestVariable
7. Compile the project and return to the editor.
8. Once the editor is hot reloaded, try to compile the blueprint that is open
Result: The compilation fails
Expected: The compilation succeeds without issue
To get the crash, from step 8, select the dropdown box on the Switch on EMyEnum in the Graph tab of the blueprint
To workaround the issue, refresh all nodes
MachineId:CBED442E4F2EE6B2A9D9BC8E57AE98C0 EpicAccountId:fb97c75d3c2041ad93ce1ee90d0703d7 Unknown exception - code 00000001 (first/second chance not available) "Assertion failed: EnumPtr [File:D:\BuildFarm\buildmachine_++depot+UE4-Releases+4.9\Engine\Source\Editor\GraphEditor\Private UE4Editor_Core!FDebug::AssertFailed() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\core\private\misc\outputdevice.cpp:354] UE4Editor_GraphEditor!SGraphPinEnum::OnGetFriendlyName() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\editor\grapheditor\private\kismetpins\sgraphpinenum.cpp:113] UE4Editor_GraphEditor!TMemberFunctionCaller<SGraphPinEnum,FText (__cdecl SGraphPinEnum::*)(int) __ptr64>::operator()<int & __ptr64>() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\core\public\delegates\delegateinstanceinterface_variadics.h:161] UE4Editor_GraphEditor!TTupleImpl<TIntegerSequence<> >::ApplyAfter_ExplicitReturnType<FText,TMemberFunctionCaller<SGraphPinEnum,FText (__cdecl SGraphPinEnum::*)(int) __ptr64>,int & __ptr64>() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\core\public\delegates\tuple.h:113] UE4Editor_GraphEditor!TBaseSPMethodDelegateInstance<0,SGraphPinEnum,0,FText __cdecl(int)>::Execute() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\core\public\delegates\delegateinstancesimpl_variadics.inl:282] UE4Editor_GraphEditor!TBaseDelegate<FText,int>::Execute() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\core\public\delegates\delegatesignatureimpl_variadics.inl:440] UE4Editor_GraphEditor!SPinComboBox::GetRowString() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\editor\grapheditor\public\sgraphpincombobox.h:47] UE4Editor_GraphEditor!TMemberFunctionCaller<SPinComboBox,FText (__cdecl SPinComboBox::*)(int)const __ptr64>::operator()<int const & __ptr64>() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\core\public\delegates\delegateinstanceinterface_variadics.h:161] UE4Editor_GraphEditor!TTupleImpl<TIntegerSequence<0>,int>::ApplyAfter_ExplicitReturnType<FText,TMemberFunctionCaller<SPinComboBox,FText (__cdecl SPinComboBox::*)(int)const __ptr64> >() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\core\public\delegates\tuple.h:78] UE4Editor_GraphEditor!TBaseSPMethodDelegateInstance<1,SPinComboBox,0,FText __cdecl(void),int>::Execute() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\core\public\delegates\delegateinstancesimpl_variadics.inl:282] UE4Editor_Slate!TBaseDelegate<FText>::Execute() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\core\public\delegates\delegatesignatureimpl_variadics.inl:440] UE4Editor_Slate!TAttribute<FText>::Get() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\core\public\misc\attribute.h:135] UE4Editor_Slate!FTextBlockLayout::ComputeDesiredSize() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\slate\private\widgets\text\textblocklayout.cpp:46] UE4Editor_Slate!STextBlock::ComputeDesiredSize() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\slate\private\widgets\text\stextblock.cpp:180] UE4Editor_SlateCore!SWidget::CacheDesiredSize() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\slatecore\private\widgets\swidget.cpp:405] UE4Editor_SlateCore!SWidget::SlatePrepass() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\slatecore\private\widgets\swidget.cpp:399] UE4Editor_SlateCore!SWidget::SlatePrepass() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\slatecore\private\widgets\swidget.cpp:394] UE4Editor_SlateCore!SWidget::SlatePrepass() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\slatecore\private\widgets\swidget.cpp:394] UE4Editor_GraphEditor!SListView<TSharedPtr<int,0> >::GenerateWidgetForItem() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\slate\public\widgets\views\slistview.h:900] UE4Editor_GraphEditor!SListView<TSharedPtr<int,0> >::ReGenerateItems() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\slate\public\widgets\views\slistview.h:795] UE4Editor_Slate!STableViewBase::Tick() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\slate\private\widgets\views\stableviewbase.cpp:237] UE4Editor_SlateCore!SWidget::Paint() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\slatecore\private\widgets\swidget.cpp:700] UE4Editor_SlateCore!SCompoundWidget::OnPaint() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\slatecore\private\widgets\scompoundwidget.cpp:25] UE4Editor_Slate!SBorder::OnPaint() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\slate\private\widgets\layout\sborder.cpp:94] UE4Editor_SlateCore!SWidget::Paint() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\slatecore\private\widgets\swidget.cpp:703] UE4Editor_SlateCore!SPanel::PaintArrangedChildren() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\slatecore\private\widgets\spanel.cpp:39] UE4Editor_SlateCore!SPanel::OnPaint() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\slatecore\private\widgets\spanel.cpp:19] UE4Editor_SlateCore!SWidget::Paint() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\slatecore\private\widgets\swidget.cpp:703] UE4Editor_SlateCore!SCompoundWidget::OnPaint() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\slatecore\private\widgets\scompoundwidget.cpp:25] UE4Editor_Slate!SBorder::OnPaint() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\slate\private\widgets\layout\sborder.cpp:94] UE4Editor_SlateCore!SWidget::Paint() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\slatecore\private\widgets\swidget.cpp:703] UE4Editor_SlateCore!FSlateWindowElementList::FDeferredPaint::ExecutePaint() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\slatecore\private\rendering\drawelements.cpp:339] UE4Editor_SlateCore!FSlateWindowElementList::PaintDeferred() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\slatecore\private\rendering\drawelements.cpp:357] UE4Editor_Slate!FSlateApplication::DrawWindowAndChildren() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\slate\private\framework\application\slateapplication.cpp:964] UE4Editor_Slate!FSlateApplication::DrawWindowAndChildren() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\slate\private\framework\application\slateapplication.cpp:1040] UE4Editor_Slate!FSlateApplication::PrivateDrawWindows() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\slate\private\framework\application\slateapplication.cpp:1182] UE4Editor_Slate!FSlateApplication::DrawWindows() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\slate\private\framework\application\slateapplication.cpp:927] UE4Editor_Slate!FSlateApplication::Tick() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\slate\private\framework\application\slateapplication.cpp:1441] UE4Editor!FEngineLoop::Tick() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\launch\private\launchengineloop.cpp:2461] UE4Editor!GuardedMain() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\launch\private\launch.cpp:142] UE4Editor!GuardedMainWrapper() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\launch\private\windows\launchwindows.cpp:126] UE4Editor!WinMain() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.9\engine\source\runtime\launch\private\windows\launchwindows.cpp:200]
Head over to the existing Questions & Answers thread and let us know what's up.
0 |
Component | UE - Foundation - Core |
---|---|
Affects Versions | 4.8.3, 4.9.1, 4.11 |
Target Fix | 4.10 |
Created | Sep 28, 2015 |
---|---|
Resolved | Sep 30, 2015 |
Updated | Feb 5, 2017 |