When a widget with a spinbox is calls it's Destructor with "Multithreaded Destruction" enabled the engine crashes. I have tested in 4.23.1, 4.24.3, and 4.26 Main with "Multithreaded Destruction" disabled and didn't run into any issues.
You can find a 4.24 project at [Link Removed].
Found in 4.24.3 CL#11590370
Reproduced in 4.23.1 CL#9631420, 4.26 Main CL#11641976
1. Create a C++ project.
2. Enable "Multithreaded Destruction" in Project Settings.
3. Create a HUD C++ class(DemoHUD) that creates a widget and Adds it to the Viewport in BeginPlay().
4. Make a gamemode blueprint (DemoGamemode) that has DemoHUD as the default HUD.
5. Play the scene.
6. Stop playing the scene.
Result: The engine crashes when sotpping the scene.
Expected: The engine doesn't crash.
LoginId:9a8d08644d702ac44f074090ac311686
EpicAccountId:580fb2844ad145d79dff08f42acea7c6
Assertion failed: IsInGameThread() || IsInSlateThread() || IsInAsyncLoadingThread() [Link Removed] [Line: 210]
UE4Editor_Core!AssertFailedImplV() [d:\build\++ue4\sync\engine\source\runtime\core\private\misc\assertionmacros.cpp:105]
UE4Editor_Core!FDebug::CheckVerifyFailedImpl() [d:\build\++ue4\sync\engine\source\runtime\core\private\misc\assertionmacros.cpp:455]
UE4Editor_Slate!FSlateApplication::Get() [d:\build\++ue4\sync\engine\source\runtime\slate\public\framework\application\slateapplication.h:210]
UE4Editor_Slate!FSlateEditableTextLayout::~FSlateEditableTextLayout() [d:\build\++ue4\sync\engine\source\runtime\slate\private\widgets\text\slateeditabletextlayout.cpp:197]
UE4Editor_Slate!SEditableText::~SEditableText() [d:\build\++ue4\sync\engine\source\runtime\slate\private\widgets\input\seditabletext.cpp:23]
UE4Editor_SlateCore!FSlotBase::~FSlotBase() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\slotbase.cpp:76]
UE4Editor_SlateCore!SHorizontalBox::FSlot::`scalar deleting destructor'()
UE4Editor_SlateCore!SBoxPanel::~SBoxPanel()
UE4Editor_SlateCore!FSlotBase::~FSlotBase() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\slotbase.cpp:76]
UE4Editor_SlateCore!SCompoundWidget::~SCompoundWidget()
UE4Editor_SlateCore!FSlotBase::~FSlotBase() [d:\build\++ue4\sync\engine\source\runtime\slatecore\private\slotbase.cpp:76]
UE4Editor_Slate!SConstraintCanvas::FSlot::`scalar deleting destructor'()
UE4Editor_Slate!TIndirectArray<SConstraintCanvas::FSlot,TSizedDefaultAllocator<32> >::~TIndirectArray<SConstraintCanvas::FSlot,TSizedDefaultAllocator<32> >() [d:\build\++ue4\sync\engine\source\runtime\core\public\containers\indirectarray.h:65]
UE4Editor_Slate!SConstraintCanvas::~SConstraintCanvas()
UE4Editor_SlateCrash424!AMyHUD::~AMyHUD()
UE4Editor_SlateCrash424!AMyHUD::`vector deleting destructor'()
UE4Editor_CoreUObject!FAsyncPurge::Run() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\garbagecollection.cpp:488]
UE4Editor_Core!FRunnableThreadWin::Run() [d:\build\++ue4\sync\engine\source\runtime\core\private\windows\windowsrunnablethread.cpp:96]
There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-89771 in the post.
1 |
Component | UE - Foundation - Core - UObject |
---|---|
Affects Versions | 4.23.1, 4.24.3, 4.26 |
Target Fix | 4.26 |
Created | Feb 28, 2020 |
---|---|
Resolved | Apr 14, 2020 |
Updated | Jun 1, 2020 |