Description

Changing any value in Edit shared defaults window with multiple blueprint assets leads to Engine crash. This is a regression from 4.16

Steps to Reproduce

1) Open any project
2) Multi select blueprint and its subtype class assets
3) Press right mouse button to show context menu
4) Select Edit shared defaults
5) Try change any values in the new window
6) Notice that Engine crashes as soon as any value has changed.

Expected: No crash.

Callstack
Exception thrown at 0x00007FFACF1130B5 (UE4Editor-CoreUObject-Win64-Debug.dll) in UE4Editor-Win64-Debug.exe: 0xC0000005: Access violation reading location 0x0000000000000028.

If there is a handler for this exception, the program may be safely continued.

--------------------------

>	UE4Editor-CoreUObject-Win64-Debug.dll!UObjectBaseUtility::GetOutermost() Line 121	C++
 	UE4Editor-Kismet-Win64-Debug.dll!FBlueprintEditor::NotifyPostChange(const FPropertyChangedEvent & PropertyChangedEvent, UProperty * PropertyThatChanged) Line 7520	C++
 	UE4Editor-CoreUObject-Win64-Debug.dll!FNotifyHook::NotifyPostChange(const FPropertyChangedEvent & PropertyChangedEvent, FEditPropertyChain * PropertyThatChanged) Line 19	C++
 	UE4Editor-PropertyEditor-Win64-Debug.dll!FPropertyNode::NotifyPostChange(FPropertyChangedEvent & InPropertyChangedEvent, FNotifyHook * InNotifyHook) Line 2415	C++
 	UE4Editor-PropertyEditor-Win64-Debug.dll!FPropertyValueImpl::ImportText(const TArray<FObjectBaseAddress,FDefaultAllocator> & InObjects, const TArray<FString,FDefaultAllocator> & InValues, FPropertyNode * InPropertyNode, unsigned int Flags) Line 557	C++
 	UE4Editor-PropertyEditor-Win64-Debug.dll!FPropertyValueImpl::ImportText(const FString & InValue, FPropertyNode * InPropertyNode, unsigned int Flags) Line 357	C++
 	UE4Editor-PropertyEditor-Win64-Debug.dll!FPropertyValueImpl::ImportText(const FString & InValue, unsigned int Flags) Line 246	C++
 	UE4Editor-PropertyEditor-Win64-Debug.dll!FPropertyHandleBool::SetValue(const bool & NewValue, unsigned int Flags) Line 3137	C++
 	UE4Editor-PropertyEditor-Win64-Debug.dll!SPropertyEditorBool::OnCheckStateChanged(ECheckBoxState InNewState) Line 83	C++
 	UE4Editor-PropertyEditor-Win64-Debug.dll!TBaseSPMethodDelegateInstance<0,SPropertyEditorBool,0,TTypeWrapper<void> __cdecl(enum ECheckBoxState)>::Execute(ECheckBoxState <Params_0>) Line 327	C++
 	UE4Editor-PropertyEditor-Win64-Debug.dll!TBaseSPMethodDelegateInstance<0,SPropertyEditorBool,0,void __cdecl(enum ECheckBoxState)>::ExecuteIfSafe(ECheckBoxState <Params_0>) Line 436	C++
 	UE4Editor-Slate-Win64-Debug.dll!TBaseDelegate<void,enum ECheckBoxState>::ExecuteIfBound(ECheckBoxState <Params_0>) Line 624	C++
 	UE4Editor-Slate-Win64-Debug.dll!SCheckBox::ToggleCheckedState() Line 286	C++
 	UE4Editor-Slate-Win64-Debug.dll!SCheckBox::OnMouseButtonUp(const FGeometry & MyGeometry, const FPointerEvent & MouseEvent) Line 190	C++
 	UE4Editor-Slate-Win64-Debug.dll!FSlateApplication::RoutePointerUpEvent::__l8::<lambda>(const FArrangedWidget & TargetWidget, const FPointerEvent & Event) Line 5049	C++
 	UE4Editor-Slate-Win64-Debug.dll!FEventRouter::Route<FReply,FEventRouter::FToLeafmostPolicy,FPointerEvent,FReply <lambda>(const FArrangedWidget &, const FPointerEvent &) >(FSlateApplication * ThisApplication, FEventRouter::FToLeafmostPolicy RoutingPolicy, FPointerEvent EventCopy, const FSlateApplication::RoutePointerUpEvent::__l8::FReply <lambda>(const FArrangedWidget &, const FPointerEvent &) & Lambda) Line 239	C++
 	UE4Editor-Slate-Win64-Debug.dll!FSlateApplication::RoutePointerUpEvent(FWidgetPath & WidgetsUnderPointer, FPointerEvent & PointerEvent) Line 5038	C++
 	UE4Editor-Slate-Win64-Debug.dll!FSlateApplication::ProcessMouseButtonUpEvent(FPointerEvent & MouseEvent) Line 5515	C++
 	UE4Editor-Slate-Win64-Debug.dll!FSlateApplication::OnMouseUp(const EMouseButtons::Type Button, const FVector2D CursorPos) Line 5495	C++
 	UE4Editor-Core-Win64-Debug.dll!FWindowsApplication::ProcessDeferredMessage(const FDeferredWindowsMessage & DeferredMessage) Line 1704	C++
 	UE4Editor-Core-Win64-Debug.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 2127	C++
 	UE4Editor-Core-Win64-Debug.dll!FWindowsApplication::ProcessMessage(HWND__ * hwnd, unsigned int msg, unsigned __int64 wParam, __int64 lParam) Line 869	C++
 	UE4Editor-Core-Win64-Debug.dll!FWindowsApplication::AppWndProc(HWND__ * hwnd, unsigned int msg, unsigned __int64 wParam, __int64 lParam) Line 713	C++
 	[External Code]	
 	UE4Editor-Core-Win64-Debug.dll!WinPumpMessages() Line 987	C++
 	UE4Editor-Core-Win64-Debug.dll!FWindowsPlatformMisc::PumpMessages(bool bFromMainLoop) Line 1012	C++
 	UE4Editor-Win64-Debug.exe!FEngineLoop::Tick() Line 3058	C++
 	UE4Editor-Win64-Debug.exe!EngineTick() Line 63	C++
 	UE4Editor-Win64-Debug.exe!GuardedMain(const wchar_t * CmdLine, HINSTANCE__ * hInInstance, HINSTANCE__ * hPrevInstance, int nCmdShow) Line 169	C++
 	UE4Editor-Win64-Debug.exe!WinMain(HINSTANCE__ * hInInstance, HINSTANCE__ * hPrevInstance, char * __formal, int nCmdShow) Line 199	C++
 	[External Code]	
----------------------------------------------------------

Have Comments or More Details?

There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-46248 in the post.

0
Login to Vote

Fixed
ComponentUE - Gameplay - Blueprint
Affects Versions4.16.1
Target Fix4.16.24.17
Fix Commit3501356
Main Commit3510073
CreatedJun 20, 2017
ResolvedJun 20, 2017
UpdatedMar 3, 2020