Description

Repro from licensee here - [Link Removed]

Steps to Reproduce

Download the attached project "LayeredShaderBug.7z" and open in 4.26 editor.
Open MI_Trim_PlasticGrain_Large_01a
Delete layer "Edge Wear", assert is thrown (see callstack)

Assertion failed: (Index >= 0) & (Index < ArrayNum) [Link Removed] [Line: 674]
Array index out of bounds: 3 from an array of size 3
UE4Editor.exe has triggered a breakpoint.

Callstack
// > [Inline Frame] UE4Editor-Engine.dll!TArray<int,TSizedDefaultAllocator<32>>::RangeCheck(int Index) Line 674 C++> [Inline Frame] UE4Editor-Engine.dll!TArray<int,TSizedDefaultAllocator<32>>::RangeCheck(int Index) Line 674 C++  [Inline Frame] UE4Editor-Engine.dll!TArray<int,TSizedDefaultAllocator<32>>::operator[](int Index) Line 731 C++  UE4Editor-Engine.dll!RemapLayerParameterIndicesArray<FTextureParameterValue>(TArray<FTextureParameterValue,TSizedDefaultAllocator<32>> & Parameters, const TArray<int,TSizedDefaultAllocator<32>> & RemapLayerIndices) Line 375 C++  UE4Editor-Engine.dll!UMaterialInstance::UpdateParameters() Line 514 C++  UE4Editor-Engine.dll!UMaterialInstance::UpdateParameterNames() Line 4059 C++  UE4Editor-UnrealEd.dll!UMaterialEditorInstanceConstant::RegenerateArrays() Line 975 C++  UE4Editor-UnrealEd.dll!UMaterialEditorInstanceConstant::PostEditChangeProperty(FPropertyChangedEvent & PropertyChangedEvent) Line 877 C++  UE4Editor-CoreUObject.dll!UObject::PostEditChangeChainProperty(FPropertyChangedChainEvent & PropertyChangedEvent) Line 454 C++  UE4Editor-PropertyEditor.dll!FPropertyNode::NotifyPostChange(FPropertyChangedEvent & InPropertyChangedEvent, FNotifyHook * InNotifyHook) Line 2342 C++  UE4Editor-PropertyEditor.dll!FPropertyHandleBase::NotifyPostChange(unsigned int ChangeType) Line 3096 C++  UE4Editor-MaterialEditor.dll!SMaterialLayersFunctionsInstanceTree::RemoveLayer(int Index) Line 1213 C++  [Inline Frame] UE4Editor-MaterialEditor.dll!Invoke(void(SMaterialLayersFunctionsInstanceTree::*)(int)) Line 65 C++  [Inline Frame] UE4Editor-MaterialEditor.dll!UE4Tuple_Private::TTupleBase<TIntegerSequence<unsigned int,0>,int>::ApplyAfter(void(SMaterialLayersFunctionsInstanceTree::*)(int) &) Line 299 C++  UE4Editor-MaterialEditor.dll!TBaseSPMethodDelegateInstance<0,SMaterialLayersFunctionsInstanceTree,0,void __cdecl(void),FDefaultDelegateUserPolicy,int>::ExecuteIfSafe() Line 307 C++  [Inline Frame] UE4Editor-PropertyEditor.dll!TDelegate<void __cdecl(void),FDefaultDelegateUserPolicy>::ExecuteIfBound() Line 599 C++  UE4Editor-PropertyEditor.dll!PropertyCustomizationHelpers::SPropertyEditorButton::OnClick() Line 86 C++  [Inline Frame] UE4Editor-PropertyEditor.dll!Invoke(FReply(PropertyCustomizationHelpers::SPropertyEditorButton::*)()) Line 65 C++  [Inline Frame] UE4Editor-PropertyEditor.dll!UE4Tuple_Private::TTupleBase<TIntegerSequence<unsigned int>>::ApplyAfter(FReply(PropertyCustomizationHelpers::SPropertyEditorButton::*)() &) Line 299 C++  UE4Editor-PropertyEditor.dll!TBaseSPMethodDelegateInstance<0,PropertyCustomizationHelpers::SPropertyEditorButton,0,FReply __cdecl(void),FDefaultDelegateUserPolicy>::Execute() Line 290 C++  [Inline Frame] UE4Editor-Slate.dll!TDelegate<FReply __cdecl(void),FDefaultDelegateUserPolicy>::Execute() Line 580 C++  UE4Editor-Slate.dll!SButton::ExecuteOnClick() Line 385 C++  UE4Editor-Slate.dll!SButton::OnMouseButtonUp(const FGeometry & MyGeometry, const FPointerEvent & MouseEvent) Line 304 C++  [Inline Frame] UE4Editor-Slate.dll!FSlateApplication::RoutePointerUpEvent::__l8::<lambda_cc5aea9e7377b04ce85c30c65ec3889b>::operator()(const FArrangedWidget &) Line 4829 C++  UE4Editor-Slate.dll!FEventRouter::Route<FReply,FEventRouter::FToLeafmostPolicy,FPointerEvent,<lambda_cc5aea9e7377b04ce85c30c65ec3889b>>(FSlateApplication * ThisApplication, FEventRouter::FToLeafmostPolicy RoutingPolicy, FPointerEvent EventCopy, const FSlateApplication::RoutePointerUpEvent::__l8::<lambda_cc5aea9e7377b04ce85c30c65ec3889b> & Lambda, ESlateDebuggingInputEvent DebuggingInputEvent) Line 378 C++  UE4Editor-Slate.dll!FSlateApplication::RoutePointerUpEvent(const FWidgetPath & WidgetsUnderPointer, const FPointerEvent & PointerEvent) Line 4815 C++  UE4Editor-Slate.dll!FSlateApplication::ProcessMouseButtonUpEvent(const FPointerEvent & MouseEvent) Line 5356 C++  UE4Editor-Slate.dll!FSlateApplication::OnMouseUp(const EMouseButtons::Type Button, const FVector2D CursorPos) Line 5321 C++  UE4Editor-ApplicationCore.dll!FWindowsApplication::ProcessDeferredMessage(const FDeferredWindowsMessage & DeferredMessage) Line 2178 C++  UE4Editor-ApplicationCore.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 2642 C++  UE4Editor-ApplicationCore.dll!FWindowsApplication::ProcessMessage(HWND__ * hwnd, unsigned int msg, unsigned __int64 wParam, __int64 lParam) Line 1046 C++  UE4Editor-ApplicationCore.dll!FWindowsApplication::AppWndProc(HWND__ * hwnd, unsigned int msg, unsigned __int64 wParam, __int64 lParam) Line 878 C++  user32.dll!UserCallWinProcCheckWow() Unknown  user32.dll!DispatchMessageWorker() Unknown  [Inline Frame] UE4Editor-ApplicationCore.dll!WinPumpMessages() Line 108 C++  UE4Editor-ApplicationCore.dll!FWindowsPlatformApplicationMisc::PumpMessages(bool bFromMainLoop) Line 130 C++  UE4Editor.exe!FEngineLoop::Tick() Line 4748 C++  [Inline Frame] UE4Editor.exe!EngineTick() Line 62 C++  UE4Editor.exe!GuardedMain(const wchar_t * CmdLine) Line 169 C++  UE4Editor.exe!WinMain(HINSTANCE__ * hInInstance, HINSTANCE__ * hPrevInstance, char * __formal, int nCmdShow) Line 257 C++  [Inline Frame] UE4Editor.exe!invoke_main() Line 102 C++  UE4Editor.exe!__scrt_common_main_seh() Line 288 C++  kernel32.dll!BaseThreadInitThunk() Unknown  ntdll.dll!RtlUserThreadStart() Unknown

Have Comments or More Details?

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

0
Login to Vote

Fixed
ComponentRendering
Affects Versions4.26.2
Target Fix4.27
CreatedMay 4, 2021
ResolvedMay 5, 2021
UpdatedMay 19, 2021