Description

In general, Object names should try to be reused where ever possible. This can help with name clashes and flexibility in finding / referencing objects by name.

The implication for UObject::Rename was that when no name was passed in, it would try to keep the Object's current name, and only change it if necessary.

Steps to Reproduce
  1. Create an Actor with some UObject property.
  2. In the constructor, create the object and give it a unique name.
  3. Create a second Actor with some UObject property.
  4. In the constructor, create the object and give it a unique name (different from the first).
  5. Use UObject::Rename to re-parent the second UObject to the first Actor, passing in nullptr for the name.

Expected: The second UObject will be re-parented to the first Actor, and keep its current unique name.

Actual: The second UObject will be re-parented to the first Actor, but will be given a new name.

Have Comments or More Details?

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

0
Login to Vote

Fixed
ComponentUE - Gameplay
Affects Versions4.144.15
Target Fix4.16
Fix Commit3301557
Main Commit3358685
CreatedFeb 14, 2017
ResolvedFeb 14, 2017
UpdatedSep 14, 2021