The UMG editor will compile as if the blueprints is valid if you make "Get Text" node from a TextBlock variable, delete it and create a EditableText variable with the same name. When running a scene that uses that blueprint the engine crashes when it hits the GetText node.
If you reopen the project it will throw an error when you open the widget with the error.
Found in 4.23.1 CL#9631420
Reproduced in 4.24.1 CL#10756747, 4.25 Main CL#10868506
1. Open the Editor.
2. Create a new widget blueprint.
2. Add a TextBlock to the Designer Tab.
3. Name the new TextBlock "New".
4. Create the blueprints in the attached image. Specifically, the GetText node needs to called.
5. Save and compile the widgblueprint.
6. Delete the TextBlock named "New".
7. Create a EditableText and name it New.
8. Save and compile the widget blueprint.
9. Open the level blueprint and add it the viewport on beginplay.
10. Play the scene.
Results: The Editor crashes.
Expected: The Editor throws an error in the widget blueprint.
Unhandled exception UE4Editor_Slate!TAttribute<FText>::Get() [d:\build\++ue4\sync\engine\source\runtime\core\public\misc\attribute.h:130] UE4Editor_UMG!UTextBlock::execGetText() [d:\build\++ue4\sync\engine\source\runtime\umg\public\components\textblock.h:24] UE4Editor_CoreUObject!UFunction::Invoke() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\class.cpp:4723] UE4Editor_CoreUObject!UObject::CallFunction() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:927] UE4Editor_CoreUObject!UObject::ProcessContextOpcode() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:2763] UE4Editor_CoreUObject!UObject::execLet() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:2548] UE4Editor_CoreUObject!ProcessLocalScriptFunction() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:997] UE4Editor_CoreUObject!ProcessScriptFunction<void (__cdecl*)(UObject *,FFrame &,void *)>() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:828] UE4Editor_CoreUObject!ProcessLocalFunction() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:1056] UE4Editor_CoreUObject!ProcessLocalScriptFunction() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:997] UE4Editor_CoreUObject!UObject::ProcessInternal() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:1081] UE4Editor_CoreUObject!UFunction::Invoke() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\class.cpp:4723] UE4Editor_CoreUObject!UObject::ProcessEvent() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:1912] UE4Editor_UMG!UUserWidget::NativeConstruct() [d:\build\++ue4\sync\engine\source\runtime\umg\private\userwidget.cpp:1462] UE4Editor_UMG!UWidget::TakeWidget_Private() [d:\build\++ue4\sync\engine\source\runtime\umg\private\components\widget.cpp:805] UE4Editor_UMG!UWidget::TakeWidget() [d:\build\++ue4\sync\engine\source\runtime\umg\private\components\widget.cpp:722] UE4Editor_UMG!UUserWidget::AddToScreen() [d:\build\++ue4\sync\engine\source\runtime\umg\private\userwidget.cpp:1076] UE4Editor_UMG!UUserWidget::execAddToViewport() [d:\build\++ue4\sync\engine\source\runtime\umg\public\blueprint\userwidget.h:208] UE4Editor_CoreUObject!UFunction::Invoke() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\class.cpp:4723] UE4Editor_CoreUObject!UObject::CallFunction() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:927] UE4Editor_CoreUObject!UObject::ProcessContextOpcode() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:2763] UE4Editor_CoreUObject!ProcessLocalScriptFunction() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:997] UE4Editor_CoreUObject!ProcessScriptFunction<void (__cdecl*)(UObject *,FFrame &,void *)>() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:828] UE4Editor_CoreUObject!ProcessLocalFunction() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:1056] UE4Editor_CoreUObject!ProcessLocalScriptFunction() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:997] UE4Editor_CoreUObject!UObject::ProcessInternal() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:1081] UE4Editor_CoreUObject!UFunction::Invoke() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\class.cpp:4723] UE4Editor_CoreUObject!UObject::ProcessEvent() [d:\build\++ue4\sync\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:1912] UE4Editor_Engine!AActor::ProcessEvent() [d:\build\++ue4\sync\engine\source\runtime\engine\private\actor.cpp:770] UE4Editor_Engine!AActor::BeginPlay() [d:\build\++ue4\sync\engine\source\runtime\engine\private\actor.cpp:3377] UE4Editor_Engine!AActor::DispatchBeginPlay() [d:\build\++ue4\sync\engine\source\runtime\engine\private\actor.cpp:3337] UE4Editor_Engine!AWorldSettings::NotifyBeginPlay() [d:\build\++ue4\sync\engine\source\runtime\engine\private\worldsettings.cpp:255] UE4Editor_Engine!AGameStateBase::HandleBeginPlay() [d:\build\++ue4\sync\engine\source\runtime\engine\private\gamestatebase.cpp:179] UE4Editor_Engine!UWorld::BeginPlay() [d:\build\++ue4\sync\engine\source\runtime\engine\private\world.cpp:4065] UE4Editor_Engine!UGameInstance::StartPlayInEditorGameInstance() [d:\build\++ue4\sync\engine\source\runtime\engine\private\gameinstance.cpp:412] UE4Editor_UnrealEd!UEditorEngine::CreatePIEGameInstance() [d:\build\++ue4\sync\engine\source\editor\unrealed\private\playlevel.cpp:3482] UE4Editor_UnrealEd!UEditorEngine::PlayInEditor() [d:\build\++ue4\sync\engine\source\editor\unrealed\private\playlevel.cpp:2589] UE4Editor_UnrealEd!UEditorEngine::StartQueuedPlayMapRequest() [d:\build\++ue4\sync\engine\source\editor\unrealed\private\playlevel.cpp:1299] UE4Editor_UnrealEd!UEditorEngine::Tick() [d:\build\++ue4\sync\engine\source\editor\unrealed\private\editorengine.cpp:1552] UE4Editor_UnrealEd!UUnrealEdEngine::Tick() [d:\build\++ue4\sync\engine\source\editor\unrealed\private\unrealedengine.cpp:407] UE4Editor!FEngineLoop::Tick() [d:\build\++ue4\sync\engine\source\runtime\launch\private\launchengineloop.cpp:4257] 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
How does TextureRenderTarget2D get TArray<uint8> type data?
Why does the REMOVE method of map container remove elements have memory leaks?
How to delete some elements correctly when deleting an array loop?
What is the cause of the packaging error falling back to 'GameUserSettings' in ue5?
UMG RichText not appear image when packaged
How does TArray loop correctly remove elements in blueprints?
What is the difference between Camera and CineCamera?
How to implement springarm components to scale according to mouse position in spawn?
There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-86163 in the post.
0 |
Component | UE - Editor - UI Systems |
---|---|
Affects Versions | 4.23.1, 4.24.1, 4.25 |
Target Fix | 4.26 |
Created | Dec 26, 2019 |
---|---|
Resolved | Apr 14, 2020 |
Updated | Jul 18, 2020 |