Description

Error message:

Assertion failed: ParentIndex != INDEX_NONE [Link Removed] [Line: 512]

Source Context:

  499       	}
  500       
  501       	return Menu;
  502       }
  503       
  504       void FMenuStack::PostPush(TSharedPtr<IMenu> InParentMenu, TSharedRef<FMenuBase> InMenu, EShouldThrottle ShouldThrottle )
  505       {
  506       	// Determine at which index we insert this new menu in the stack
  507       	int32 InsertIndex = 0;
  508       	if (InParentMenu.IsValid())
  509       	{
  510       		int32 ParentIndex = Stack.IndexOfByKey(InParentMenu);
  511       		check(ParentIndex != INDEX_NONE);
  512       
  513 ***** 		InsertIndex = ParentIndex + 1;
  514       	}
  515       
  516       	// Insert before dismissing others to stop the stack accidentally emptying briefly mid-push and reseting some state
  517       	Stack.Insert(InMenu, InsertIndex);
  518       	CachedContentMap.Add(InMenu->GetContent(), InMenu);
  519       
  520       	// Dismiss menus after the insert point
  521       	if (Stack.Num() > InsertIndex + 1)
  522       	{
  523       		DismissFrom(Stack[InsertIndex + 1]);
  524       
  525       		// tidy the stack data now (it will happen via callbacks from the dismissed menus but that might be delayed)
  526       		for (int32 StackIndex = Stack.Num() - 1; StackIndex > InsertIndex; --StackIndex)
  527       		{
  528       			CachedContentMap.Remove(Stack[StackIndex]->GetContent());

Most recent user affected CL: 2927625

Logs:
[Link Removed]
[Link Removed]

*Issue call stack shares some similarities with * UE-24921

Steps to Reproduce

1. Open the editor
2. Create a new blueprint
3. On any node, right click and begin entering a comment into the comment box at the bottom of the list
4. As you are typing, hover the mouse over the Alignment option

Result: Editor Crashes

Expected: No crash would occur

Callstack
UE4Editor_Slate!FMenuStack::PostPush() [menustack.cpp:514]
UE4Editor_Slate!FMenuStack::PushInternal() [menustack.cpp:303]
UE4Editor_Slate!FMenuStack::Push() [menustack.cpp:219]
UE4Editor_Slate!FSlateApplication::PushMenu() [slateapplication.cpp:1953]
UE4Editor_Slate!SMenuAnchor::SetIsOpen() [smenuanchor.cpp:367]
UE4Editor_Slate!SMenuEntryBlock::UpdateSubMenuState() [smenuentryblock.cpp:1313]
UE4Editor_Slate!TBaseSPMethodDelegateInstance<0,SMenuEntryBlock,0,enum EActiveTimerReturnType __cdecl() [delegateinstancesimpl_variadics.inl:321]
UE4Editor_SlateCore!FActiveTimerHandle::ExecuteIfPending() [activetimerhandle.cpp:48]
UE4Editor_SlateCore!SWidget::ExecuteActiveTimers() [swidget.cpp:725]
UE4Editor_SlateCore!SWidget::Paint() [swidget.cpp:662]
UE4Editor_SlateCore!SOverlay::OnPaint() [soverlay.cpp:100]
UE4Editor_SlateCore!SWidget::Paint() [swidget.cpp:669]
UE4Editor_SlateCore!SPanel::PaintArrangedChildren() [spanel.cpp:44]
UE4Editor_SlateCore!SPanel::OnPaint() [spanel.cpp:19]
UE4Editor_SlateCore!SWidget::Paint() [swidget.cpp:669]
UE4Editor_SlateCore!SPanel::PaintArrangedChildren() [spanel.cpp:44]
UE4Editor_SlateCore!SPanel::OnPaint() [spanel.cpp:19]
UE4Editor_SlateCore!SWidget::Paint() [swidget.cpp:669]
UE4Editor_SlateCore!SPanel::PaintArrangedChildren() [spanel.cpp:44]
UE4Editor_SlateCore!SPanel::OnPaint() [spanel.cpp:19]
UE4Editor_SlateCore!SWidget::Paint() [swidget.cpp:669]
UE4Editor_SlateCore!SOverlay::OnPaint() [soverlay.cpp:100]
UE4Editor_SlateCore!SWidget::Paint() [swidget.cpp:669]
UE4Editor_SlateCore!SPanel::PaintArrangedChildren() [spanel.cpp:44]
UE4Editor_SlateCore!SPanel::OnPaint() [spanel.cpp:19]
UE4Editor_SlateCore!SWidget::Paint() [swidget.cpp:669]
UE4Editor_SlateCore!SCompoundWidget::OnPaint() [scompoundwidget.cpp:25]
UE4Editor_Slate!SScrollBox::OnPaint() [sscrollbox.cpp:917]
UE4Editor_SlateCore!SWidget::Paint() [swidget.cpp:669]
UE4Editor_SlateCore!SCompoundWidget::OnPaint() [scompoundwidget.cpp:25]
UE4Editor_Slate!SBorder::OnPaint() [sborder.cpp:90]
UE4Editor_SlateCore!SWidget::Paint() [swidget.cpp:669]
UE4Editor_SlateCore!SCompoundWidget::OnPaint() [scompoundwidget.cpp:25]
UE4Editor_SlateCore!SWidget::Paint() [swidget.cpp:669]
UE4Editor_SlateCore!FSlateWindowElementList::FDeferredPaint::ExecutePaint() [drawelements.cpp:548]
UE4Editor_SlateCore!FSlateWindowElementList::PaintDeferred() [drawelements.cpp:564]
UE4Editor_Slate!FSlateApplication::DrawWindowAndChildren() [slateapplication.cpp:996]
UE4Editor_Slate!FSlateApplication::DrawWindowAndChildren() [slateapplication.cpp:1079]
UE4Editor_Slate!FSlateApplication::DrawWindowAndChildren() [slateapplication.cpp:1079]
UE4Editor_Slate!FSlateApplication::PrivateDrawWindows() [slateapplication.cpp:1225]
UE4Editor_Slate!FSlateApplication::DrawWindows() [slateapplication.cpp:957]
UE4Editor_Slate!FSlateApplication::TickApplication() [slateapplication.cpp:1543]
UE4Editor_Slate!FSlateApplication::Tick() [slateapplication.cpp:1335]
UE4Editor!FEngineLoop::Tick() [launchengineloop.cpp:2678]
UE4Editor!GuardedMain() [launch.cpp:142]
UE4Editor!GuardedMainWrapper() [launchwindows.cpp:126]
UE4Editor!WinMain() [launchwindows.cpp:200]
UE4Editor!__scrt_common_main_seh() [exe_common.inl:264]
kernel32!BaseThreadInitThunk()
ntdll!RtlUserThreadStart()

Have Comments or More Details?

There's no existing public thread on this issue, so head over toAnswerHub just mention UE-29086 in the post.

0
Login to Vote

Fixed
ComponentTools
Affects Versions4.104.114.12
Target Fix4.12.44.13
Fix Commit2969105
Main Commit2973886
CreatedApr 5, 2016
ResolvedMay 6, 2016
UpdatedApr 27, 2018