Description

Crash occurs when the user changes a Text variable to a String while the Details panel is displaying its properties, and then compiling.

Crash does not seem to occur if the Details are not visible. Crash also does not seem to occur if the variable is changed to other types.

Steps to Reproduce
  1. Open any project in editor.
  2. Open the level blueprint.
  3. Add a variable and change its type to Text.
  4. Compile.
  5. Select the variable, so its Details are visible.
  6. While the Details are still visible, change the variable type to String.
  7. Compile again.

RESULT

Crash

Callstack
Unhandled Exception: EXCEPTION_ACCESS_VIOLATION reading address 0x1acf0000

VCRUNTIME140.dll!UnknownFunction []
UE4Editor-Core.dll!FGenericPlatformString::Memcpy() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\Core\Private\GenericPlatform\GenericPlatformString.cpp:21]
UE4Editor-Core.dll!FString::AppendChars() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\Core\Private\Containers\String.cpp:191]
UE4Editor-CoreUObject.dll!FProperty::ExportText_Direct() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\Property.cpp:840]
UE4Editor-PropertyEditor.dll!FPropertyHandleBase::GetPerObjectValue() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Editor\PropertyEditor\Private\PropertyHandleImpl.cpp:2784]
UE4Editor-DetailCustomizations.dll!`anonymous namespace'::FEditableTextPropertyHandle::GetText() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Editor\DetailCustomizations\Private\TextCustomization.cpp:62]
UE4Editor-EditorWidgets.dll!STextPropertyEditableTextBox::GetTextWarningImageVisibility() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Editor\EditorWidgets\Private\STextPropertyEditableTextBox.cpp:1435]
UE4Editor-EditorWidgets.dll!TBaseSPMethodDelegateInstance<1,STextPropertyEditableTextBox,0,EVisibility __cdecl(void)>::Execute() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\Core\Public\Delegates\DelegateInstancesImpl.h:298]
UE4Editor-SlateCore.dll!ComputeDesiredSizeForBox<0>() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SBoxPanel.cpp:205]
UE4Editor-SlateCore.dll!SBoxPanel::ComputeDesiredSize() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SBoxPanel.cpp:256]
UE4Editor-SlateCore.dll!SWidget::CacheDesiredSize() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:831]
UE4Editor-SlateCore.dll!SWidget::Prepass_Internal() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1476]
UE4Editor-SlateCore.dll!SWidget::Prepass_Internal() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1460]
UE4Editor-SlateCore.dll!SWidget::Prepass_Internal() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1460]
UE4Editor-SlateCore.dll!SWidget::Prepass_Internal() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1460]
UE4Editor-SlateCore.dll!SWidget::Prepass_Internal() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1460]
UE4Editor-SlateCore.dll!SWidget::Prepass_Internal() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1460]
UE4Editor-SlateCore.dll!SWidget::Prepass_Internal() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1460]
UE4Editor-SlateCore.dll!SWidget::Prepass_Internal() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1460]
UE4Editor-SlateCore.dll!SWidget::Prepass_Internal() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1460]
UE4Editor-SlateCore.dll!SWidget::Prepass_Internal() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1460]
UE4Editor-SlateCore.dll!SWidget::Prepass_Internal() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1460]
UE4Editor-SlateCore.dll!SWidget::Prepass_Internal() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1460]
UE4Editor-SlateCore.dll!SWidget::Prepass_Internal() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1460]
UE4Editor-SlateCore.dll!SWidget::Prepass_Internal() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1460]
UE4Editor-SlateCore.dll!SWidget::Prepass_Internal() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1460]
UE4Editor-SlateCore.dll!SWidget::Prepass_Internal() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1460]
UE4Editor-SlateCore.dll!SWidget::Prepass_Internal() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1460]
UE4Editor-SlateCore.dll!SWidget::Prepass_Internal() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1460]
UE4Editor-SlateCore.dll!SWidget::Prepass_Internal() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1460]
UE4Editor-SlateCore.dll!SWidget::Prepass_Internal() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1460]
UE4Editor-SlateCore.dll!SWidget::Prepass_Internal() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1460]
UE4Editor-SlateCore.dll!SWidget::Prepass_Internal() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1460]
UE4Editor-SlateCore.dll!SWidget::Prepass_Internal() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1460]
UE4Editor-SlateCore.dll!SWidget::Prepass_Internal() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1460]
UE4Editor-SlateCore.dll!SWidget::Prepass_Internal() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1460]
UE4Editor-SlateCore.dll!SWidget::Prepass_Internal() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1460]
UE4Editor-SlateCore.dll!SWidget::Prepass_Internal() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1460]
UE4Editor-SlateCore.dll!SWidget::Prepass_Internal() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1460]
UE4Editor-SlateCore.dll!SWidget::Prepass_Internal() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1460]
UE4Editor-SlateCore.dll!SWidget::Prepass_Internal() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1460]
UE4Editor-SlateCore.dll!SWidget::Prepass_Internal() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1460]
UE4Editor-SlateCore.dll!SWidget::Prepass_Internal() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1460]
UE4Editor-SlateCore.dll!SWidget::Prepass_Internal() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1460]
UE4Editor-SlateCore.dll!SWidget::Prepass_Internal() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1460]
UE4Editor-SlateCore.dll!SWidget::Prepass_Internal() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1460]
UE4Editor-SlateCore.dll!SWidget::Prepass_Internal() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1460]
UE4Editor-SlateCore.dll!SWidget::Prepass_Internal() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1460]
UE4Editor-SlateCore.dll!SWidget::Prepass_Internal() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1460]
UE4Editor-SlateCore.dll!SWidget::Prepass_Internal() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1460]
UE4Editor-SlateCore.dll!SWidget::Prepass_Internal() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1460]
UE4Editor-SlateCore.dll!SWidget::Prepass_Internal() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1460]
UE4Editor-SlateCore.dll!SWidget::SlatePrepass() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:608]
UE4Editor-Slate.dll!PrepassWindowAndChildren() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\Slate\Private\Framework\Application\SlateApplication.cpp:1102]
UE4Editor-Slate.dll!PrepassWindowAndChildren() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\Slate\Private\Framework\Application\SlateApplication.cpp:1110]
UE4Editor-Slate.dll!FSlateApplication::DrawPrepass() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\Slate\Private\Framework\Application\SlateApplication.cpp:1151]
UE4Editor-Slate.dll!FSlateApplication::PrivateDrawWindows() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\Slate\Private\Framework\Application\SlateApplication.cpp:1198]
UE4Editor-Slate.dll!FSlateApplication::TickApplication() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\Slate\Private\Framework\Application\SlateApplication.cpp:1496]
UE4Editor-Slate.dll!FSlateApplication::Tick() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\Slate\Private\Framework\Application\SlateApplication.cpp:1358]
UE4Editor.exe!FEngineLoop::Tick() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\Launch\Private\LaunchEngineLoop.cpp:4940]
UE4Editor.exe!GuardedMain() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\Launch\Private\Launch.cpp:169]
UE4Editor.exe!GuardedMainWrapper() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp:137]
UE4Editor.exe!WinMain() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp:268]
UE4Editor.exe!__scrt_common_main_seh() [d:\agent\_work\5\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288]
KERNEL32.DLL!UnknownFunction []
ntdll.dll!UnknownFunction []

Have Comments or More Details?

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

1
Login to Vote

Fixed
ComponentUE - Gameplay - Blueprint Editor
Affects Versions4.254.26
Target Fix4.25.4
Fix Commit14162849
Release Commit14162849
CreatedJul 29, 2020
ResolvedSep 10, 2020
UpdatedApr 28, 2021
Pull Requests
7675
7540