A crash occurs when attempting to preview specific LODs when the monitor resolution forces the menu to be expanded when selecting an LOD.
This Jira was created from CrashReports submitted by the public due to the high number of occurrences. Descriptions from users are provided below.
Error message:
Assertion failed: NewMenu.IsValid() && NewMenu->GetOwnedWindow().IsValid() [Link Removed] [Line: 390]
Source Context:
376 MethodInUse = Method.IsSet() 377 ? FPopupMethodReply::UseMethod(Method.GetValue()) 378 : QueryPopupMethod(MyWidgetPath); 379 380 // "Normal" menus are created and managed by the application's menu stack functions 381 if (bUseApplicationMenuStack) 382 { 383 if (MethodInUse.GetPopupMethod() == EPopupMethod::CreateNewWindow) 384 { 385 // Open the pop-up 386 TSharedPtr<IMenu> NewMenu = FSlateApplication::Get().PushMenu(AsShared(), MyWidgetPath, MenuContentRef, NewPosition, TransitionEffect, bFocusMenu, SummonLocationSize, MethodInUse.GetPopupMethod(), bIsCollapsedByParent); 387 388 PopupMenuPtr = NewMenu; 389 check(NewMenu.IsValid() && NewMenu->GetOwnedWindow().IsValid()); 390 ***** NewMenu->GetOnMenuDismissed().AddSP(this, &SMenuAnchor::OnMenuClosed); 391 PopupWindowPtr = NewMenu->GetOwnedWindow(); 392 } 393 else 394 { 395 // We are re-using the current window instead of creating a new one. 396 // The popup will be presented as a child of this widget. 397 ensure(MethodInUse.GetPopupMethod() == EPopupMethod::UseCurrentWindow); 398 PopupWindowPtr = MyWidgetPath.GetWindow(); 399 400 if (bFocusMenu) 401 { 402 FSlateApplication::Get().ReleaseMouseCaptureForUser(FocusUserIndex); 403 } 404 405 TSharedRef<SMenuAnchor> SharedThis = StaticCastSharedRef<SMenuAnchor>(AsShared());
Most recent user affected CL: 3142249
Logs:
[Link Removed]
[Link Removed]
[Link Removed]
1. Set the Resolution of your desktop screen to 1366x768 (Native is 1920x1080)
2. Open the attached project and open the Conifer_Desktop static mesh.
3. Select the 'Auto LOD' dropdown and choose any of the other LOD levels to preview.
4. Click the 'Click to Expand' option and re-select the 'Auto LOD' level.
5. Be sure to select the Duplicated Auto LOD dropdown that appears. (see attached screenshot).
Outcome Engine crashes upon selecting the Auto LOD from the dropdown.
Expected The Static mesh editor returns to the Auto LOD preview.
Repro Steps Video
[Link Removed]
UE4Editor_Slate!SMenuAnchor::SetIsOpen() [smenuanchor.cpp:391] UE4Editor_Slate!SComboButton::OnButtonClicked() [scombobutton.cpp:83] UE4Editor_Slate!SComboBox<TSharedPtr<FString,0> >::OnButtonClicked() [scombobox.h:356] UE4Editor_Slate!TMemberFunctionCaller<SComboButton,FReply() [delegateinstanceinterface.h:161] UE4Editor_Slate!TTupleImpl<TIntegerSequence<unsigned int> >::ApplyAfter<TMemberFunctionCaller<SComboButton,FReply() [tuple.h:115] UE4Editor_Slate!TBaseSPMethodDelegateInstance<0,SComboButton,0,FReply __cdecl() [delegateinstancesimpl.h:317] UE4Editor_Slate!TBaseDelegate<FReply>::Execute() [delegatesignatureimpl.inl:521] UE4Editor_Slate!SButton::OnMouseButtonDown() [sbutton.cpp:215] UE4Editor_Slate!<lambda_7097b900f0e4be30d80fb18f98c51ea0>::operator() [slateapplication.cpp:4810] UE4Editor_Slate!FEventRouter::Route<FReply,FEventRouter::FBubblePolicy,FPointerEvent,<lambda_7097b900f0e4be30d80fb18f98c51ea0> >() [slateapplication.cpp:215] UE4Editor_Slate!FSlateApplication::RoutePointerDownEvent() [slateapplication.cpp:4799] UE4Editor_Slate!FSlateApplication::ProcessMouseButtonDownEvent() [slateapplication.cpp:4757] UE4Editor_Slate!FSlateApplication::OnMouseDown() [slateapplication.cpp:4691] UE4Editor_Core!FWindowsApplication::ProcessDeferredMessage() [windowsapplication.cpp:1592] UE4Editor_Core!FWindowsApplication::DeferMessage() [windowsapplication.cpp:1930] UE4Editor_Core!FWindowsApplication::ProcessMessage() [windowsapplication.cpp:747] UE4Editor_Core!FWindowsApplication::AppWndProc() [windowsapplication.cpp:669] user32!<Unknown> user32!<Unknown> UE4Editor_Core!FWindowsPlatformMisc::PumpMessages() [windowsplatformmisc.cpp:905] UE4Editor!FEngineLoop::Tick() [launchengineloop.cpp:2788] UE4Editor!GuardedMain() [launch.cpp:156] UE4Editor!GuardedMainWrapper() [launchwindows.cpp:126] UE4Editor!WinMain() [launchwindows.cpp:202] UE4Editor!__scrt_common_main_seh() [exe_common.inl:264] kernel32!<Unknown> ntdll!<Unknown>
Head over to the existing Questions & Answers thread and let us know what's up.