Description

This is a trending crash coming out of the 4.17 release. Update: also occurring in 4.18

User Descriptions

  • Compiled after Refreshing Blueprint node after changine its name
  • Pressed compile after creating a simple function to spawn an actor using SpawnActorFromClass
  • While compiling after changing a name of an event to "Show Border" to "StartBorder".
  • compiling after using "set child actor class"
  • Connecting child actor node link to the target on Set Relative Transform
  • Trying to cast a child actor as the object in a custom event
  • Compiling

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       		}
Steps to Reproduce

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%)

Callstack
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()

Have Comments or More Details?

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

1
Login to Vote

Fixed
ComponentUE - Gameplay
Affects Versions4.174.17.24.184.19
Target Fix4.20
Fix Commit4132927
Main Commit3990065
Release Commit4134342
CreatedAug 15, 2017
ResolvedJun 15, 2018
UpdatedAug 17, 2018