Description

After adding a class based on "Hierarchical Instanced Static Mesh Component", any attempt to hot reload, from Visual Studio or within the editor, causes the editor to crash.

Regression:
No - crash also occurs in 4.14.3 binary (CL 3249277)

Steps to Reproduce
  1. Open UE4 Editor (any project)
  2. Add class based on Actor (MyActor)
  3. Add class based on HierarchicalInstancedStaticMeshComponent (MyHISMC)
  4. Add the following to MyActor.h (to trigger hot reload)
     UPROPERTY(EditAnywhere, BlueprintReadWrite)
     int32 TestProperty2;
    
  5. Click Compile button in the editor

Result:
Editor attempts to hot reload and then crashes

Expected:
Code is compiled / hot reload completes

Callstack
MachineId:7156C35640F86204E61B8383F45DEE17
EpicAccountId:e8c7fa630b6440f69a25a2c64d6c482c

Assertion failed: IsValid() [File:D:\Build\++UE4+Release-4.14+Compile\Sync\Engine\Source\Runtime\Core\Public\Templates\SharedPointer.h] [Line: 783] 



UE4Editor_Core!FDebug::AssertFailed() [d:\build\++ue4+release-4.14+compile\sync\engine\source\runtime\core\private\misc\assertionmacros.cpp:332]
UE4Editor_Engine!UHierarchicalInstancedStaticMeshComponent::Serialize() [d:\build\++ue4+release-4.14+compile\sync\engine\source\runtime\engine\private\hierarchicalinstancedstaticmesh.cpp:1801]
UE4Editor_CoreUObject!FFindReferencersArchive::ResetPotentialReferencer() [d:\build\++ue4+release-4.14+compile\sync\engine\source\runtime\coreuobject\private\serialization\findreferencersarchive.cpp:88]
UE4Editor_UnrealEd!TFindObjectReferencers<UObject>::TFindObjectReferencers<UObject>() [d:\build\++ue4+release-4.14+compile\sync\engine\source\runtime\coreuobject\public\serialization\findobjectreferencers.h:48]
UE4Editor_UnrealEd!FReplaceReferenceHelper::FindAndReplaceReferences() [d:\build\++ue4+release-4.14+compile\sync\engine\source\editor\unrealed\private\kismet2\kismetreinstanceutilities.cpp:65]
UE4Editor_UnrealEd!FBlueprintCompileReinstancer::ReplaceInstancesOfClass_Inner() [d:\build\++ue4+release-4.14+compile\sync\engine\source\editor\unrealed\private\kismet2\kismetreinstanceutilities.cpp:1925]
UE4Editor_UnrealEd!FBlueprintCompileReinstancer::ReplaceInstancesOfClass() [d:\build\++ue4+release-4.14+compile\sync\engine\source\editor\unrealed\private\kismet2\kismetreinstanceutilities.cpp:1464]
UE4Editor_UnrealEd!FBlueprintCompileReinstancer::ReinstanceInner() [d:\build\++ue4+release-4.14+compile\sync\engine\source\editor\unrealed\private\kismet2\kismetreinstanceutilities.cpp:670]
UE4Editor_UnrealEd!FBlueprintCompileReinstancer::ReinstanceObjects() [d:\build\++ue4+release-4.14+compile\sync\engine\source\editor\unrealed\private\kismet2\kismetreinstanceutilities.cpp:901]
UE4Editor_HotReload!FHotReloadModule::ReinstanceClass() [d:\build\++ue4+release-4.14+compile\sync\engine\source\developer\hotreload\private\hotreload.cpp:1232]
UE4Editor_HotReload!FHotReloadModule::ReinstanceClasses() [d:\build\++ue4+release-4.14+compile\sync\engine\source\developer\hotreload\private\hotreload.cpp:1219]
UE4Editor_HotReload!TBaseRawMethodDelegateInstance<0,FHotReloadModule,void __cdecl(void)>::ExecuteIfSafe() [d:\build\++ue4+release-4.14+compile\sync\engine\source\runtime\core\public\delegates\delegateinstancesimpl.h:639]
UE4Editor_CoreUObject!UClassReplaceHotReloadClasses() [d:\build\++ue4+release-4.14+compile\sync\engine\source\runtime\coreuobject\private\uobject\uobjectbase.cpp:688]
UE4Editor_CoreUObject!ProcessNewlyLoadedUObjects() [d:\build\++ue4+release-4.14+compile\sync\engine\source\runtime\coreuobject\private\uobject\uobjectbase.cpp:826]
UE4Editor_CoreUObject!TBaseStaticDelegateInstance<void __cdecl(void)>::ExecuteIfSafe() [d:\build\++ue4+release-4.14+compile\sync\engine\source\runtime\core\public\delegates\delegateinstancesimpl.h:1018]
UE4Editor_Core!TBaseMulticastDelegate<void>::Broadcast() [d:\build\++ue4+release-4.14+compile\sync\engine\source\runtime\core\public\delegates\delegatesignatureimpl.inl:922]
UE4Editor_Core!FModuleManager::LoadModuleWithFailureReason() [d:\build\++ue4+release-4.14+compile\sync\engine\source\runtime\core\private\modules\modulemanager.cpp:466]
UE4Editor_Core!FModuleManager::LoadModule() [d:\build\++ue4+release-4.14+compile\sync\engine\source\runtime\core\private\modules\modulemanager.cpp:327]
UE4Editor_HotReload!FHotReloadModule::DoHotReloadInternal() [d:\build\++ue4+release-4.14+compile\sync\engine\source\developer\hotreload\private\hotreload.cpp:828]
UE4Editor_HotReload!UE4Function_Private::TFunctionRefCaller<<lambda_845f9b2944b03bbc30be1e1f4a8d7f4b>,void __cdecl(TMap<FString,FString,FDefaultSetAllocator,TDefaultMapKeyFuncs<FString,FString,0> > const & __ptr64,bool,enum ECompilationResult::Type)>::Call() [d:\build\++ue4+release-4.14+compile\sync\engine\source\runtime\core\public\templates\function.h:239]
UE4Editor_HotReload!FHotReloadModule::CheckForFinishedModuleDLLCompile() [d:\build\++ue4+release-4.14+compile\sync\engine\source\developer\hotreload\private\hotreload.cpp:1877]
UE4Editor_HotReload!FHotReloadModule::Tick() [d:\build\++ue4+release-4.14+compile\sync\engine\source\developer\hotreload\private\hotreload.cpp:566]
UE4Editor_UnrealEd!UEditorEngine::Tick() [d:\build\++ue4+release-4.14+compile\sync\engine\source\editor\unrealed\private\editorengine.cpp:1034]
UE4Editor_UnrealEd!UUnrealEdEngine::Tick() [d:\build\++ue4+release-4.14+compile\sync\engine\source\editor\unrealed\private\unrealedengine.cpp:371]
UE4Editor!FEngineLoop::Tick() [d:\build\++ue4+release-4.14+compile\sync\engine\source\runtime\launch\private\launchengineloop.cpp:2859]
UE4Editor!GuardedMain() [d:\build\++ue4+release-4.14+compile\sync\engine\source\runtime\launch\private\launch.cpp:152]
UE4Editor!GuardedMainWrapper() [d:\build\++ue4+release-4.14+compile\sync\engine\source\runtime\launch\private\windows\launchwindows.cpp:126]
UE4Editor!WinMain() [d:\build\++ue4+release-4.14+compile\sync\engine\source\runtime\launch\private\windows\launchwindows.cpp:202]
UE4Editor!__scrt_common_main_seh() [f:\dd\vctools\crt\vcstartup\src\startup\exe_common.inl:264]
kernel32
ntdll

Have Comments or More Details?

Head over to the existing Questions & Answers thread and let us know what's up.

24
Login to Vote

Won't Fix
CreatedMay 15, 2017
ResolvedAug 18, 2021
UpdatedAug 18, 2021
View Jira Issue