Files
test/source
Sybren A. Stüvel 6ed98c912b Anim: Handle legit slot assignment failure in versioning code
With the Slotted Actions experimental feature enabled, Blender will use
versioning to automatically convert legacy Actions into slotted ones.

Assignment of the converted Action's slot can fail in the following
scenario, when dealing with the following dance between "old Blender"
(only supporting legacy Actions) and "new Blender" (versions supporting
slotted/layered Actions):

1. New Blender: create an action with two slots, ME and KE, and assign
   to respectively a Mesh and a Shape Key. Save the file.

2. Old Blender: load the file. This will load the legacy data, but still
   keep the assignments. This means that the Shape Key will get a ME
   Action assigned, which is incompatible. Save the file.

3. New Blender: upgrades the Action, and tries to assign its only slot.
   This will fail for the shape key, as the ID type doesn't match.

The failure is in itself okay, as there was actual data loss in this
scenario, and so issuing a warning is the right way to go about this.
The Action is still assigned, but the data-block won't get a slot
assigned.

Pull Request: https://projects.blender.org/blender/blender/pulls/128199
2024-09-27 15:43:03 +02:00
..