Description

Suggested fix is to relocate the Super::PreExit() call to the end of UGameEngine::PreExit() so that level streaming can be safely flushed before the MID cache is cleaned up.

Steps to Reproduce

N/A (intermittent crash reported by licensee along with a potential fix)

Callstack
FTextRenderComponentMIDCache::GetMIDData() textrendercomponent.cpp:484 
FTextRenderSceneProxy::FTextRenderSceneProxy() textrendercomponent.cpp:716 
FScene::AddPrimitive() rendererscene.cpp:705 
UPrimitiveComponent::CreateRenderState_Concurrent() primitivecomponent.cpp:448 
UActorComponent::ExecuteRegisterEvents() actorcomponent.cpp:1252 
UActorComponent::RegisterComponentWithWorld() actorcomponent.cpp:977 
AActor::IncrementalRegisterComponents() actor.cpp:4256 
ULevel::IncrementalUpdateComponents() level.cpp:967 
UWorld::AddToWorld() world.cpp:2342 
UWorld::UpdateLevelStreamingInner() world.cpp:3006 
UWorld::UpdateLevelStreaming() world.cpp:3079 
UWorld::FlushLevelStreaming() world.cpp:3119 
UGameEngine::PreExit() gameengine.cpp:682 
FEngineLoop::Exit() launchengineloop.cpp:2733 
GuardedMain() launch.cpp:194 
 GuardedMainWrapper() launchwindows.cpp:134 
 WinMain() launchwindows.cpp:216 
 __scrt_common_main_seh() exe_common.inl:253 
 kernel32!<Unknown> 
 ntdll!<Unknown>

Have Comments or More Details?

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

0
Login to Vote

Fixed
Affects Versions4.15
Target Fix4.17
Fix Commit3495536
Main Commit3499771
CreatedJun 16, 2017
ResolvedJun 16, 2017
UpdatedJun 23, 2018