The world contains invalid actor files. Migration to UE5.1

Do not click this button. It is internally broken.

I’ve debugged this piece of code and it is caused by invalid usage of TUniquePtr inside the it.

Exact location: https://github.com/EpicGames/UnrealEngine/blob/release/Engine/Source/Editor/SceneOutliner/Private/ActorBrowsingMode.cpp#L1127

Summary:

  1. Collect each invalid actor info (raw pointer)
  2. Clear original array of invalid actors (unique pointers clear memory, raw pointers are no longer valid)
  3. Access objects using invalid raw pointers

It seems like there’s another flaw: the actor desc pointer can be nullptr from the beginning, and is later accessed by the code without any checks.

1 Like