Crash in STextEditHelper


I am using UE 4.4. I tried modify a variable that for some reason is not editable , i tried anyway and hit “Enter” and the editor crashed.

the editor crashed here

 	KernelBase.dll!000007fefd913ca2()	Unknown
 	UE4Editor-Core.dll!FDebug::AssertFailed(const char * Expr, const char * File, int Line, const wchar_t * Format, ...) Line 173	C++
 	UE4Editor-Slate.dll!SEditableText::StartChangingText() Line 514	C++
 	UE4Editor-Slate.dll!FTextEditHelper::OnKeyDown(const FKeyboardEvent & InKeyboardEvent, const TSharedRef<ITextEditorWidget,0> & TextEditor) Line 161	C++
 	UE4Editor-Slate.dll!SEditableText::OnKeyDown(const FGeometry & MyGeometry, const FKeyboardEvent & InKeyboardEvent) Line 1572	C++
>	UE4Editor-Slate.dll!FSlateApplication::ProcessKeyDownEvent(FKeyboardEvent & InKeyboardEvent) Line 3036	C++
 	UE4Editor-Slate.dll!FSlateApplication::OnKeyDown(const int KeyCode, const unsigned int CharacterCode, const bool IsRepeat) Line 2969	C++
 	UE4Editor-Core.dll!FWindowsApplication::ProcessDeferredMessage(const FDeferredWindowsMessage & DeferredMessage) Line 1201	C++
 	UE4Editor-Core.dll!FWindowsApplication::DeferMessage(TSharedPtr<FWindowsWindow,0> & NativeWindow, HWND__ * InHWnd, unsigned int InMessage, unsigned __int64 InWParam, __int64 InLParam, int MouseX, int MouseY, unsigned int RawInputFlags) Line 1636	C++
 	UE4Editor-Core.dll!FWindowsApplication::ProcessMessage(HWND__ * hwnd, unsigned int msg, unsigned __int64 wParam, __int64 lParam) Line 736	C++
 	UE4Editor-Core.dll!FWindowsApplication::AppWndProc(HWND__ * hwnd, unsigned int msg, unsigned __int64 wParam, __int64 lParam) Line 598	C++
 	[External Code]	
 	UE4Editor-Core.dll!FWindowsPlatformMisc::PumpMessages(bool bFromMainLoop) Line 761	C++
 	UE4Editor.exe!FEngineLoop::Tick() Line 2080	C++
 	UE4Editor.exe!GuardedMain(const wchar_t * CmdLine, HINSTANCE__ * hInInstance, HINSTANCE__ * hPrevInstance, int nCmdShow) Line 133	C++
 	UE4Editor.exe!WinMain(HINSTANCE__ * hInInstance, HINSTANCE__ * hPrevInstance, char * __formal, int nCmdShow) Line 190	C++
 	[External Code]	

here some output in my VS Output window

[2014.09.14-02.21.53:868][879]LogEditor: Attempting to add actor of class 'AWRegion' to level at -240.00,-320.00,20.00
[2014.09.14-02.21.54:355][935]LogEditor: Attempting to add actor of class 'AWRegion' to level at 300.00,-140.00,20.00
The thread 0x1e84 has exited with code 0 (0x0).
I:\Projects\AWOnline\UnrealEngine\Engine\Source\Runtime\Slate\Private\Widgets\Input\SEditableText.cpp(511): Assertion failed: !IsReadOnly.Get()

UE4Editor.exe has triggered a breakpoint.

It looks like the assert really has something to do with the fact that my propertyy is read only even though I specified the UPROPERTY to be EditAnywhere

like so

	UPROPERTY(EditAnywhere, Category = AWLevelSetup)
	uint32 RegionIndex;

hope that helps


The OnEnter handler was missing a check for !TextEditor->GetIsReadOnly().

I’ll get that fixed.