Description

When tearing down a nanite project with the nullrhi active, there is a crash in the FeedbackManager destructor that causes any exit to be unclean.

The teardown process causes a crash as the destructor relies on GSystem locks that appear to be invalid at this point.

This is an issue as automation that checks for successful completion will halt.

Steps to Reproduce

In a nanite-enabled project launched as development no-editor, attempt to cause a clean exit, such as via FPlatformMisc::RequestExitWithStatus(false, 0);

Expected: Clean exit with code 0.
Actual: This should cause an unclean exit as it crashes

Callstack

ntdll.dll!00007fffdd9ef10d() Unknown
ntdll.dll!00007fffdd9fa6df() Unknown
ntdll.dll!00007fffdd9f9e38() Unknown
> [Inline Frame] UDN18488194.exe!Windows::EnterCriticalSection(Windows::CRITICAL_SECTION *) Line 238 C++
[Inline Frame] UDN18488194.exe!FWindowsCriticalSection::Lock() Line 44 C++
[Inline Frame] UDN18488194.exe!FScopeLock::

{ctor}

(FWindowsCriticalSection *) Line 39 C++
[Inline Frame] UDN18488194.exe!GPUMessage::FSystem::RemoveHandler(TRDGHandle<GPUMessage::FSocket,unsigned int> MessageId) Line 66 C++
UDN18488194.exe!GPUMessage::FSocket::Reset() Line 272 C++
[Inline Frame] UDN18488194.exe!GPUMessage::FSocket::

{dtor}() Line 62 C++
[Inline Frame] UDN18488194.exe!Nanite::FFeedbackManager::{dtor}

() Line 129 C++
UDN18488194.exe!Nanite::FGlobalResources::ReleaseRHI() Line 309 C++
UDN18488194.exe!FRenderResource::ReleaseResource() Line 210 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-266669 in the post.

0
Login to Vote

Unresolved
ComponentUE - Rendering Architecture - RHI
Affects Versions5.55.5.3
Target Fix5.6
CreatedApr 5, 2025
UpdatedApr 11, 2025
View Jira Issue