Why does the UI Editor Crash on Linux?

Build Type: Source build of 4.13.1 from GitHub, compiled on Linux AMD64 w/GCC 4.9.3

Build Version: 4.13.1-0+UE4

Detailed description of the issue: Since upgrading from Unreal Engine 4.12.5 to Unreal Engine 4.13.1, the UI editor simply crashes when opened (by double-clicking a Widget Blueprint in the Content panel)

Happens always, with empty projects and newly created Widget Blueprints as well as with Widget Blueprints imported from projects that worked fine in Unreal Engine 4.12.5.

Judging by the debug messages, it’s due to the “Zoom Levels” combo box being set to an invalid index.

Screenshots/Link to video: Here’s the error message from a debug build with stack trace:

Assertion failed: ZoomLevels.IsValidIndex(InZoomLevel) [File:/mnt/devel/GameDev/UnrealEngine-4.13/Engine/Source/Editor/GraphEditor/Private/SNodePanel.cpp] [Line: 53]
[Callstack] 00 0x00007f37edc24b82 FLinuxPlatformStackWalk::CaptureStackBackTrace(unsigned long long*, unsigned int, void*)
[Callstack] 01 0x00007f37ed892383 FGenericPlatformStackWalk::StackWalkAndDump(char*, unsigned long, int, void*)
[Callstack] 02 0x00007f37edc24924 FLinuxPlatformStackWalk::StackWalkAndDump(char*, unsigned long, int, void*)
[Callstack] 03 0x00007f37edd98e90 FDebug::LogAssertFailedMessage(char const*, char const*, int, wchar_t const*, …)
[Callstack] 04 0x00007f37ccbd1b36 FFixedZoomLevelsContainer::GetZoomAmount(int) const
[Callstack] 05 0x00007f37658996ef SDesignSurface::GetZoomAmount() const
[Callstack] 06 0x00007f3765bc148d /mnt/devel/GameDev/UnrealEngine-4.13/Engine/Binaries/Linux/libUE4Editor-UMGEditor-Linux-Debug.so(ZN21TMemberFunctionCallerI13SDesignerViewMS0_KFfvEEclIJEEEDTclpmdtdefpT3ObjdtdefpT9MemFunPtrspcl7ForwardIT_Efp_EEEDpOS5+0x6d) [0x7f3765bc148d]
[Callstack] 07 0x00007f3765bc13d9 decltype(fp(Forward<>(fp0))) TTupleImpl >::ApplyAfter >(TMemberFunctionCaller&&) const
[Callstack] 08 0x00007f3765bc1388 TBaseSPMethodDelegateInstance::Execute() const
[Callstack] 09 0x00007f37e9d24ece TAttribute::Get() const
[Callstack] 10 0x00007f37658d1173 SZoomPan::GetRelativeLayoutScale(FSlotBase const&) const
[Callstack] 11 0x00007f37e1877c8b SWidget::SlatePrepass(float)

Repro Steps:

  • Create a git clone of the 4.13 branch of Unreal Engine from GitHub
  • Compile it on a Linux system (tested with Development and Debug build)
  • Create a new project, add a Widget Blueprint (right click Content, User Interface / Widget Blueprint), open it

Instead of opening the UI editor, the entire editor will crash with the assertion message quoted above.

System Specs:

  • Gentoo Linux, AMD64, Kernel 4.4.6,
  • KDE5 and proprietary NVidia drivers 367.27

This is likely related to UE4Editor crashes when opening a Widget Blueprint on Ubuntu - UI - Unreal Engine Forums

Rolling back this commit fixed the crash for me:

These three bug reports are this very issue:

Hey cygon-

This is a known issue that you can find and follow here: Unreal Engine Issues and Bug Tracker (UE-35185) . An immediate workaround is to start the editor with -binnedmalloc.

Cheers

The proper fix is already in 4.13 branch, try this commit: https://github.com/EpicGames/UnrealEngine/commit/358febb8e5c0a941960c4542fe926a7394e7ad53