This is a trending crash coming out of the 4.17 release. Update: also occurring in 4.18
User Descriptions
Source Context
266 /** 267 * @return true if this object is of the specified type. 268 */ 269 #if UCLASS_FAST_ISA_COMPARE_WITH_OUTERWALK || UCLASS_FAST_ISA_IMPL == UCLASS_ISA_OUTERWALK 270 bool UObjectBaseUtility::IsA( const UClass* SomeBase ) const 271 { 272 UE_CLOG(!SomeBase, LogObj, Fatal, TEXT("IsA(NULL) cannot yield meaningful results")); 273 274 UClass* ThisClass = GetClass(); 275 276 bool bOldResult = false; 277 ***** for ( UClass* TempClass=ThisClass; TempClass; TempClass=TempClass->GetSuperClass() ) 278 { 279 if ( TempClass == SomeBase ) 280 { 281 bOldResult = true; 282 break; 283 } 284 }
1. Make two blueprints (A, B) based on Actor
2. Make a third blueprint (C) based on B
3. Add a child actor component to A, set its Child Actor Class to B
4. Add a variable (NewVar_0) to blueprint B
5. Access NewVar_0 in blueprint A, for example
[Link Removed]
6. Save all blueprints (allows for repeating subsequent steps)
7. Place an instance of A in a level, set the instances Child Actor Class to C
8. Remove NewVar_0 from B, compile B
9. Compile A, note errors
10. Undo removal of NewVar_0 from B, compile B
11. Compile A, crash (add ensure(ObjectValue == nullptr || ObjectValue->IsValidLowLevel()); to UObjectProperty::SerializeItem to make crash 100%)
Access violation - code c0000005 (first/second chance not available) UE4Editor_CoreUObject!UObjectBaseUtility::IsA() [uobjectbaseutility.cpp:278] UE4Editor_CoreUObject!UObjectProperty::SerializeItem() [propertyobject.cpp:70] UE4Editor_CoreUObject!FPropertyTag::SerializeTaggedProperty() [propertytag.cpp:188] UE4Editor_CoreUObject!UStruct::SerializeTaggedProperties() [class.cpp:1073] UE4Editor_Engine!FComponentPropertyReader::FComponentPropertyReader() [componentinstancedatacache.cpp:139] UE4Editor_Engine!FActorComponentInstanceData::ApplyToComponent() [componentinstancedatacache.cpp:274] UE4Editor_Engine!FSceneComponentInstanceData::ApplyToComponent() [scenecomponent.cpp:2117] UE4Editor_Engine!FChildActorComponentInstanceData::ApplyToComponent() [childactorcomponent.cpp:308] UE4Editor_Engine!FComponentInstanceDataCache::ApplyToActor() [componentinstancedatacache.cpp:379] UE4Editor_Engine!AActor::ExecuteConstruction() [actorconstruction.cpp:788] UE4Editor_Engine!AActor::RerunConstructionScripts() [actorconstruction.cpp:494] UE4Editor_UnrealEd!FActorReplacementHelper::Finalize() [kismetreinstanceutilities.cpp:1190] UE4Editor_UnrealEd!FBlueprintCompileReinstancer::ReplaceInstancesOfClass_Inner() [kismetreinstanceutilities.cpp:2009] UE4Editor_UnrealEd!FBlueprintCompileReinstancer::BatchReplaceInstancesOfClass() [kismetreinstanceutilities.cpp:1477] UE4Editor_Kismet!FBlueprintCompilationManagerImpl::FlushReinstancingQueueImpl() [blueprintcompilationmanager.cpp:933] UE4Editor_Kismet!FBlueprintCompilationManagerImpl::CompileSynchronouslyImpl() [blueprintcompilationmanager.cpp:190] UE4Editor_UnrealEd!FKismetEditorUtilities::CompileBlueprint() [kismet2.cpp:750] UE4Editor_Kismet!FBlueprintEditor::Compile() [blueprinteditor.cpp:3291] UE4Editor_Kismet!TBaseSPMethodDelegateInstance<0,FBlueprintEditor,0,TTypeWrapper<void> __cdecl() [delegateinstancesimpl.h:327] UE4Editor_Kismet!TBaseSPMethodDelegateInstance<0,FBlueprintEditor,0,void __cdecl() [delegateinstancesimpl.h:434] UE4Editor_Slate!FUICommandList::ExecuteAction() [uicommandlist.cpp:97] UE4Editor_Slate!SToolBarButtonBlock::OnClicked() [stoolbarbuttonblock.cpp:305] UE4Editor_Slate!TMemberFunctionCaller<SToolBarButtonBlock,FReply() [delegateinstanceinterface.h:165] UE4Editor_Slate!UE4Tuple_Private::TTupleImpl<TIntegerSequence<unsigned int> >::ApplyAfter<TMemberFunctionCaller<SToolBarButtonBlock,FReply() [tuple.h:497] UE4Editor_Slate!TBaseSPMethodDelegateInstance<0,SToolBarButtonBlock,0,FReply __cdecl() [delegateinstancesimpl.h:327] UE4Editor_Slate!TBaseDelegate<FReply>::Execute() [delegatesignatureimpl.inl:537] UE4Editor_Slate!SButton::OnMouseButtonUp() [sbutton.cpp:282] UE4Editor_Slate!<lambda_1002768c627006711ef2f351a87ec0e7>::operator() [slateapplication.cpp:5199] UE4Editor_Slate!FEventRouter::Route<FReply,FEventRouter::FToLeafmostPolicy,FPointerEvent,<lambda_1002768c627006711ef2f351a87ec0e7> >() [slateapplication.cpp:232] UE4Editor_Slate!FSlateApplication::RoutePointerUpEvent() [slateapplication.cpp:5188] UE4Editor_Slate!FSlateApplication::ProcessMouseButtonUpEvent() [slateapplication.cpp:5690] UE4Editor_Slate!FSlateApplication::OnMouseUp() [slateapplication.cpp:5670] UE4Editor_Core!FWindowsApplication::ProcessDeferredMessage() [windowsapplication.cpp:1718] UE4Editor_Core!FWindowsApplication::DeferMessage() [windowsapplication.cpp:2161] UE4Editor_Core!FWindowsApplication::ProcessMessage() [windowsapplication.cpp:881] UE4Editor_Core!FWindowsApplication::AppWndProc() [windowsapplication.cpp:721] user32!UserCallWinProcCheckWow() user32!DispatchMessageWorker() UE4Editor_Core!FWindowsPlatformMisc::PumpMessages() [windowsplatformmisc.cpp:1009] UE4Editor!FEngineLoop::Tick() [launchengineloop.cpp:3151] UE4Editor!GuardedMain() [launch.cpp:166] UE4Editor!GuardedMainWrapper() [launchwindows.cpp:134] UE4Editor!WinMain() [launchwindows.cpp:210] UE4Editor!__scrt_common_main_seh() [exe_common.inl:253] kernel32!BaseThreadInitThunk() ntdll!RtlUserThreadStart()
There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-48433 in the post.